Pārlūkot izejas kodu

深度曲线提交。

skyffire 1 gadu atpakaļ
vecāks
revīzija
67fb06a8b7
1 mainītis faili ar 14 papildinājumiem un 3 dzēšanām
  1. 14 3
      src/msv.rs

+ 14 - 3
src/msv.rs

@@ -256,10 +256,21 @@ pub fn generate_msv_by_trades(mut trades: Vec<Trade>, mills_back: Decimal, simpl
         // ====================================== 智能填充数据 ===============================================
         // 价差及买一、卖一数据处理
         if simple_depths.len() > 0 {
-            let depth = &simple_depths[max_spread_index];
+            // 数据填充
+            if max_spread_index == 0 {
+                if final_a1s_data.len() > 0 && final_b1s_data.len() > 0 {
+                    final_a1s_data.push(vec![index_timestamp, final_a1s_data.last().unwrap()[1]]);
+                    final_b1s_data.push(vec![index_timestamp, final_b1s_data.last().unwrap()[1]]);
+                } else {
+                    final_a1s_data.push(vec![index_timestamp, Decimal::ZERO]);
+                    final_b1s_data.push(vec![index_timestamp, Decimal::ZERO]);
+                }
+            } else {
+                let depth = &simple_depths[max_spread_index];
 
-            final_a1s_data.push(vec![index_timestamp, depth.a1 - a1_first]);
-            final_b1s_data.push(vec![index_timestamp, depth.b1 - b1_first]);
+                final_a1s_data.push(vec![index_timestamp, depth.a1 - a1_first]);
+                final_b1s_data.push(vec![index_timestamp, depth.b1 - b1_first]);
+            }
         } else {
             final_a1s_data.push(vec![index_timestamp, Decimal::ZERO]);
             final_b1s_data.push(vec![index_timestamp, Decimal::ZERO]);