From: Jérôme Benoit Date: Mon, 10 Feb 2025 10:04:54 +0000 (+0100) Subject: refactor(qav3): argrelextrema -> find_peaks X-Git-Url: https://git.piment-noir.org/?a=commitdiff_plain;h=b0041db83d994d1a1234db09171100c5624e9812;p=freqai-strategies.git refactor(qav3): argrelextrema -> find_peaks Signed-off-by: Jérôme Benoit --- diff --git a/quickadapter/user_data/strategies/QuickAdapterV3.py b/quickadapter/user_data/strategies/QuickAdapterV3.py index af85485..280fe9b 100644 --- a/quickadapter/user_data/strategies/QuickAdapterV3.py +++ b/quickadapter/user_data/strategies/QuickAdapterV3.py @@ -10,7 +10,7 @@ from freqtrade.strategy.interface import IStrategy from technical.pivots_points import pivots_points from freqtrade.exchange import timeframe_to_prev_date from freqtrade.persistence import Trade -from scipy.signal import argrelextrema +from scipy.signal import find_peaks import numpy as np import pandas_ta as pta @@ -236,19 +236,19 @@ class QuickAdapterV3(IStrategy): ) ) dataframe["&s-extrema"] = 0 - min_peaks = argrelextrema( - dataframe["low"].values, - np.less, - order=label_period_candles, + min_peaks, _ = find_peaks( + -dataframe["low"].values, + height=0, + distance=label_period_candles, ) - max_peaks = argrelextrema( + max_peaks, _ = find_peaks( dataframe["high"].values, - np.greater, - order=label_period_candles, + height=0, + distance=label_period_candles, ) - for mp in min_peaks[0]: + for mp in min_peaks: dataframe.at[mp, "&s-extrema"] = -1 - for mp in max_peaks[0]: + for mp in max_peaks: dataframe.at[mp, "&s-extrema"] = 1 dataframe["minima"] = np.where(dataframe["&s-extrema"] == -1, 1, 0) dataframe["maxima"] = np.where(dataframe["&s-extrema"] == 1, 1, 0)