Change to reterive all symbols

This commit is contained in:
Sik Yoon 2024-05-24 17:02:08 +09:00
parent 87cde15b37
commit 40193b171a

View File

@ -29,30 +29,31 @@ pub async fn list_up_for_buy(
for symbol in &alldata.valid_symbol_vec { for symbol in &alldata.valid_symbol_vec {
filtered_data.insert(symbol.clone(), FilteredDataValue::new()); filtered_data.insert(symbol.clone(), FilteredDataValue::new());
} }
let server_epoch = get_server_epoch().await;
// current Tema(30) < current Tema(60) // current Tema(15) < current Tema(60)
let mut keys_to_remove: HashSet<String> = HashSet::new(); let mut keys_to_remove: HashSet<String> = HashSet::new();
let tema_15 = tema(15, &alldata.rt_price_1m_vec, &filtered_data).await?; let tema_15 = tema(15, &alldata.rt_price_1m_vec, &filtered_data).await?;
let tema_60 = tema(60, &alldata.rt_price_1m_vec, &filtered_data).await?; let tema_60 = tema(60, &alldata.rt_price_1m_vec, &filtered_data).await?;
let server_epoch = get_server_epoch().await; let server_epoch = get_server_epoch().await;
for (symbol, values) in &mut filtered_data {
let mut do_buy = false; let mut do_buy = false;
if let (Some(tema15_vec), Some(tema60_vec)) = (tema_15.get("BTCUSDT"), tema_60.get("BTCUSDT")) { if let (Some(tema15_vec), Some(tema60_vec)) = (tema_15.get(symbol), tema_60.get(symbol)) {
if tema15_vec.len() > 10 if tema15_vec.len() > 10
&& tema60_vec.len() > 10 && tema60_vec.len() > 10
&& tema15_vec.last().unwrap().close_time == tema60_vec.last().unwrap().close_time && tema15_vec.last().unwrap().close_time == tema60_vec.last().unwrap().close_time
&& tema15_vec.last().unwrap().close_time > server_epoch && tema15_vec.last().unwrap().close_time > server_epoch
&& tema60_vec.last().unwrap().close_time > server_epoch && tema60_vec.last().unwrap().close_time > server_epoch
{ {
if tema15_vec.last().unwrap().tema_value > tema60_vec.last().unwrap().tema_value { if tema15_vec.last().unwrap().tema_value > tema60_vec.last().unwrap().tema_value {
do_buy = true; do_buy = true;
}
} }
} }
} if do_buy == false {
keys_to_remove.insert(symbol.clone());
if do_buy == false { }
return Ok(());
} }
remove_keys(&mut filtered_data, keys_to_remove).await;
// Heatmap volume: filtering close price with Extra High is over the previous candle from 30 previous candles // Heatmap volume: filtering close price with Extra High is over the previous candle from 30 previous candles
let mut keys_to_remove: HashSet<String> = HashSet::new(); let mut keys_to_remove: HashSet<String> = HashSet::new();