diff --git a/src/strategy_team/future_strategy_long.rs b/src/strategy_team/future_strategy_long.rs index 87e309a..4201776 100644 --- a/src/strategy_team/future_strategy_long.rs +++ b/src/strategy_team/future_strategy_long.rs @@ -92,7 +92,13 @@ pub async fn list_up_for_buy( && supertrend_vec.last().is_some_and(|a| a.close_time == values.closetime) && supertrend_vec.last().unwrap().area == SuperTrendArea::UP && supertrend_vec[supertrend_vec.len()-2].area == SuperTrendArea::UP { - do_buy = true; + let a = supertrend_vec.get(supertrend_vec.len()-6..supertrend_vec.len()-1).unwrap(); + for element in a { + if element.signal == Some(SuperTrendSignal::BUY) { + do_buy = true; + break; + } + } } } diff --git a/src/strategy_team/future_strategy_short.rs b/src/strategy_team/future_strategy_short.rs index 4ad2f75..695fdbc 100644 --- a/src/strategy_team/future_strategy_short.rs +++ b/src/strategy_team/future_strategy_short.rs @@ -92,7 +92,13 @@ pub async fn list_up_for_buy( && supertrend_vec.last().is_some_and(|a| a.close_time == values.closetime) && supertrend_vec.last().unwrap().area == SuperTrendArea::DOWN && supertrend_vec[supertrend_vec.len()-2].area == SuperTrendArea::DOWN { - do_buy = true; + let a = supertrend_vec.get(supertrend_vec.len()-6..supertrend_vec.len()-1).unwrap(); + for element in a { + if element.signal == Some(SuperTrendSignal::SELL) { + do_buy = true; + break; + } + } } }