From b0041db83d994d1a1234db09171100c5624e9812 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Benoit?= Date: Mon, 10 Feb 2025 11:04:54 +0100 Subject: [PATCH] refactor(qav3): argrelextrema -> find_peaks MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Jérôme Benoit --- .../user_data/strategies/QuickAdapterV3.py | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) 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) -- 2.43.0