Exemple #1
0
    def get_accounts(self):
        try:
            upbit = Upbitpy(self.KEY, self.SECRET)
            ret = upbit.get_accounts()
            for c in ret:
                self.balance[c['currency']] = float(c['balance'])
        except:
            self.balance['KRW'] = 0
            self.balance['USDT'] = 0
            logging.info('Failed to get balance')

        if (self.balance['KRW'] > 0.0 or self.balance['USDT']  > 0.0) and self.exchange_rate > 0.0:
            # 보유자산에 따른 KRW2USD_limit and USD2KRW_limt 가중치 부여 점진법
            self.KRW2USD_weighted = self.KRW2USD_limit - self.KRW2USD_limit*self.balance['KRW']/(self.balance['KRW'] + self.balance['USDT']*self.exchange_rate)           
            self.USD2KRW_weighted = self.USD2KRW_limit - self.USD2KRW_limit*self.balance['USDT']*self.exchange_rate/(self.balance['KRW'] + self.balance['USDT']*self.exchange_rate)
            if self.KRW2USD_weighted >= self.KRW2USD_limit and self.KRW2USD_weighted <= self.USD2KRW_limit:
                self.KRW2USD_weighted = self.KRW2USD_weighted + self.KRW2USD_offset
            else:
                self.KRW2USD_weighted = self.KRW2USD_limit                
            if self.USD2KRW_weighted >= self.KRW2USD_limit and self.USD2KRW_weighted <= self.USD2KRW_limit:
                self.USD2KRW_weighted = self.USD2KRW_weighted + self.USD2KRW_offset
            else:
                self.USD2KRW_weighted = self.USD2KRW_limit

            if self.USD2KRW_weighted < self.USD2KRW_restrict:
                self.USD2KRW_weighted = self.USD2KRW_weighted / 2 + 0.5
                # self.USD2KRW_weighted = self.USD2KRW_restrict
            if self.KRW2USD_weighted > 0.0:
                self.KRW2USD_weighted = self.KRW2USD_weighted * 0.5
            #보유자산에 따른 KRW2USD_limit and USD2KRW_limt 가중치 부여 계단법
            #temp, self.USD2KRW_weighted = self.rate_limit()
        # ! For debugging
        # self.KRW2USD_weighted = 1.0
        # self.USD2KRW_weighted = -1.0
        logging.info('Weight %.2f %.2f'%(self.KRW2USD_weighted, self.USD2KRW_weighted))
Exemple #2
0
from upbitpy import Upbitpy

if __name__ == '__main__':
    print("")
    print("")
    print("start")

    access = "xIHcZKYQQxO9xmsLSxDOrP9LJxk5RvgQCHt8H5GK"
    secret = "I91StxEjUU1UPpz8bu6HL1kTCLihRenHj6aGFzxm"  # 키들은 본인의 키를입력합니다.#

    upbit = Upbitpy(access, secret)
    ret = upbit.get_accounts()

    print(ret)

    now_price = 10

    # buy
    ret = upbit.order('KRW-XRP', 'bid', 100, now_price)
    #sell
    ret = upbit.order('KRW-XRP', 'ask', 100, now_price)

    print("end")
Exemple #3
0
 def test_get_get_accounts(self):
     upbit = Upbitpy(self.KEY, self.SECRET)
     ret = upbit.get_accounts()
     self.assertIsNotNone(ret)
     self.assertNotEqual(len(ret), 0)
     logging.info(ret)