This commit is contained in:
zhangkun9038@dingtalk.com 2025-05-31 09:43:33 +00:00
parent 71687b5539
commit e583e677b8
2 changed files with 27 additions and 2 deletions

View File

@ -8,7 +8,7 @@
"tradable_balance_ratio": 1,
"fiat_display_currency": "USD",
"dry_run": true,
"timeframe": "3m",
"timeframe": "5m",
"dry_run_wallet": 1000,
"cancel_open_orders_on_exit": true,
"stoploss": -0.05,

View File

@ -12,7 +12,7 @@ from freqtrade.strategy import IStrategy
logger = logging.getLogger(__name__)
class DivergenceRegressionStrategy(IStrategy):
class FreqaiPrimer(IStrategy):
"""
策略说明
- 所有交易信号基于 FreqAI 的动态预测
@ -124,6 +124,17 @@ class DivergenceRegressionStrategy(IStrategy):
for col in columns_to_clean:
dataframe[col] = dataframe[col].replace([np.inf, -np.inf], 0).ffill().fillna(0)
columns_to_clean = [
"%-rsi-period", "%-mfi-period", "%-sma-period", "%-ema-period", "%-adx-period",
"bb_lowerband-period", "bb_middleband-period", "bb_upperband-period",
"%-bb_width-period", "%-roc-period", "%-relative_volume-period", "%-close-bb_lower-period", "%-tema-period",
"%-price_trend_diff-period", "%-roc_mfi_ratio-period"
]
for col in columns_to_clean:
dataframe[col] = dataframe[col].replace([np.inf, -np.inf], np.nan)
dataframe[col] = dataframe[col].ffill().fillna(0)
return dataframe
# 👇 定义目标列(全部为连续值)
@ -151,6 +162,20 @@ class DivergenceRegressionStrategy(IStrategy):
dataframe["trend_change"] = dataframe["&-trend_strength"].pct_change(label_period)
dataframe["&-divergence_score"] = dataframe["price_change"] - dataframe["trend_change"]
# 👇 新增:清理所有目标列中的非有限值
target_columns = [
"&-trend_strength",
"&-volatility_forecast",
"&-roi_target",
"&-stoploss_target",
"&-divergence_score"
]
for col in target_columns:
if col in dataframe.columns:
dataframe[col] = dataframe[col].replace([np.inf, -np.inf], np.nan)
dataframe[col] = dataframe[col].ffill().fillna(0)
return dataframe
# 👇 缓存 mean/std 供后续使用