Move parameter to return value of bollingerband()

This commit is contained in:
Sik Yoon 2023-07-16 17:22:37 +09:00
parent 65dd318aaa
commit a0ede8e8be
2 changed files with 6 additions and 8 deletions

View File

@ -1005,17 +1005,16 @@ pub async fn execute_strategist_for_test_temp(
&alldata.valid_symbol_vec, &alldata.valid_symbol_vec,
) )
.await?; .await?;
let mut bb10_30m_data: Vec<(String, Vec<BollingerBandData>)> = Vec::new();
let mut bb10_30m_vec: Vec<BollingerBandData> = Vec::new(); let mut bb10_30m_data: Vec<(String, Vec<BollingerBandData>)> = value_estimation_team::indicators::bollingerband::bollingerband(
value_estimation_team::indicators::bollingerband::bollingerband(
10, 10,
3.0, 3.0,
&sma_30m_data, &sma_30m_data,
&alldata.rt_price_1m_vec, &alldata.rt_price_1m_vec,
&mut bb10_30m_data,
&alldata.valid_symbol_vec, &alldata.valid_symbol_vec,
) )
.await?; .await?;
let mut bb10_30m_vec: Vec<BollingerBandData> = Vec::new();
let mut filtered_4th_symbols: Vec<(String, i64)> = Vec::new(); // (symbol, closetime) let mut filtered_4th_symbols: Vec<(String, i64)> = Vec::new(); // (symbol, closetime)
for element in filtered_3rd_symbols { for element in filtered_3rd_symbols {
let bb10_30m_option = bb10_30m_data.iter().position(|x| *x.0 == element.0); let bb10_30m_option = bb10_30m_data.iter().position(|x| *x.0 == element.0);

View File

@ -34,9 +34,8 @@ pub async fn bollingerband(
sd_factor: f64, sd_factor: f64,
input_sma_data: &Vec<(String, Vec<SmaData>)>, input_sma_data: &Vec<(String, Vec<SmaData>)>,
rt_input_data: &Vec<(String, Vec<RealtimePriceData>)>, rt_input_data: &Vec<(String, Vec<RealtimePriceData>)>,
output_bb_data: &mut Vec<(String, Vec<BollingerBandData>)>,
valid_usdt_trades: &Vec<String>, valid_usdt_trades: &Vec<String>,
) -> Result<(), Box<dyn std::error::Error + Send + Sync>> { ) -> Result<Vec<(String, Vec<BollingerBandData>)>, Box<dyn std::error::Error + Send + Sync>> {
let instant = Instant::now(); let instant = Instant::now();
let mut read_rt_data_vec: Vec<(String, Vec<RealtimePriceData>)> = rt_input_data.clone(); let mut read_rt_data_vec: Vec<(String, Vec<RealtimePriceData>)> = rt_input_data.clone();
@ -133,7 +132,7 @@ pub async fn bollingerband(
None => {} None => {}
} }
} }
*output_bb_data = bb_data_wrapper; ;
// println!(" indicators/bb{} 완료 elapsed:{:.2}s", ma_number, instant.elapsed().as_secs_f32()); // println!(" indicators/bb{} 완료 elapsed:{:.2}s", ma_number, instant.elapsed().as_secs_f32());
Ok(()) Ok(bb_data_wrapper)
} }