Ver código fonte

价格关联性

skyfffire 11 meses atrás
pai
commit
11269cbeba
1 arquivos alterados com 4 adições e 4 exclusões
  1. 4 4
      strategy/src/predictor.rs

+ 4 - 4
strategy/src/predictor.rs

@@ -444,15 +444,15 @@ impl Predictor {
 
         let is_open_long = self.ref_price > self.mid_price;
         let is_open_short = self.ref_price < self.mid_price;
-        let is_close_long = self.ref_price < self.mid_price;
-        let is_close_short = self.ref_price > self.mid_price;
+        let is_close_long = self.inventory > Decimal::ZERO && (self.ref_price < self.mid_price || self.pos_avg_price < self.mid_price);
+        let is_close_short = self.inventory < Decimal::ZERO && (self.ref_price > self.mid_price || self.pos_avg_price > self.mid_price);
 
         self.bid_delta = Decimal::NEGATIVE_ONE;
         self.ask_delta = Decimal::NEGATIVE_ONE;
 
-        if self.inventory > Decimal::ZERO && is_close_long {
+        if is_close_long {
             self.ask_delta = self.mid_price * self.params.close;
-        } else if self.inventory < Decimal::ZERO && is_close_short {
+        } else if is_close_short {
             self.bid_delta = self.mid_price * self.params.close;
         } else if is_open_long {
             self.bid_delta = self.mid_price * self.params.open;