]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/Cryptoportfolio/Trader.git/commitdiff
Don't autoprepare the orders when creating trade
authorIsmaël Bouya <ismael.bouya@normalesup.org>
Thu, 18 Jan 2018 08:57:23 +0000 (09:57 +0100)
committerIsmaël Bouya <ismael.bouya@normalesup.org>
Thu, 18 Jan 2018 08:57:23 +0000 (09:57 +0100)
portfolio.py

index 576a2286847abacabe7525161bf9e11be4170e91..b0f9256e5222ee75a3e43c09ad5b7f5d8fe2c720 100644 (file)
@@ -247,14 +247,11 @@ class Trade:
         self.value_from = value_from
         self.value_to = value_to
         self.orders = []
+        self.market = market
         assert self.value_from.currency == self.value_to.currency
         assert self.value_from.linked_to is not None and self.value_from.linked_to.currency == self.currency
         self.base_currency = self.value_from.currency
 
-        if market is not None:
-            self.market = market
-            self.prepare_order(market)
-
     fees_cache = {}
     @classmethod
     def fetch_fees(cls, market):
@@ -310,6 +307,7 @@ class Trade:
                 currency,
                 market=market
                 )
+            cls.trades[currency].prepare_order()
         return cls.trades
 
     @property
@@ -330,7 +328,7 @@ class Trade:
         else:
             return "bid" if not inverted else "ask"
 
-    def prepare_order(self, market):
+    def prepare_order(self):
         if self.action is None:
             return
         ticker = self.value_from.ticker
@@ -338,7 +336,7 @@ class Trade:
 
         if not inverted:
             value_from = self.value_from.linked_to
-            value_to = self.value_to.in_currency(self.currency, market)
+            value_to = self.value_to.in_currency(self.currency, self.market)
             delta = abs(value_to - value_from)
             currency = self.base_currency
         else: