order.trade.update_order(order, tick)
self.report.log_stage("follow_orders_end")
- def prepare_trades(self, base_currency="BTC", liquidity="medium", compute_value="average"):
- self.report.log_stage("prepare_trades")
- values_in_base = self.balances.in_currency(base_currency, compute_value=compute_value)
- total_base_value = sum(values_in_base.values())
- new_repartition = self.balances.dispatch_assets(total_base_value, liquidity=liquidity)
- # Recompute it in case we have new currencies
- values_in_base = self.balances.in_currency(base_currency, compute_value=compute_value)
- self.trades.compute_trades(values_in_base, new_repartition)
-
- def update_trades(self, base_currency="BTC", liquidity="medium", compute_value="average", only=None):
- self.report.log_stage("update_trades")
- values_in_base = self.balances.in_currency(base_currency, compute_value=compute_value)
- total_base_value = sum(values_in_base.values())
- new_repartition = self.balances.dispatch_assets(total_base_value, liquidity=liquidity)
- self.trades.compute_trades(values_in_base, new_repartition, only=only)
+ def prepare_trades(self, base_currency="BTC", liquidity="medium",
+ compute_value="average", repartition=None, only=None):
- def prepare_trades_to_sell_all(self, base_currency="BTC", compute_value="average"):
- self.report.log_stage("prepare_trades_to_sell_all")
- values_in_base = self.balances.in_currency(base_currency, compute_value=compute_value)
- total_base_value = sum(values_in_base.values())
- new_repartition = self.balances.dispatch_assets(total_base_value, repartition={ base_currency: (1, "long") })
- self.trades.compute_trades(values_in_base, new_repartition)
+ self.report.log_stage("prepare_trades",
+ base_currency=base_currency, liquidity=liquidity,
+ compute_value=compute_value, only=only,
+ repartition=repartition)
+ values_in_base = self.balances.in_currency(base_currency,
+ compute_value=compute_value)
+ total_base_value = sum(values_in_base.values())
+ new_repartition = self.balances.dispatch_assets(total_base_value,
+ liquidity=liquidity, repartition=repartition)
+ self.trades.compute_trades(values_in_base, new_repartition, only=only)