Jelajahi Sumber

quan切换老版价格预测器

JiahengHe 1 tahun lalu
induk
melakukan
db0d72c755
1 mengubah file dengan 12 tambahan dan 25 penghapusan
  1. 12 25
      strategy/src/quant.rs

+ 12 - 25
strategy/src/quant.rs

@@ -21,10 +21,9 @@ use global::trace_stack::TraceStack;
 use standard::{Account, Market, Order, OrderCommand, Platform, Position, PositionModeEnum, SpecialTicker, Ticker};
 use standard::exchange::{Exchange};
 use standard::exchange::ExchangeEnum::{BinanceSpot, BinanceSwap, BitgetSpot, BybitSwap, GateSpot, GateSwap, KucoinSwap, OkxSwap};
-use crate::instant_volatility_indicator::InstantVolatilityIndicator;
 
 use crate::model::{LocalPosition, OrderInfo, TokenParam, TraderMsg};
-use crate::predictor_new::PredictorNew;
+use crate::predictor::Predictor;
 use crate::strategy::Strategy;
 use crate::utils;
 use crate::utils::clip;
@@ -93,7 +92,7 @@ pub struct Quant {
     pub ref_name: Vec<String>,
     pub trade_name: String,
     pub ready: i8,
-    pub predictor: PredictorNew,
+    pub predictor: Predictor,
     pub market: Market,
     pub platform_rest: Box<dyn Platform + Send + Sync>,
     // 市场最优买卖价
@@ -164,7 +163,7 @@ impl Quant {
             ref_name: Default::default(),
             trade_name: "".to_string(),
             ready: 0,
-            predictor: PredictorNew{
+            predictor: Predictor{
                 loop_count: 0,
                 market_info_list: vec![],
                 mid_price_list: vec![],
@@ -174,15 +173,6 @@ impl Quant {
                 alpha: vec![],
                 gamma: Default::default(),
                 avg_spread_list: vec![],
-                transaction_prices: vec![],
-                variance: Default::default(),
-                balance_value: Default::default(),
-                max_spread: Default::default(),
-                min_spread: Default::default(),
-                rl_num: Default::default(),
-                ira: Default::default(),
-                max_position_value: Default::default(),
-                vol: InstantVolatilityIndicator::new(1, 1),
             },
             market: Market {
                 symbol: symbol.clone(),
@@ -275,12 +265,9 @@ impl Quant {
             }
         }
         info!("价格系数:{:?}", price_alpha);
-        quant_obj.predictor = PredictorNew::new(quant_obj.ref_name.len(), params.max_spread, params.min_spread, params.rl_num, params.max_position_value, params.ira)
+        quant_obj.predictor = Predictor::new(quant_obj.ref_name.len())
             .alpha(price_alpha)
             .gamma(params.gamma);
-        // quant_obj.predictor = Predictor::new(quant_obj.ref_name.len())
-        //     .alpha(price_alpha)
-        //     .gamma(params.gamma);
 
         return quant_obj;
     }
@@ -709,12 +696,12 @@ impl Quant {
         // if spread < self.predictor.min_spread || self.predictor.min_spread == Decimal::ZERO{
         //     self.predictor.min_spread = spread;
         // }
-        // 只用第一参考交易所最佳买卖价的中间价
-        if name == self.ref_name[0] {
-            self.predictor.market_update(data.mid_price.clone());
-            // 查看进度
-            self.predictor.vol.get_process();
-        }
+        // // 只用第一参考交易所最佳买卖价的中间价
+        // if name == self.ref_name[0] {
+        //     self.predictor.market_update(data.mid_price.clone());
+        //     // 查看进度
+        //     self.predictor.vol.get_process();
+        // }
         self.tickers.insert(name, data);
 
 
@@ -764,8 +751,8 @@ impl Quant {
         let ap = self.trade_msg.market[ASK_PRICE_INDEX];
         let mp = (bp + ap) * dec!(0.5);
         // 更新持仓价值
-        self.predictor.balance_value = self.trade_msg.cash * mp;
-        let ref_price: Vec<Vec<Decimal>> = self.predictor.get_ref_price();
+        // self.predictor.balance_value = self.trade_msg.cash * mp;
+        let ref_price: Vec<Vec<Decimal>> = self.predictor.get_ref_price(&ref_tickers);
         if ref_price.len() == 0{
             return;
         }