@@ -33,39 +33,39 @@ def schedule_checks(self, interval):
3333 self .__scheduler .enter (interval , 1 , self .schedule_checks , argument = (interval ,))
3434 for currency in self .__currencies :
3535 try :
36- min_int_rate = self .get_min_daily_interest_rate (currency . name )
36+ min_int_rate = self .get_min_daily_interest_rate (currency )
3737 min_int_rate_charge = float (format (min_int_rate + config .charge , '.5f' ))
3838 if min_int_rate_charge <= config .minimum_rate :
3939 self .__minimum_rate = config .minimum_rate
4040 elif self .__minimum_rate == const .DEFAULT_MIN_RATE or abs (min_int_rate_charge - self .__minimum_rate ) >= config .correction :
4141 self .__minimum_rate = min_int_rate_charge
42- self .check_active_loans (min_int_rate , currency . name )
43- self .lend_loans (min_int_rate , currency . name )
44- self .check_active_lendings (currency . name )
42+ self .check_active_loans (min_int_rate , currency )
43+ self .lend_loans (min_int_rate , currency )
44+ self .check_active_lendings (currency )
4545 except (socket .timeout , requests .exceptions .Timeout ) as e :
4646 Logger ().logger .error ("Currency: %s, Transport Exception occurred: %s" , currency .name , e )
4747 except Exception as e :
4848 Logger ().logger .error ("Currency: %s, Generic Error occurred: %s" , currency .name , e )
4949
5050 def lend_loans (self , min_int_rate , currency ):
51- account_list = self .__user .get_account_list (currency , 'main' )
52- account = next ((x for x in account_list if x ['currency' ] == currency ), None )
51+ account_list = self .__user .get_account_list (currency . name , 'main' )
52+ account = next ((x for x in account_list if x ['currency' ] == currency . name ), None )
5353 if account :
5454 available = int (float (account ['available' ]))
5555 if const .MIN_LEND_SIZE <= available <= const .MAX_LEND_SIZE :
5656 if min_int_rate >= self .__minimum_rate :
5757 rate = float (format (min_int_rate + config .charge , '.5f' ))
5858 else :
5959 rate = self .__minimum_rate
60- result = self .__client .create_lend_order (currency , str (available ), str (rate ), currency .term )
60+ result = self .__client .create_lend_order (currency . name , str (available ), str (rate ), currency .term )
6161 self .push_message ("Currency: {}, OrderId: {}, Amount: {}, Rate: {}" .format (
62- currency , result ['orderId' ], available , convert_float_to_percentage (rate )
62+ currency . name , result ['orderId' ], available , convert_float_to_percentage (rate )
6363 ), title = "Create Lend Order" )
6464 else :
65- Logger ().logger .info ("Insufficient Amount on %s Main Account: %s" , currency , available )
65+ Logger ().logger .info ("Insufficient Amount on %s Main Account: %s" , currency . name , available )
6666
6767 def check_active_loans (self , min_int_rate , currency ):
68- active_orders = self .__client .get_active_order (currency = currency )
68+ active_orders = self .__client .get_active_order (currency = currency . name )
6969 items = active_orders .get ('items' )
7070
7171 for a in items :
@@ -80,7 +80,7 @@ def check_active_loans(self, min_int_rate, currency):
8080 self .__client .cancel_lend_order (a ['orderId' ])
8181 Logger ().logger .info ("Cancel Lend Order: Currency: %s, Amount: %s, DailyIntRate: %s, "
8282 "MinIntRate: %s, DiffRate: %s, Correction: %s" ,
83- currency ,
83+ currency . name ,
8484 a ['size' ],
8585 convert_float_to_percentage (daily_int_rate ),
8686 convert_float_to_percentage (min_int_rate ),
@@ -89,27 +89,25 @@ def check_active_loans(self, min_int_rate, currency):
8989 )
9090
9191 def get_min_daily_interest_rate (self , currency ):
92- lending_market = self .__client .get_lending_market (currency )
92+ lending_market = self .__client .get_lending_market (currency . name )
9393 lending_market = lending_market ['data' ] if 'data' in lending_market else lending_market
9494 if lending_market :
9595 return float (lending_market [0 ]['dailyIntRate' ])
9696 else :
9797 return config .default_interest
9898
9999 def check_active_lendings (self , currency ):
100- active_list = self .__client .get_active_list (pageSize = 50 )
100+ active_list = self .__client .get_active_list (pageSize = 50 , currency = currency . name )
101101 if active_list and active_list ['items' ]:
102102 utc_now = datetime .utcnow ()
103103 dt = timedelta (seconds = config .interval ).total_seconds ()
104104 for a in active_list ['items' ]:
105- if a ['currency' ] != currency :
106- continue
107105 maturity_timestamp = a ['maturityTime' ] / 1000
108106 time_diff = (utc_now - (datetime .utcfromtimestamp (maturity_timestamp ) - timedelta (a ['term' ]))).total_seconds ()
109107 if time_diff <= dt :
110108 maturity_date = datetime .fromtimestamp (maturity_timestamp ).strftime ("%Y-%m-%d %H:%M:%S" )
111109 self .push_message ("Currency: {}, Amount: {}, DailyIntRate: {}, MaturityDate: {}, AccruedInterest: {}" .format (
112- currency ,
110+ currency . name ,
113111 a ['size' ],
114112 convert_float_to_percentage (a ['dailyIntRate' ]),
115113 maturity_date ,
0 commit comments