Add filtering

This commit is contained in:
Sik Yoon 2024-01-07 18:12:41 +09:00
parent 0b8b8bce04
commit a1dbccb1bb

View File

@ -69,7 +69,7 @@ pub async fn list_up_for_buy(
}
try_join_all(task_vec).await?;
// 2nd filtering: SMA5 (opclo_price) < EMA3 (opclo_price)
// 2nd filtering: SMA5 (opclo_price) < EMA3 (opclo_price) && 5 previous MA > current MA
let filtered_data_1st = filtered_data_1st_arc.lock().await.clone();
let mut filtered_data_2nd: Vec<FilteredData> = Vec::new();
let mut filtered_data_2nd_arc: Arc<Mutex<Vec<FilteredData>>> =
@ -116,7 +116,8 @@ pub async fn list_up_for_buy(
);
if sma_search_result.is_ok() && ema_search_result.is_ok() {
if sma_vec[sma_search_result.unwrap()].sma_value < ema_vec[ema_search_result.unwrap()].ema_value &&
sma_vec[sma_search_result.unwrap()-1].sma_value > ema_vec[ema_search_result.unwrap()-1].ema_value {
sma_vec[sma_search_result.unwrap()-1].sma_value > ema_vec[ema_search_result.unwrap()-1].ema_value &&
sma_vec[sma_search_result.unwrap()-4].sma_value > sma_vec[sma_search_result.unwrap()].sma_value {
let mut filtered_data_2nd_lock = filtered_data_2nd_arc_c.lock().await;
let mut filtered_data = FilteredData::new();
filtered_data.symbol = element.symbol.clone();