1
- use std:: mem;
2
-
3
1
use crate :: {
4
2
backtest:: {
5
3
assettype:: AssetType ,
6
- data:: { Data , Reader } ,
7
4
models:: { FeeModel , L3QueueModel , LatencyModel } ,
8
5
order:: OrderBus ,
9
6
proc:: Processor ,
@@ -364,7 +361,7 @@ where
364
361
BacktestError : From < <MD as L3MarketDepth >:: Error > ,
365
362
{
366
363
fn time_seen ( & self , event : & Event ) -> Option < i64 > {
367
- event. is ( EXCH_EVENT ) . then ( || event. exch_ts )
364
+ event. is ( EXCH_EVENT ) . then_some ( event. exch_ts )
368
365
}
369
366
370
367
fn process ( & mut self , event : & Event ) -> Result < ( ) , BacktestError > {
@@ -390,17 +387,15 @@ where
390
387
let ( prev_best_bid_tick, best_bid_tick) =
391
388
self . depth
392
389
. add_buy_order ( event. order_id , event. px , event. qty , event. exch_ts ) ?;
393
- self . queue_model
394
- . add_market_feed_order ( & event, & self . depth ) ?;
390
+ self . queue_model . add_market_feed_order ( event, & self . depth ) ?;
395
391
if best_bid_tick > prev_best_bid_tick {
396
392
self . fill_ask_orders_by_crossing ( prev_best_bid_tick, best_bid_tick, event. exch_ts ) ?;
397
393
}
398
394
} else if event. is ( EXCH_ASK_ADD_ORDER_EVENT ) {
399
395
let ( prev_best_ask_tick, best_ask_tick) =
400
396
self . depth
401
397
. add_sell_order ( event. order_id , event. px , event. qty , event. exch_ts ) ?;
402
- self . queue_model
403
- . add_market_feed_order ( & event, & self . depth ) ?;
398
+ self . queue_model . add_market_feed_order ( event, & self . depth ) ?;
404
399
if best_ask_tick < prev_best_ask_tick {
405
400
self . fill_bid_orders_by_crossing ( prev_best_ask_tick, best_ask_tick, event. exch_ts ) ?;
406
401
}
@@ -409,7 +404,7 @@ where
409
404
self . depth
410
405
. modify_order ( event. order_id , event. px , event. qty , event. exch_ts ) ?;
411
406
self . queue_model
412
- . modify_market_feed_order ( event. order_id , & event, & self . depth ) ?;
407
+ . modify_market_feed_order ( event. order_id , event, & self . depth ) ?;
413
408
if side == Side :: Buy {
414
409
if best_tick > prev_best_tick {
415
410
self . fill_ask_orders_by_crossing ( prev_best_tick, best_tick, event. exch_ts ) ?;
@@ -427,7 +422,7 @@ where
427
422
if event. is ( BUY_EVENT ) || event. is ( SELL_EVENT ) {
428
423
let filled = self . queue_model . fill_market_feed_order :: < false > (
429
424
event. order_id ,
430
- & event,
425
+ event,
431
426
& self . depth ,
432
427
) ?;
433
428
let timestamp = event. exch_ts ;
0 commit comments