From 6e848c35e36d337666f2dcf4b3b34c37e0469d09 Mon Sep 17 00:00:00 2001 From: Giulio De Pasquale Date: Tue, 16 Feb 2021 18:17:48 +0000 Subject: [PATCH] early exit on empty positions --- rustybot/src/connectors.rs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/rustybot/src/connectors.rs b/rustybot/src/connectors.rs index 3d18dcf..596ece5 100644 --- a/rustybot/src/connectors.rs +++ b/rustybot/src/connectors.rs @@ -66,6 +66,10 @@ impl Client { let (mut positions, order_book, fees) = (positions?, order_book?, fees?); let (best_ask, best_bid) = (order_book.lowest_ask(), order_book.highest_bid()); + if positions.is_none() { + return Ok(None); + } + let derivative_taker = fees .iter() .filter_map(|x| match x { @@ -345,7 +349,9 @@ impl Connector for BitfinexConnector { // adding leverage, if any match order.leverage() { - Some(leverage) => pre_leverage.with_leverage(leverage as u32), + // TODO: CHANGEME!!!! + Some(leverage) => pre_leverage.with_leverage(15), + // Some(leverage) => pre_leverage.with_leverage(leverage.round() as u32), None => pre_leverage, } }; @@ -417,7 +423,8 @@ impl Connector for BitfinexConnector { async fn trading_fees(&self) -> Result, BoxError> { let mut fees = vec![]; - let accountfees = self.bfx.account.account_summary().await?; + let accountfees = + BitfinexConnector::retry_nonce(|| self.bfx.account.account_summary()).await?; // Derivatives let derivative_taker = TradingFees::Taker { @@ -507,6 +514,7 @@ impl TryInto for bitfinex::positions::Position { } }; + println!("leverage: {}", self.leverage()); Ok(Position::new( SymbolPair::from_str(self.symbol())?, state,