clippy + reformat
This commit is contained in:
		
							parent
							
								
									f4431f26c0
								
							
						
					
					
						commit
						a3ce3682ad
					
				| @ -123,7 +123,7 @@ impl Client { | |||||||
|             .active_orders(pair) |             .active_orders(pair) | ||||||
|             .await? |             .await? | ||||||
|             .into_iter() |             .into_iter() | ||||||
|             .filter(|x| &x.pair() == &pair) |             .filter(|x| x.pair() == pair) | ||||||
|             .collect()) |             .collect()) | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -48,8 +48,8 @@ async fn main() -> Result<(), BoxError> { | |||||||
|         .ok_or("API_SECRET not set!")?; |         .ok_or("API_SECRET not set!")?; | ||||||
| 
 | 
 | ||||||
|     let bitfinex = ExchangeDetails::Bitfinex { |     let bitfinex = ExchangeDetails::Bitfinex { | ||||||
|         api_key: api_key.into(), |         api_key, | ||||||
|         api_secret: api_secret.into(), |         api_secret, | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|     let mut bot = BfxBot::new( |     let mut bot = BfxBot::new( | ||||||
|  | |||||||
| @ -416,7 +416,7 @@ impl OrderManager { | |||||||
|             None => { self.orders_map.clear(); } |             None => { self.orders_map.clear(); } | ||||||
|             Some(positions) => { |             Some(positions) => { | ||||||
|                 // retain only positions that are open remotely as well
 |                 // retain only positions that are open remotely as well
 | ||||||
|                 self.orders_map.retain(|local_id, _| positions.iter().find(|r| r.id() == *local_id).is_some()); |                 self.orders_map.retain(|local_id, _| positions.iter().any(|r| r.id() == *local_id)); | ||||||
| 
 | 
 | ||||||
|                 for position in positions { |                 for position in positions { | ||||||
|                     // mapping tracked orders to their ids
 |                     // mapping tracked orders to their ids
 | ||||||
| @ -431,7 +431,7 @@ impl OrderManager { | |||||||
|                     for remote_order in remote_orders.iter().filter(|x| !tracked_orders.contains(&x.id())) { |                     for remote_order in remote_orders.iter().filter(|x| !tracked_orders.contains(&x.id())) { | ||||||
|                         // the only check to bind an active order to an open position,
 |                         // the only check to bind an active order to an open position,
 | ||||||
|                         // is to check for their amount which should be identical
 |                         // is to check for their amount which should be identical
 | ||||||
|                         if remote_order.order_form().amount().abs() == position.amount().abs() { |                         if (remote_order.order_form().amount().abs() - position.amount().abs()).abs() < 0.0001 { | ||||||
|                             trace!("Adding order {} to internal mapping from remote.", remote_order.id()); |                             trace!("Adding order {} to internal mapping from remote.", remote_order.id()); | ||||||
|                             self.add_to_orders_map(position.id(), remote_order.clone()); |                             self.add_to_orders_map(position.id(), remote_order.clone()); | ||||||
|                         } |                         } | ||||||
| @ -439,7 +439,7 @@ impl OrderManager { | |||||||
| 
 | 
 | ||||||
|                     // removing local orders that are not in remote
 |                     // removing local orders that are not in remote
 | ||||||
|                     for local_orders in self.orders_map.values_mut() { |                     for local_orders in self.orders_map.values_mut() { | ||||||
|                         local_orders.retain(|l| remote_orders.iter().find(|r| r.id() == l.id()).is_some()); |                         local_orders.retain(|l| remote_orders.iter().any(|r| r.id() == l.id())); | ||||||
|                     } |                     } | ||||||
| 
 | 
 | ||||||
|                     // clean-up empty positions in local mapping
 |                     // clean-up empty positions in local mapping
 | ||||||
|  | |||||||
| @ -432,7 +432,7 @@ pub struct OrderMetadata { | |||||||
| impl Clone for OrderMetadata { | impl Clone for OrderMetadata { | ||||||
|     fn clone(&self) -> Self { |     fn clone(&self) -> Self { | ||||||
|         Self { |         Self { | ||||||
|             position_id: self.position_id.clone(), |             position_id: self.position_id, | ||||||
|             strategy: self.strategy.as_ref().map(|x| clone_box(&**x)), |             strategy: self.strategy.as_ref().map(|x| clone_box(&**x)), | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| @ -469,6 +469,12 @@ impl OrderMetadata { | |||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | impl Default for OrderMetadata { | ||||||
|  |     fn default() -> Self { | ||||||
|  |         Self::new() | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | 
 | ||||||
| /*************** | /*************** | ||||||
| * Positions | * Positions | ||||||
| ***************/ | ***************/ | ||||||
|  | |||||||
| @ -23,14 +23,14 @@ pub trait PositionStrategy: DynClone + Send + Sync { | |||||||
|         position: Position, |         position: Position, | ||||||
|         current_tick: u64, |         current_tick: u64, | ||||||
|         positions_history: &HashMap<u64, Position>, |         positions_history: &HashMap<u64, Position>, | ||||||
|         fees: &Vec<TradingFees>, |         fees: &[TradingFees], | ||||||
|     ) -> (Position, Option<Vec<Event>>, Option<Vec<ActionMessage>>); |     ) -> (Position, Option<Vec<Event>>, Option<Vec<ActionMessage>>); | ||||||
|     fn post_tick( |     fn post_tick( | ||||||
|         &mut self, |         &mut self, | ||||||
|         position: Position, |         position: Position, | ||||||
|         current_tick: u64, |         current_tick: u64, | ||||||
|         positions_history: &HashMap<u64, Position>, |         positions_history: &HashMap<u64, Position>, | ||||||
|         fees: &Vec<TradingFees>, |         fees: &[TradingFees], | ||||||
|     ) -> (Position, Option<Vec<Event>>, Option<Vec<ActionMessage>>); |     ) -> (Position, Option<Vec<Event>>, Option<Vec<ActionMessage>>); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -223,7 +223,7 @@ impl PositionStrategy for TrailingStop { | |||||||
|         position: Position, |         position: Position, | ||||||
|         current_tick: u64, |         current_tick: u64, | ||||||
|         positions_history: &HashMap<u64, Position>, |         positions_history: &HashMap<u64, Position>, | ||||||
|         _: &Vec<TradingFees>, |         _: &[TradingFees], | ||||||
|     ) -> (Position, Option<Vec<Event>>, Option<Vec<ActionMessage>>) { |     ) -> (Position, Option<Vec<Event>>, Option<Vec<ActionMessage>>) { | ||||||
|         let pl_perc = position.pl_perc(); |         let pl_perc = position.pl_perc(); | ||||||
| 
 | 
 | ||||||
| @ -300,7 +300,7 @@ impl PositionStrategy for TrailingStop { | |||||||
|         position: Position, |         position: Position, | ||||||
|         _: u64, |         _: u64, | ||||||
|         _: &HashMap<u64, Position>, |         _: &HashMap<u64, Position>, | ||||||
|         fees: &Vec<TradingFees>, |         fees: &[TradingFees], | ||||||
|     ) -> (Position, Option<Vec<Event>>, Option<Vec<ActionMessage>>) { |     ) -> (Position, Option<Vec<Event>>, Option<Vec<ActionMessage>>) { | ||||||
|         let taker_fee = fees |         let taker_fee = fees | ||||||
|             .iter() |             .iter() | ||||||
|  | |||||||
| @ -4,7 +4,7 @@ mod common { | |||||||
|     use crate::models::{Position, PositionState, TradingPlatform}; |     use crate::models::{Position, PositionState, TradingPlatform}; | ||||||
|     use crate::models::PositionProfitState::Loss; |     use crate::models::PositionProfitState::Loss; | ||||||
| 
 | 
 | ||||||
|     // TODO: generate other helper generator functions like the one below
 | // TODO: generate other helper generator functions like the one below
 | ||||||
| 
 | 
 | ||||||
|     // Generates two short positions with different profit/loss ratios. Both are position in "Loss".
 |     // Generates two short positions with different profit/loss ratios. Both are position in "Loss".
 | ||||||
|     pub fn get_short_loss_positions(pair: SymbolPair) -> (Position, Position) { |     pub fn get_short_loss_positions(pair: SymbolPair) -> (Position, Position) { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user