瀏覽代碼

突然性不具备了

skyfffire 10 月之前
父節點
當前提交
d70392794a
共有 1 個文件被更改,包括 4 次插入2 次删除
  1. 4 2
      strategy/src/predictor.rs

+ 4 - 2
strategy/src/predictor.rs

@@ -47,6 +47,7 @@ pub struct Predictor {
 
     pub mid_price_time_vec: FixedTimeRangeDeque<Decimal>,                       // 中间价格队列,100ms以内的所有中间价格
     pub fair_price_time_vec: FixedTimeRangeDeque<Decimal>,                      // 公平价格队列,10ms以内的所有公平价格
+    pub fair_price_long_time_vec: FixedTimeRangeDeque<Decimal>,                 // 公平价格队列,10ms以内的所有公平价格
     pub spread_sma_1000_time_vec: FixedTimeRangeDeque<Decimal>,                 // spread队列,10ms以内的所有spread_sma_1000
     pub fair_price_vec: Vec<Decimal>,                                           // 公平价格列表,0表示做市所,1表示参考所
     pub fair_price: Decimal,                                                    // 预定价格
@@ -163,6 +164,7 @@ impl Predictor {
 
             spread_sma_1000_time_vec: FixedTimeRangeDeque::new(10_000),
             fair_price_time_vec: FixedTimeRangeDeque::new(10_000_000),
+            fair_price_long_time_vec: FixedTimeRangeDeque::new(2 * 60_000_000),
             mid_price_time_vec: FixedTimeRangeDeque::new(100_000),
             fair_price: Default::default(),
             fair_rate_focus_open: Default::default(),
@@ -381,11 +383,11 @@ impl Predictor {
             if !self.fair_rate_focus_close.is_zero() {
                 let focus_rate = (self.fair_price - self.fair_price_focus_close) / self.fair_price_focus_close;
 
-                if self.fair_price_focus_close > Decimal::ZERO && focus_rate < Decimal::NEGATIVE_ONE * self.params.close_activate / Decimal::TWO {
+                if self.fair_rate_focus_close > Decimal::ZERO && focus_rate < Decimal::NEGATIVE_ONE * self.params.close_activate / Decimal::TWO {
                     self.fair_rate_focus_close = Decimal::ZERO;
                 }
 
-                if self.fair_price_focus_close < Decimal::ZERO && focus_rate > self.params.close_activate / Decimal::TWO {
+                if self.fair_rate_focus_close < Decimal::ZERO && focus_rate > self.params.close_activate / Decimal::TWO {
                     self.fair_rate_focus_close = Decimal::ZERO;
                 }
             }