|
|
@@ -410,12 +410,15 @@ impl Predictor {
|
|
|
let total_amount_0: Decimal = self.trade_233_vec.deque.iter().map(|trade| trade.value).sum();
|
|
|
let total_amount_1: Decimal = self.trade_0_vec.deque.iter().map(|trade| trade.value).sum();
|
|
|
|
|
|
- let spread = if total_amount_0 + total_amount_1 == Decimal::ZERO {
|
|
|
- Decimal::ZERO
|
|
|
+ let spread = if self.trade_price_long_vec.len() > 1 {
|
|
|
+ let front = self.trade_price_long_vec.deque.front().unwrap();
|
|
|
+ let back = self.trade_price_long_vec.deque.back().unwrap();
|
|
|
+
|
|
|
+ (back / front) - Decimal::ONE
|
|
|
} else {
|
|
|
- total_amount_0 / (total_amount_0 + total_amount_1)
|
|
|
+ Decimal::ZERO
|
|
|
};
|
|
|
- let spread_min = Self::DONT_VIEW;
|
|
|
+ let spread_min = (self.fair_price - self.mid_price) / self.mid_price;
|
|
|
let spread_max = Self::DONT_VIEW;
|
|
|
// let spread = self.price_times_avg;
|
|
|
// let spread_max = self.fair_price_vec[1] / self.fair_price_vec[0];
|
|
|
@@ -426,13 +429,10 @@ impl Predictor {
|
|
|
let sigma_square = self.params.open;
|
|
|
|
|
|
let gamma = self.balance;
|
|
|
- let kappa = if self.trade_price_long_vec.len() > 1 {
|
|
|
- let front = self.trade_price_long_vec.deque.front().unwrap();
|
|
|
- let back = self.trade_price_long_vec.deque.back().unwrap();
|
|
|
-
|
|
|
- (back / front) - Decimal::ONE
|
|
|
- } else {
|
|
|
+ let kappa = if total_amount_0 + total_amount_1 == Decimal::ZERO {
|
|
|
Decimal::ZERO
|
|
|
+ } else {
|
|
|
+ total_amount_0 / (total_amount_0 + total_amount_1)
|
|
|
};
|
|
|
|
|
|
let flow_ratio = Decimal::ZERO;
|