Exemple #1
0
 def withdraw_coin(self,
                   currency,
                   amount,
                   address,
                   secondary_address='None',
                   transaction_type='default',
                   contain_req=False):
     """
     코인 출금
     :param currency: Currency symbol
     :param amount: 주문 가격
     :param address: 출금 지갑 주소
     :param secondary_address: 2차 출금주소 (필요한 코인에 한해서)
     :param transaction_type: 출금 유형
     :param contain_req: Remaining-Req 포함여부
     :return:
     """
     try:
         url = "https://api.upbit.com/v1/withdraws/coin"
         data = {
             "currency": currency,
             "amount": amount,
             "address": address,
             "secondary_address": secondary_address,
             "transaction_type": transaction_type
         }
         headers = self._request_headers(data)
         result = _send_post_request(url, headers=headers, data=data)
         if contain_req:
             return result
         else:
             return result[0]
     except Exception as x:
         print(x.__class__.__name__)
         return None
Exemple #2
0
 def sell_market_order(self, ticker, volume, contain_req=False):
     """
     시장가 매도 메서드
     :param ticker: 가상화폐 티커
     :param volume: 수량
     :param contain_req: Remaining-Req 포함여부
     :return:
     """
     try:
         url = "https://api.upbit.com/v1/orders"
         data = {
             "market": ticker,  # ticker
             "side": "ask",  # sell
             "volume": str(volume),
             "ord_type": "market"
         }
         headers = self._request_headers(data)
         result = _send_post_request(url, headers=headers, data=data)
         if contain_req:
             return result
         else:
             return result[0]
     except Exception as x:
         print(x.__class__.__name__)
         return None
Exemple #3
0
 def sell_limit_order(self, ticker, price, volume, contain_req=False):
     """
     지정가 매도
     :param ticker: 마켓 티커
     :param price: 주문 가격
     :param volume: 주문 수량
     :param contain_req: Remaining-Req 포함여부
     :return:
     """
     try:
         url = "https://api.upbit.com/v1/orders"
         data = {
             "market": ticker,
             "side": "ask",
             "volume": str(volume),
             "price": str(price),
             "ord_type": "limit"
         }
         headers = self._request_headers(data)
         result = _send_post_request(url, headers=headers, data=data)
         if contain_req:
             return result
         else:
             return result[0]
     except Exception as x:
         print(x.__class__.__name__)
         return None
Exemple #4
0
 def buy_market_order(self, ticker, price, contain_req=False):
     """
     시장가 매수
     :param ticker: ticker for cryptocurrency
     :param price: KRW
     :param contain_req: Remaining-Req 포함여부
     :return:
     """
     try:
         url = "https://api.upbit.com/v1/orders"
         data = {
             "market": ticker,  # market ID
             "side": "bid",  # buy
             "price": str(price),
             "ord_type": "price"
         }
         headers = self._request_headers(data)
         result = _send_post_request(url, headers=headers, data=data)
         if contain_req:
             return result
         else:
             return result[0]
     except Exception as x:
         print(x.__class__.__name__)
         return None
Exemple #5
0
    def order_buy(self, ticker, investing_amount):
        try:
            ticker_price = get_current_price(ticker)

            volume = investing_amount // ticker_price

            _LOG_(
                "order_buy()",
                f"대상:{ticker}, 수량:{volume}, 현재가:{ticker_price}, 투자금액:{investing_amount}"
            )

            url = "https://api.upbit.com/v1/orders"
            data = {
                "market": ticker,
                "side": "bid",
                "volume": str(volume),
                "price": str(ticker_price),
                "ord_type": "limit"
            }
            headers = self._request_headers(data)
            result = _send_post_request(url, headers=headers, data=data)

            return result[0]
        except Exception as x:
            print(x.__class__.__name__)
            print(traceback.format_exc())
            return None
Exemple #6
0
 def withdraw_coin(self,
                   currency,
                   amount,
                   address,
                   secondary_address,
                   transaction_type="default",
                   contain_req=False):
     """
     withdraw coins
     """
     try:
         url = "https://api.upbit.com/v1/withdraws/coin"
         data = {
             "currency": currency,
             "amount": str(amount),
             "address": address,
             "secondary_address": secondary_address
         }
         headers = self._request_headers(data)
         result = _send_post_request(url, headers=headers, data=data)
         if contain_req:
             return result
         else:
             return result[0]
     except Exception as x:
         print(x.__class__.__name__)
         return None
Exemple #7
0
 def withdraw_cash(self, amount: str, contain_req=False):
     """
     현금 출금
     :param amount: 출금 액수
     :param contain_req: Remaining-Req 포함여부
     :return:
     """
     try:
         url = "https://api.upbit.com/v1/withdraws/krw"
         data = {"amount": amount}
         headers = self._request_headers(data)
         result = _send_post_request(url, headers=headers, data=data)
         if contain_req:
             return result
         else:
             return result[0]
     except Exception as x:
         print(x.__class__.__name__)
         return None
Exemple #8
0
 def get_individual_withdraw_order(self, uuid: str, txid: str, currency: str, contain_req=False):
     """
     현금 출금
     :param uuid: 출금 UUID
     :param txid: 출금 TXID
     :param currency: Currency 코드
     :param contain_req: Remaining-Req 포함여부
     :return:
     """
     try:
         url = "https://api.upbit.com/v1/withdraw"
         data = {"uuid": uuid, "txid": txid, "currency": currency}
         headers = self._request_headers(data)
         result = _send_post_request(url, headers=headers, data=data)
         if contain_req:
             return result
         else:
             return result[0]
     except Exception as x:
         print(x.__class__.__name__)
         return None
Exemple #9
0
    def order_sell(self, ticker):
        try:
            _LOG_("order_sell()", "Sell~!!")

            ticker_price = get_current_price(ticker)
            volume = self.get_coin_count(ticker)

            url = "https://api.upbit.com/v1/orders"
            data = {
                "market": ticker,
                "side": "ask",
                "volume": str(volume),
                "price": str(ticker_price),
                "ord_type": "limit"
            }
            headers = self._request_headers(data)
            result = _send_post_request(url, headers=headers, data=data)

            return result[0]
        except Exception as x:
            print(x.__class__.__name__)
            print(traceback.format_exc())
            return None