X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=portfolio.py;h=c3809f0533db32cc3b62ccbd6c64a5ff5c66e651;hb=c31df868c655612b8387a25111e69882f0fe6344;hp=b77f975e9cdf2d01cae09c07a72f3b8b15d16aa4;hpb=9f54fd9acf98692ff7601fd3236c46745eb26e15;p=perso%2FImmae%2FProjets%2FCryptomonnaies%2FCryptoportfolio%2FTrader.git diff --git a/portfolio.py b/portfolio.py index b77f975..c3809f0 100644 --- a/portfolio.py +++ b/portfolio.py @@ -345,6 +345,9 @@ class Trade: ticker = ticker["original"] rate = Computation.compute_value(ticker, self.order_action(inverted), compute_value=compute_value) + #TODO: store when the order is considered filled + # FIXME: Dust amount should be removed from there if they werent + # honored in other sales delta_in_base = abs(self.value_from - self.value_to) # 9 BTC's worth of move (10 - 1 or 1 - 10 depending on case) @@ -422,6 +425,8 @@ class Trade: print(self) for order in self.orders: print("\t", order, sep="") + for mouvement in order.mouvements: + print("\t\t", mouvement, sep="") class Order: def __init__(self, action, amount, rate, base_currency, trade_type, market, @@ -582,6 +587,19 @@ class Mouvement: # rate * total = total_in_base self.total_in_base = Amount(base_currency, hash_.get("total", 0)) + def __repr__(self): + if self.fee_rate > 0: + fee_rate = " fee: {}%".format(self.fee_rate * 100) + else: + fee_rate = "" + if self.date is None: + date = "No date" + else: + date = self.date + return "Mouvement({} ; {} {} ({}){})".format( + date, self.action, self.total, self.total_in_base, + fee_rate) + if __name__ == '__main__': # pragma: no cover from market import market h.print_orders(market)