多时间框架

This commit is contained in:
zhangkun9038@dingtalk.com 2025-05-04 21:07:27 +08:00
parent 9140e25e57
commit ae443aa5f1
9 changed files with 405 additions and 336 deletions

View File

@ -293,11 +293,21 @@ class OKXRegressionStrategy(IStrategy):
dataframe['bb_lower'] = lower
# 添加高时间框架数据(例如 1h
dataframe_1h = None # 显式声明
if self.config['timeframe'] != '1h':
dataframe_1h = self.dp.get_analyzed_dataframe(metadata['pair'], '1h')[0]
dataframe['trend_1h'] = dataframe_1h['close'].rolling(window=20).mean()
# 确保 dataframe_1h 存在 'close' 列并且非空
if dataframe_1h is not None and not dataframe_1h.empty and 'close' in dataframe_1h.columns:
dataframe['trend_1h'] = dataframe_1h['close'].rolling(window=20).mean()
else:
# 回退到当前时间框架数据
dataframe['trend_1h'] = dataframe['close'].rolling(window=20).mean()
else:
dataframe['trend_1h'] = dataframe['close'].rolling(window=20).mean()
# 记录 1h 数据框信息
logger.debug(f"dataframe_1h columns: {dataframe_1h.columns.tolist() if dataframe_1h is not None and not dataframe_1h.empty else '未使用'}")
return dataframe

View File

@ -1,103 +1,103 @@
Creating freqtrade_freqtrade_run ...
Creating freqtrade_freqtrade_run ... done
2025-05-04 11:58:28,633 - freqtrade - INFO - freqtrade docker-2025.4-dev-23e4943b
2025-05-04 11:58:28,848 - numexpr.utils - INFO - NumExpr defaulting to 12 threads.
2025-05-04 11:58:30,260 - freqtrade.configuration.load_config - INFO - Using config: /freqtrade/config_examples/config_freqai.okx.json ...
2025-05-04 11:58:30,262 - freqtrade.loggers - INFO - Enabling colorized output.
2025-05-04 11:58:30,263 - root - INFO - Logfile configured
2025-05-04 11:58:30,263 - freqtrade.loggers - INFO - Verbosity set to 0
2025-05-04 11:58:30,264 - freqtrade.configuration.configuration - INFO - Using additional Strategy lookup path: /freqtrade/templates
2025-05-04 11:58:30,264 - freqtrade.configuration.configuration - INFO - Using max_open_trades: 4 ...
2025-05-04 11:58:30,265 - freqtrade.configuration.configuration - INFO - Parameter --fee detected, setting fee to: 0.0008 ...
2025-05-04 11:58:30,265 - freqtrade.configuration.configuration - INFO - Parameter --timerange detected: 20250407-20250415 ...
2025-05-04 11:58:30,301 - freqtrade.configuration.configuration - INFO - Using user-data directory: /freqtrade/user_data ...
2025-05-04 11:58:30,302 - freqtrade.configuration.configuration - INFO - Using data directory: /freqtrade/user_data/data/okx ...
2025-05-04 11:58:30,302 - freqtrade.configuration.configuration - INFO - Parameter --cache=none detected ...
2025-05-04 11:58:30,303 - freqtrade.configuration.configuration - INFO - Filter trades by timerange: 20250407-20250415
2025-05-04 11:58:30,303 - freqtrade.configuration.configuration - INFO - Using freqaimodel class name: XGBoostRegressor
2025-05-04 11:58:30,304 - freqtrade.exchange.check_exchange - INFO - Checking exchange...
2025-05-04 11:58:30,311 - freqtrade.exchange.check_exchange - INFO - Exchange "okx" is officially supported by the Freqtrade development team.
2025-05-04 11:58:30,311 - freqtrade.configuration.configuration - INFO - Using pairlist from configuration.
2025-05-04 11:58:30,312 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 11:58:30,314 - freqtrade.commands.optimize_commands - INFO - Starting freqtrade in Backtesting mode
2025-05-04 11:58:30,314 - freqtrade.exchange.exchange - INFO - Instance is running with dry_run enabled
2025-05-04 11:58:30,315 - freqtrade.exchange.exchange - INFO - Using CCXT 4.4.77
2025-05-04 11:58:30,315 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}}
2025-05-04 11:58:30,320 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}, 'timeout': 20000}
2025-05-04 11:58:30,326 - freqtrade.exchange.exchange - INFO - Using Exchange "OKX"
2025-05-04 11:58:32,974 - freqtrade.resolvers.exchange_resolver - INFO - Using resolved exchange 'Okx'...
2025-05-04 11:58:33,028 - freqtrade.resolvers.iresolver - INFO - Using resolved strategy OKXRegressionStrategy from '/freqtrade/templates/OKXRegressionStrategy.py'...
2025-05-04 11:58:33,028 - freqtrade.strategy.hyper - INFO - Found no parameter file.
2025-05-04 11:58:33,029 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'timeframe' with value in config file: 3m.
2025-05-04 11:58:33,029 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stoploss' with value in config file: -0.05.
2025-05-04 11:58:33,030 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_currency' with value in config file: USDT.
2025-05-04 11:58:33,030 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_amount' with value in config file: 150.
2025-05-04 11:58:33,030 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'startup_candle_count' with value in config file: 30.
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'unfilledtimeout' with value in config file: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit':
2025-05-04 12:38:01,174 - freqtrade - INFO - freqtrade docker-2025.4-dev-23e4943b
2025-05-04 12:38:01,380 - numexpr.utils - INFO - NumExpr defaulting to 12 threads.
2025-05-04 12:38:02,816 - freqtrade.configuration.load_config - INFO - Using config: /freqtrade/config_examples/config_freqai.okx.json ...
2025-05-04 12:38:02,818 - freqtrade.loggers - INFO - Enabling colorized output.
2025-05-04 12:38:02,818 - root - INFO - Logfile configured
2025-05-04 12:38:02,819 - freqtrade.loggers - INFO - Verbosity set to 0
2025-05-04 12:38:02,819 - freqtrade.configuration.configuration - INFO - Using additional Strategy lookup path: /freqtrade/templates
2025-05-04 12:38:02,819 - freqtrade.configuration.configuration - INFO - Using max_open_trades: 4 ...
2025-05-04 12:38:02,820 - freqtrade.configuration.configuration - INFO - Parameter --fee detected, setting fee to: 0.0008 ...
2025-05-04 12:38:02,820 - freqtrade.configuration.configuration - INFO - Parameter --timerange detected: 20250407-20250415 ...
2025-05-04 12:38:02,846 - freqtrade.configuration.configuration - INFO - Using user-data directory: /freqtrade/user_data ...
2025-05-04 12:38:02,846 - freqtrade.configuration.configuration - INFO - Using data directory: /freqtrade/user_data/data/okx ...
2025-05-04 12:38:02,847 - freqtrade.configuration.configuration - INFO - Parameter --cache=none detected ...
2025-05-04 12:38:02,847 - freqtrade.configuration.configuration - INFO - Filter trades by timerange: 20250407-20250415
2025-05-04 12:38:02,848 - freqtrade.configuration.configuration - INFO - Using freqaimodel class name: XGBoostRegressor
2025-05-04 12:38:02,849 - freqtrade.exchange.check_exchange - INFO - Checking exchange...
2025-05-04 12:38:02,855 - freqtrade.exchange.check_exchange - INFO - Exchange "okx" is officially supported by the Freqtrade development team.
2025-05-04 12:38:02,856 - freqtrade.configuration.configuration - INFO - Using pairlist from configuration.
2025-05-04 12:38:02,856 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 12:38:02,858 - freqtrade.commands.optimize_commands - INFO - Starting freqtrade in Backtesting mode
2025-05-04 12:38:02,859 - freqtrade.exchange.exchange - INFO - Instance is running with dry_run enabled
2025-05-04 12:38:02,859 - freqtrade.exchange.exchange - INFO - Using CCXT 4.4.77
2025-05-04 12:38:02,859 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}}
2025-05-04 12:38:02,864 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}, 'timeout': 20000}
2025-05-04 12:38:02,870 - freqtrade.exchange.exchange - INFO - Using Exchange "OKX"
2025-05-04 12:38:05,789 - freqtrade.resolvers.exchange_resolver - INFO - Using resolved exchange 'Okx'...
2025-05-04 12:38:05,841 - freqtrade.resolvers.iresolver - INFO - Using resolved strategy OKXRegressionStrategy from '/freqtrade/templates/OKXRegressionStrategy.py'...
2025-05-04 12:38:05,842 - freqtrade.strategy.hyper - INFO - Found no parameter file.
2025-05-04 12:38:05,842 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'timeframe' with value in config file: 3m.
2025-05-04 12:38:05,843 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stoploss' with value in config file: -0.05.
2025-05-04 12:38:05,843 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_currency' with value in config file: USDT.
2025-05-04 12:38:05,843 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_amount' with value in config file: 150.
2025-05-04 12:38:05,844 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'startup_candle_count' with value in config file: 30.
2025-05-04 12:38:05,844 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'unfilledtimeout' with value in config file: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit':
'minutes'}.
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'max_open_trades' with value in config file: 4.
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using minimal_roi: {}
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using timeframe: 3m
2025-05-04 11:58:33,032 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stoploss: -0.05
2025-05-04 11:58:33,032 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop: True
2025-05-04 11:58:33,032 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive: 0.01
2025-05-04 11:58:33,033 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive_offset: 0.0
2025-05-04 11:58:33,033 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_only_offset_is_reached: False
2025-05-04 11:58:33,033 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_custom_stoploss: False
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using process_only_new_candles: True
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_types: {'entry': 'limit', 'exit': 'limit', 'stoploss': 'limit', 'stoploss_on_exchange': False,
2025-05-04 12:38:05,844 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'max_open_trades' with value in config file: 4.
2025-05-04 12:38:05,845 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using minimal_roi: {}
2025-05-04 12:38:05,845 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using timeframe: 3m
2025-05-04 12:38:05,845 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stoploss: -0.05
2025-05-04 12:38:05,846 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop: True
2025-05-04 12:38:05,846 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive: 0.01
2025-05-04 12:38:05,846 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive_offset: 0.0
2025-05-04 12:38:05,847 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_only_offset_is_reached: False
2025-05-04 12:38:05,847 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_custom_stoploss: False
2025-05-04 12:38:05,847 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using process_only_new_candles: True
2025-05-04 12:38:05,848 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_types: {'entry': 'limit', 'exit': 'limit', 'stoploss': 'limit', 'stoploss_on_exchange': False,
'stoploss_on_exchange_interval': 60}
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_time_in_force: {'entry': 'GTC', 'exit': 'GTC'}
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_currency: USDT
2025-05-04 11:58:33,035 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_amount: 150
2025-05-04 11:58:33,035 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using startup_candle_count: 30
2025-05-04 11:58:33,035 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using unfilledtimeout: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit': 'minutes'}
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_exit_signal: True
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_only: False
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_roi_if_entry_signal: False
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_offset: 0.0
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using disable_dataframe_checks: False
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_buying_expired_candle_after: 0
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using position_adjustment_enable: False
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_entry_position_adjustment: -1
2025-05-04 11:58:33,038 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_open_trades: 4
2025-05-04 11:58:33,038 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 11:58:33,042 - freqtrade.resolvers.iresolver - INFO - Using resolved pairlist StaticPairList from '/freqtrade/freqtrade/plugins/pairlist/StaticPairList.py'...
2025-05-04 11:58:33,048 - freqtrade.optimize.backtesting - INFO - Using fee 0.0800% from config.
2025-05-04 11:58:33,049 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 11:58:33,049 - freqtrade.data.history.history_utils - INFO - Using indicator startup period: 43250 ...
2025-05-04 11:58:33,197 - freqtrade.optimize.backtesting - INFO - Loading data from 2025-01-06 21:30:00 up to 2025-04-15 00:00:00 (98 days).
2025-05-04 11:58:33,197 - freqtrade.optimize.backtesting - INFO - Dataload complete. Calculating indicators
2025-05-04 11:58:33,198 - freqtrade.optimize.backtesting - INFO - Running backtesting for Strategy OKXRegressionStrategy
2025-05-04 11:58:34,759 - matplotlib.font_manager - INFO - generated new fontManager
2025-05-04 11:58:34,966 - freqtrade.resolvers.iresolver - INFO - Using resolved freqaimodel XGBoostRegressor from '/freqtrade/freqtrade/freqai/prediction_models/XGBoostRegressor.py'...
2025-05-04 11:58:34,966 - freqtrade.freqai.data_drawer - INFO - Could not find existing datadrawer, starting from scratch
2025-05-04 11:58:34,967 - freqtrade.freqai.data_drawer - INFO - Could not find existing historic_predictions, starting from scratch
2025-05-04 11:58:34,967 - freqtrade.freqai.freqai_interface - INFO - Set fresh train queue from whitelist. Queue: ['OKB/USDT', 'TON/USDT']
2025-05-04 11:58:34,968 - freqtrade.strategy.hyper - INFO - No params for buy found, using default values.
2025-05-04 11:58:34,968 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_period = 14
2025-05-04 11:58:34,969 - freqtrade.strategy.hyper - INFO - No params for sell found, using default values.
2025-05-04 11:58:34,969 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_multiplier = 2.0
2025-05-04 11:58:34,970 - freqtrade.strategy.hyper - INFO - No params for protection found, using default values.
2025-05-04 11:58:34,975 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 11:58:34,976 - freqtrade.freqai.freqai_interface - INFO - Training OKB/USDT, 1/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 11:58:34,977 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
2025-05-04 12:38:05,848 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_time_in_force: {'entry': 'GTC', 'exit': 'GTC'}
2025-05-04 12:38:05,848 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_currency: USDT
2025-05-04 12:38:05,849 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_amount: 150
2025-05-04 12:38:05,849 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using startup_candle_count: 30
2025-05-04 12:38:05,849 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using unfilledtimeout: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit': 'minutes'}
2025-05-04 12:38:05,850 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_exit_signal: True
2025-05-04 12:38:05,850 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_only: False
2025-05-04 12:38:05,850 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_roi_if_entry_signal: False
2025-05-04 12:38:05,851 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_offset: 0.0
2025-05-04 12:38:05,851 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using disable_dataframe_checks: False
2025-05-04 12:38:05,851 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_buying_expired_candle_after: 0
2025-05-04 12:38:05,852 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using position_adjustment_enable: False
2025-05-04 12:38:05,852 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_entry_position_adjustment: -1
2025-05-04 12:38:05,852 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_open_trades: 4
2025-05-04 12:38:05,853 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 12:38:05,857 - freqtrade.resolvers.iresolver - INFO - Using resolved pairlist StaticPairList from '/freqtrade/freqtrade/plugins/pairlist/StaticPairList.py'...
2025-05-04 12:38:05,862 - freqtrade.optimize.backtesting - INFO - Using fee 0.0800% from config.
2025-05-04 12:38:05,863 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 12:38:05,863 - freqtrade.data.history.history_utils - INFO - Using indicator startup period: 43250 ...
2025-05-04 12:38:06,006 - freqtrade.optimize.backtesting - INFO - Loading data from 2025-01-06 21:30:00 up to 2025-04-15 00:00:00 (98 days).
2025-05-04 12:38:06,007 - freqtrade.optimize.backtesting - INFO - Dataload complete. Calculating indicators
2025-05-04 12:38:06,008 - freqtrade.optimize.backtesting - INFO - Running backtesting for Strategy OKXRegressionStrategy
2025-05-04 12:38:07,597 - matplotlib.font_manager - INFO - generated new fontManager
2025-05-04 12:38:07,798 - freqtrade.resolvers.iresolver - INFO - Using resolved freqaimodel XGBoostRegressor from '/freqtrade/freqtrade/freqai/prediction_models/XGBoostRegressor.py'...
2025-05-04 12:38:07,799 - freqtrade.freqai.data_drawer - INFO - Could not find existing datadrawer, starting from scratch
2025-05-04 12:38:07,799 - freqtrade.freqai.data_drawer - INFO - Could not find existing historic_predictions, starting from scratch
2025-05-04 12:38:07,799 - freqtrade.freqai.freqai_interface - INFO - Set fresh train queue from whitelist. Queue: ['OKB/USDT', 'TON/USDT']
2025-05-04 12:38:07,800 - freqtrade.strategy.hyper - INFO - No params for buy found, using default values.
2025-05-04 12:38:07,801 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_period = 14
2025-05-04 12:38:07,801 - freqtrade.strategy.hyper - INFO - No params for sell found, using default values.
2025-05-04 12:38:07,802 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_multiplier = 2.0
2025-05-04 12:38:07,802 - freqtrade.strategy.hyper - INFO - No params for protection found, using default values.
2025-05-04 12:38:07,808 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 12:38:07,809 - freqtrade.freqai.freqai_interface - INFO - Training OKB/USDT, 1/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 12:38:07,810 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
/freqtrade/user_data/models/test175/backtesting_predictions/cb_okb_1743984000_prediction.feather
2025-05-04 11:58:35,224 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 11:58:35,224 - freqtrade.data.dataprovider - INFO - Loading data for BTC/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
2025-05-04 11:58:35,416 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 11:58:35,417 - freqtrade.data.dataprovider - INFO - Loading data for ETH/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
2025-05-04 12:38:08,058 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 12:38:08,059 - freqtrade.data.dataprovider - INFO - Loading data for BTC/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
2025-05-04 12:38:08,253 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 12:38:08,254 - freqtrade.data.dataprovider - INFO - Loading data for ETH/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
/freqtrade/templates/OKXRegressionStrategy.py:246: FutureWarning: DataFrame.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.
dataframe = dataframe.fillna(method="ffill").fillna(0)
/freqtrade/templates/OKXRegressionStrategy.py:246: FutureWarning: DataFrame.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.
dataframe = dataframe.fillna(method="ffill").fillna(0)
2025-05-04 11:58:41,469 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000
2025-05-04 11:58:41,470 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training OKB/USDT --------------------
2025-05-04 11:58:41,593 - freqtrade.freqai.data_kitchen - INFO - OKB/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 11:58:41,594 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 11:58:41,650 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 11:58:41,702 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 11:58:41,702 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
2025-05-04 12:38:14,204 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000
2025-05-04 12:38:14,205 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training OKB/USDT --------------------
2025-05-04 12:38:14,334 - freqtrade.freqai.data_kitchen - INFO - OKB/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 12:38:14,334 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 12:38:14,391 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 12:38:14,444 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 12:38:14,444 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
[0] validation_0-rmse:0.36629 validation_1-rmse:0.37143
[1] validation_0-rmse:0.36088 validation_1-rmse:0.36593
[2] validation_0-rmse:0.35557 validation_1-rmse:0.36052
@ -398,13 +398,13 @@ Creating freqtrade_freqtrade_run ... done
[297] validation_0-rmse:0.03425 validation_1-rmse:0.02814
[298] validation_0-rmse:0.03423 validation_1-rmse:0.02811
[299] validation_0-rmse:0.03422 validation_1-rmse:0.02808
2025-05-04 11:59:48,077 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training OKB/USDT (66.61 secs) --------------------
2025-05-04 11:59:48,295 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000--s_close.html
2025-05-04 11:59:48,295 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 11:59:48,357 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 11:59:48,442 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 11:59:48,443 - freqtrade.freqai.freqai_interface - INFO - Training TON/USDT, 2/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 11:59:48,444 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
2025-05-04 12:41:04,061 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training OKB/USDT (169.86 secs) --------------------
2025-05-04 12:41:04,283 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000--s_close.html
2025-05-04 12:41:04,283 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 12:41:04,345 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 12:41:04,441 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 12:41:04,442 - freqtrade.freqai.freqai_interface - INFO - Training TON/USDT, 2/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 12:41:04,443 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
/freqtrade/user_data/models/test175/backtesting_predictions/cb_ton_1743984000_prediction.feather
/freqtrade/templates/OKXRegressionStrategy.py:246: FutureWarning:
@ -414,13 +414,13 @@ DataFrame.fillna with 'method' is deprecated and will raise in a future version.
DataFrame.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.
2025-05-04 11:59:54,567 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000
2025-05-04 11:59:54,568 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training TON/USDT --------------------
2025-05-04 11:59:54,684 - freqtrade.freqai.data_kitchen - INFO - TON/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 11:59:54,685 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 11:59:54,741 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 11:59:54,791 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 11:59:54,791 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
2025-05-04 12:41:10,679 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000
2025-05-04 12:41:10,680 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training TON/USDT --------------------
2025-05-04 12:41:10,811 - freqtrade.freqai.data_kitchen - INFO - TON/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 12:41:10,812 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 12:41:10,870 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 12:41:10,921 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 12:41:10,922 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
[0] validation_0-rmse:0.52241 validation_1-rmse:0.52534
[1] validation_0-rmse:0.51462 validation_1-rmse:0.51751
[2] validation_0-rmse:0.50695 validation_1-rmse:0.50980
@ -721,12 +721,12 @@ DataFrame.fillna with 'method' is deprecated and will raise in a future version.
[297] validation_0-rmse:0.03155 validation_1-rmse:0.02866
[298] validation_0-rmse:0.03153 validation_1-rmse:0.02862
[299] validation_0-rmse:0.03150 validation_1-rmse:0.02858
2025-05-04 12:01:00,801 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training TON/USDT (66.23 secs) --------------------
2025-05-04 12:01:00,836 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000--s_close.html
2025-05-04 12:01:00,836 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 12:01:00,894 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 12:01:00,976 - freqtrade.optimize.backtesting - INFO - Backtesting with data from 2025-04-07 00:00:00 up to 2025-04-15 00:00:00 (8 days).
2025-05-04 12:01:01,168 - freqtrade.misc - INFO - dumping json to "/freqtrade/user_data/backtest_results/backtest-result-2025-05-04_12-01-01.meta.json"
2025-05-04 12:44:08,729 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training TON/USDT (178.05 secs) --------------------
2025-05-04 12:44:08,769 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000--s_close.html
2025-05-04 12:44:08,769 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 12:44:08,831 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 12:44:08,923 - freqtrade.optimize.backtesting - INFO - Backtesting with data from 2025-04-07 00:00:00 up to 2025-04-15 00:00:00 (8 days).
2025-05-04 12:44:09,123 - freqtrade.misc - INFO - dumping json to "/freqtrade/user_data/backtest_results/backtest-result-2025-05-04_12-44-09.meta.json"
Result for strategy OKXRegressionStrategy
BACKTESTING REPORT
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓

View File

@ -1,111 +1,111 @@
Creating freqtrade_freqtrade_run ...
Creating freqtrade_freqtrade_run ... done
2025-05-04 11:58:28,633 - freqtrade - INFO - freqtrade docker-2025.4-dev-23e4943b
2025-05-04 11:58:28,848 - numexpr.utils - INFO - NumExpr defaulting to 12 threads.
2025-05-04 11:58:30,260 - freqtrade.configuration.load_config - INFO - Using config: /freqtrade/config_examples/config_freqai.okx.json ...
2025-05-04 11:58:30,262 - freqtrade.loggers - INFO - Enabling colorized output.
2025-05-04 11:58:30,263 - root - INFO - Logfile configured
2025-05-04 11:58:30,263 - freqtrade.loggers - INFO - Verbosity set to 0
2025-05-04 11:58:30,264 - freqtrade.configuration.configuration - INFO - Using additional Strategy lookup path: /freqtrade/templates
2025-05-04 11:58:30,264 - freqtrade.configuration.configuration - INFO - Using max_open_trades: 4 ...
2025-05-04 11:58:30,265 - freqtrade.configuration.configuration - INFO - Parameter --fee detected, setting fee to: 0.0008 ...
2025-05-04 11:58:30,265 - freqtrade.configuration.configuration - INFO - Parameter --timerange detected: 20250407-20250415 ...
2025-05-04 11:58:30,301 - freqtrade.configuration.configuration - INFO - Using user-data directory: /freqtrade/user_data ...
2025-05-04 11:58:30,302 - freqtrade.configuration.configuration - INFO - Using data directory: /freqtrade/user_data/data/okx ...
2025-05-04 11:58:30,302 - freqtrade.configuration.configuration - INFO - Parameter --cache=none detected ...
2025-05-04 11:58:30,303 - freqtrade.configuration.configuration - INFO - Filter trades by timerange: 20250407-20250415
2025-05-04 11:58:30,303 - freqtrade.configuration.configuration - INFO - Using freqaimodel class name: XGBoostRegressor
2025-05-04 11:58:30,304 - freqtrade.exchange.check_exchange - INFO - Checking exchange...
2025-05-04 11:58:30,311 - freqtrade.exchange.check_exchange - INFO - Exchange "okx" is officially supported by the Freqtrade development team.
2025-05-04 11:58:30,311 - freqtrade.configuration.configuration - INFO - Using pairlist from configuration.
2025-05-04 11:58:30,312 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 11:58:30,314 - freqtrade.commands.optimize_commands - INFO - Starting freqtrade in Backtesting mode
2025-05-04 11:58:30,314 - freqtrade.exchange.exchange - INFO - Instance is running with dry_run enabled
2025-05-04 11:58:30,315 - freqtrade.exchange.exchange - INFO - Using CCXT 4.4.77
2025-05-04 11:58:30,315 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}}
2025-05-04 11:58:30,320 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}, 'timeout': 20000}
2025-05-04 11:58:30,326 - freqtrade.exchange.exchange - INFO - Using Exchange "OKX"
2025-05-04 11:58:32,974 - freqtrade.resolvers.exchange_resolver - INFO - Using resolved exchange 'Okx'...
2025-05-04 11:58:33,028 - freqtrade.resolvers.iresolver - INFO - Using resolved strategy OKXRegressionStrategy from '/freqtrade/templates/OKXRegressionStrategy.py'...
2025-05-04 11:58:33,028 - freqtrade.strategy.hyper - INFO - Found no parameter file.
2025-05-04 11:58:33,029 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'timeframe' with value in config file: 3m.
2025-05-04 11:58:33,029 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stoploss' with value in config file: -0.05.
2025-05-04 11:58:33,030 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_currency' with value in config file: USDT.
2025-05-04 11:58:33,030 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_amount' with value in config file: 150.
2025-05-04 11:58:33,030 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'startup_candle_count' with value in config file: 30.
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'unfilledtimeout' with value in config file: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit':
2025-05-04 12:38:01,174 - freqtrade - INFO - freqtrade docker-2025.4-dev-23e4943b
2025-05-04 12:38:01,380 - numexpr.utils - INFO - NumExpr defaulting to 12 threads.
2025-05-04 12:38:02,816 - freqtrade.configuration.load_config - INFO - Using config: /freqtrade/config_examples/config_freqai.okx.json ...
2025-05-04 12:38:02,818 - freqtrade.loggers - INFO - Enabling colorized output.
2025-05-04 12:38:02,818 - root - INFO - Logfile configured
2025-05-04 12:38:02,819 - freqtrade.loggers - INFO - Verbosity set to 0
2025-05-04 12:38:02,819 - freqtrade.configuration.configuration - INFO - Using additional Strategy lookup path: /freqtrade/templates
2025-05-04 12:38:02,819 - freqtrade.configuration.configuration - INFO - Using max_open_trades: 4 ...
2025-05-04 12:38:02,820 - freqtrade.configuration.configuration - INFO - Parameter --fee detected, setting fee to: 0.0008 ...
2025-05-04 12:38:02,820 - freqtrade.configuration.configuration - INFO - Parameter --timerange detected: 20250407-20250415 ...
2025-05-04 12:38:02,846 - freqtrade.configuration.configuration - INFO - Using user-data directory: /freqtrade/user_data ...
2025-05-04 12:38:02,846 - freqtrade.configuration.configuration - INFO - Using data directory: /freqtrade/user_data/data/okx ...
2025-05-04 12:38:02,847 - freqtrade.configuration.configuration - INFO - Parameter --cache=none detected ...
2025-05-04 12:38:02,847 - freqtrade.configuration.configuration - INFO - Filter trades by timerange: 20250407-20250415
2025-05-04 12:38:02,848 - freqtrade.configuration.configuration - INFO - Using freqaimodel class name: XGBoostRegressor
2025-05-04 12:38:02,849 - freqtrade.exchange.check_exchange - INFO - Checking exchange...
2025-05-04 12:38:02,855 - freqtrade.exchange.check_exchange - INFO - Exchange "okx" is officially supported by the Freqtrade development team.
2025-05-04 12:38:02,856 - freqtrade.configuration.configuration - INFO - Using pairlist from configuration.
2025-05-04 12:38:02,856 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 12:38:02,858 - freqtrade.commands.optimize_commands - INFO - Starting freqtrade in Backtesting mode
2025-05-04 12:38:02,859 - freqtrade.exchange.exchange - INFO - Instance is running with dry_run enabled
2025-05-04 12:38:02,859 - freqtrade.exchange.exchange - INFO - Using CCXT 4.4.77
2025-05-04 12:38:02,859 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}}
2025-05-04 12:38:02,864 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}, 'timeout': 20000}
2025-05-04 12:38:02,870 - freqtrade.exchange.exchange - INFO - Using Exchange "OKX"
2025-05-04 12:38:05,789 - freqtrade.resolvers.exchange_resolver - INFO - Using resolved exchange 'Okx'...
2025-05-04 12:38:05,841 - freqtrade.resolvers.iresolver - INFO - Using resolved strategy OKXRegressionStrategy from '/freqtrade/templates/OKXRegressionStrategy.py'...
2025-05-04 12:38:05,842 - freqtrade.strategy.hyper - INFO - Found no parameter file.
2025-05-04 12:38:05,842 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'timeframe' with value in config file: 3m.
2025-05-04 12:38:05,843 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stoploss' with value in config file: -0.05.
2025-05-04 12:38:05,843 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_currency' with value in config file: USDT.
2025-05-04 12:38:05,843 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_amount' with value in config file: 150.
2025-05-04 12:38:05,844 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'startup_candle_count' with value in config file: 30.
2025-05-04 12:38:05,844 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'unfilledtimeout' with value in config file: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit':
'minutes'}.
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'max_open_trades' with value in config file: 4.
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using minimal_roi: {}
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using timeframe: 3m
2025-05-04 11:58:33,032 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stoploss: -0.05
2025-05-04 11:58:33,032 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop: True
2025-05-04 11:58:33,032 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive: 0.01
2025-05-04 11:58:33,033 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive_offset: 0.0
2025-05-04 11:58:33,033 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_only_offset_is_reached: False
2025-05-04 11:58:33,033 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_custom_stoploss: False
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using process_only_new_candles: True
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_types: {'entry': 'limit', 'exit': 'limit', 'stoploss': 'limit', 'stoploss_on_exchange': False,
2025-05-04 12:38:05,844 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'max_open_trades' with value in config file: 4.
2025-05-04 12:38:05,845 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using minimal_roi: {}
2025-05-04 12:38:05,845 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using timeframe: 3m
2025-05-04 12:38:05,845 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stoploss: -0.05
2025-05-04 12:38:05,846 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop: True
2025-05-04 12:38:05,846 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive: 0.01
2025-05-04 12:38:05,846 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive_offset: 0.0
2025-05-04 12:38:05,847 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_only_offset_is_reached: False
2025-05-04 12:38:05,847 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_custom_stoploss: False
2025-05-04 12:38:05,847 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using process_only_new_candles: True
2025-05-04 12:38:05,848 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_types: {'entry': 'limit', 'exit': 'limit', 'stoploss': 'limit', 'stoploss_on_exchange': False,
'stoploss_on_exchange_interval': 60}
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_time_in_force: {'entry': 'GTC', 'exit': 'GTC'}
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_currency: USDT
2025-05-04 11:58:33,035 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_amount: 150
2025-05-04 11:58:33,035 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using startup_candle_count: 30
2025-05-04 11:58:33,035 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using unfilledtimeout: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit': 'minutes'}
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_exit_signal: True
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_only: False
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_roi_if_entry_signal: False
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_offset: 0.0
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using disable_dataframe_checks: False
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_buying_expired_candle_after: 0
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using position_adjustment_enable: False
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_entry_position_adjustment: -1
2025-05-04 11:58:33,038 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_open_trades: 4
2025-05-04 11:58:33,038 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 11:58:33,042 - freqtrade.resolvers.iresolver - INFO - Using resolved pairlist StaticPairList from '/freqtrade/freqtrade/plugins/pairlist/StaticPairList.py'...
2025-05-04 11:58:33,048 - freqtrade.optimize.backtesting - INFO - Using fee 0.0800% from config.
2025-05-04 11:58:33,049 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 11:58:33,049 - freqtrade.data.history.history_utils - INFO - Using indicator startup period: 43250 ...
2025-05-04 11:58:33,197 - freqtrade.optimize.backtesting - INFO - Loading data from 2025-01-06 21:30:00 up to 2025-04-15 00:00:00 (98 days).
2025-05-04 11:58:33,197 - freqtrade.optimize.backtesting - INFO - Dataload complete. Calculating indicators
2025-05-04 11:58:33,198 - freqtrade.optimize.backtesting - INFO - Running backtesting for Strategy OKXRegressionStrategy
2025-05-04 11:58:34,759 - matplotlib.font_manager - INFO - generated new fontManager
2025-05-04 11:58:34,966 - freqtrade.resolvers.iresolver - INFO - Using resolved freqaimodel XGBoostRegressor from '/freqtrade/freqtrade/freqai/prediction_models/XGBoostRegressor.py'...
2025-05-04 11:58:34,966 - freqtrade.freqai.data_drawer - INFO - Could not find existing datadrawer, starting from scratch
2025-05-04 11:58:34,967 - freqtrade.freqai.data_drawer - INFO - Could not find existing historic_predictions, starting from scratch
2025-05-04 11:58:34,967 - freqtrade.freqai.freqai_interface - INFO - Set fresh train queue from whitelist. Queue: ['OKB/USDT', 'TON/USDT']
2025-05-04 11:58:34,968 - freqtrade.strategy.hyper - INFO - No params for buy found, using default values.
2025-05-04 11:58:34,968 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_period = 14
2025-05-04 11:58:34,969 - freqtrade.strategy.hyper - INFO - No params for sell found, using default values.
2025-05-04 11:58:34,969 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_multiplier = 2.0
2025-05-04 11:58:34,970 - freqtrade.strategy.hyper - INFO - No params for protection found, using default values.
2025-05-04 11:58:34,975 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 11:58:34,976 - freqtrade.freqai.freqai_interface - INFO - Training OKB/USDT, 1/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 11:58:34,977 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
2025-05-04 12:38:05,848 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_time_in_force: {'entry': 'GTC', 'exit': 'GTC'}
2025-05-04 12:38:05,848 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_currency: USDT
2025-05-04 12:38:05,849 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_amount: 150
2025-05-04 12:38:05,849 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using startup_candle_count: 30
2025-05-04 12:38:05,849 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using unfilledtimeout: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit': 'minutes'}
2025-05-04 12:38:05,850 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_exit_signal: True
2025-05-04 12:38:05,850 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_only: False
2025-05-04 12:38:05,850 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_roi_if_entry_signal: False
2025-05-04 12:38:05,851 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_offset: 0.0
2025-05-04 12:38:05,851 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using disable_dataframe_checks: False
2025-05-04 12:38:05,851 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_buying_expired_candle_after: 0
2025-05-04 12:38:05,852 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using position_adjustment_enable: False
2025-05-04 12:38:05,852 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_entry_position_adjustment: -1
2025-05-04 12:38:05,852 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_open_trades: 4
2025-05-04 12:38:05,853 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 12:38:05,857 - freqtrade.resolvers.iresolver - INFO - Using resolved pairlist StaticPairList from '/freqtrade/freqtrade/plugins/pairlist/StaticPairList.py'...
2025-05-04 12:38:05,862 - freqtrade.optimize.backtesting - INFO - Using fee 0.0800% from config.
2025-05-04 12:38:05,863 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 12:38:05,863 - freqtrade.data.history.history_utils - INFO - Using indicator startup period: 43250 ...
2025-05-04 12:38:06,006 - freqtrade.optimize.backtesting - INFO - Loading data from 2025-01-06 21:30:00 up to 2025-04-15 00:00:00 (98 days).
2025-05-04 12:38:06,007 - freqtrade.optimize.backtesting - INFO - Dataload complete. Calculating indicators
2025-05-04 12:38:06,008 - freqtrade.optimize.backtesting - INFO - Running backtesting for Strategy OKXRegressionStrategy
2025-05-04 12:38:07,597 - matplotlib.font_manager - INFO - generated new fontManager
2025-05-04 12:38:07,798 - freqtrade.resolvers.iresolver - INFO - Using resolved freqaimodel XGBoostRegressor from '/freqtrade/freqtrade/freqai/prediction_models/XGBoostRegressor.py'...
2025-05-04 12:38:07,799 - freqtrade.freqai.data_drawer - INFO - Could not find existing datadrawer, starting from scratch
2025-05-04 12:38:07,799 - freqtrade.freqai.data_drawer - INFO - Could not find existing historic_predictions, starting from scratch
2025-05-04 12:38:07,799 - freqtrade.freqai.freqai_interface - INFO - Set fresh train queue from whitelist. Queue: ['OKB/USDT', 'TON/USDT']
2025-05-04 12:38:07,800 - freqtrade.strategy.hyper - INFO - No params for buy found, using default values.
2025-05-04 12:38:07,801 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_period = 14
2025-05-04 12:38:07,801 - freqtrade.strategy.hyper - INFO - No params for sell found, using default values.
2025-05-04 12:38:07,802 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_multiplier = 2.0
2025-05-04 12:38:07,802 - freqtrade.strategy.hyper - INFO - No params for protection found, using default values.
2025-05-04 12:38:07,808 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 12:38:07,809 - freqtrade.freqai.freqai_interface - INFO - Training OKB/USDT, 1/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 12:38:07,810 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
/freqtrade/user_data/models/test175/backtesting_predictions/cb_okb_1743984000_prediction.feather
2025-05-04 11:58:35,224 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 11:58:35,224 - freqtrade.data.dataprovider - INFO - Loading data for BTC/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
2025-05-04 11:58:35,416 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 11:58:35,417 - freqtrade.data.dataprovider - INFO - Loading data for ETH/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
2025-05-04 12:38:08,058 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 12:38:08,059 - freqtrade.data.dataprovider - INFO - Loading data for BTC/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
2025-05-04 12:38:08,253 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 12:38:08,254 - freqtrade.data.dataprovider - INFO - Loading data for ETH/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
/freqtrade/templates/OKXRegressionStrategy.py:246: FutureWarning: DataFrame.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.
dataframe = dataframe.fillna(method="ffill").fillna(0)
/freqtrade/templates/OKXRegressionStrategy.py:246: FutureWarning: DataFrame.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.
dataframe = dataframe.fillna(method="ffill").fillna(0)
2025-05-04 11:58:41,469 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000
2025-05-04 11:58:41,470 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training OKB/USDT --------------------
2025-05-04 11:58:41,593 - freqtrade.freqai.data_kitchen - INFO - OKB/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 11:58:41,594 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 11:58:41,650 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 11:58:41,702 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 11:58:41,702 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
2025-05-04 12:38:14,204 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000
2025-05-04 12:38:14,205 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training OKB/USDT --------------------
2025-05-04 12:38:14,334 - freqtrade.freqai.data_kitchen - INFO - OKB/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 12:38:14,334 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 12:38:14,391 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 12:38:14,444 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 12:38:14,444 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
[99] validation_0-rmse:0.09103 validation_1-rmse:0.09003
2025-05-04 11:59:48,077 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training OKB/USDT (66.61 secs) --------------------
2025-05-04 11:59:48,295 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000--s_close.html
2025-05-04 11:59:48,295 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 11:59:48,357 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 11:59:48,442 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 11:59:48,443 - freqtrade.freqai.freqai_interface - INFO - Training TON/USDT, 2/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 11:59:48,444 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
2025-05-04 12:41:04,061 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training OKB/USDT (169.86 secs) --------------------
2025-05-04 12:41:04,283 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000--s_close.html
2025-05-04 12:41:04,283 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 12:41:04,345 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 12:41:04,441 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 12:41:04,442 - freqtrade.freqai.freqai_interface - INFO - Training TON/USDT, 2/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 12:41:04,443 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
/freqtrade/user_data/models/test175/backtesting_predictions/cb_ton_1743984000_prediction.feather
/freqtrade/templates/OKXRegressionStrategy.py:246: FutureWarning:
@ -115,20 +115,20 @@ DataFrame.fillna with 'method' is deprecated and will raise in a future version.
DataFrame.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.
2025-05-04 11:59:54,567 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000
2025-05-04 11:59:54,568 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training TON/USDT --------------------
2025-05-04 11:59:54,684 - freqtrade.freqai.data_kitchen - INFO - TON/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 11:59:54,685 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 11:59:54,741 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 11:59:54,791 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 11:59:54,791 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
2025-05-04 12:41:10,679 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000
2025-05-04 12:41:10,680 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training TON/USDT --------------------
2025-05-04 12:41:10,811 - freqtrade.freqai.data_kitchen - INFO - TON/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 12:41:10,812 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 12:41:10,870 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 12:41:10,921 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 12:41:10,922 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
[99] validation_0-rmse:0.12193 validation_1-rmse:0.12248
2025-05-04 12:01:00,801 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training TON/USDT (66.23 secs) --------------------
2025-05-04 12:01:00,836 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000--s_close.html
2025-05-04 12:01:00,836 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 12:01:00,894 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 12:01:00,976 - freqtrade.optimize.backtesting - INFO - Backtesting with data from 2025-04-07 00:00:00 up to 2025-04-15 00:00:00 (8 days).
2025-05-04 12:01:01,168 - freqtrade.misc - INFO - dumping json to "/freqtrade/user_data/backtest_results/backtest-result-2025-05-04_12-01-01.meta.json"
2025-05-04 12:44:08,729 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training TON/USDT (178.05 secs) --------------------
2025-05-04 12:44:08,769 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000--s_close.html
2025-05-04 12:44:08,769 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 12:44:08,831 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 12:44:08,923 - freqtrade.optimize.backtesting - INFO - Backtesting with data from 2025-04-07 00:00:00 up to 2025-04-15 00:00:00 (8 days).
2025-05-04 12:44:09,123 - freqtrade.misc - INFO - dumping json to "/freqtrade/user_data/backtest_results/backtest-result-2025-05-04_12-44-09.meta.json"
Result for strategy OKXRegressionStrategy
BACKTESTING REPORT
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓

View File

@ -1 +0,0 @@
{"OKXRegressionStrategy":{"run_id":"203132ae0c5df1caf5c9fd1791d1721147fe4890","backtest_start_time":1746359913,"timeframe":"3m","timeframe_detail":null,"backtest_start_ts":1743984000,"backtest_end_ts":1744675200}}

View File

@ -0,0 +1 @@
{"OKXRegressionStrategy":{"run_id":"ba6bbc90aba8ad2f31e1ac23d54cca8263b3b93d","backtest_start_time":1746362286,"timeframe":"3m","timeframe_detail":null,"backtest_start_ts":1743984000,"backtest_end_ts":1744675200}}

View File

@ -285,6 +285,29 @@ class OKXRegressionStrategy(IStrategy):
if dataframe is None:
dataframe = DataFrame()
dataframe['ATR_{}'.format(self.atr_period.value)] = ta.ATR(dataframe['high'], dataframe['low'], dataframe['close'], timeperiod=self.atr_period.value)
# 添加 RSI 和布林带指标
dataframe['rsi'] = ta.RSI(dataframe['close'], timeperiod=14)
upper, middle, lower = ta.BBANDS(dataframe['close'], timeperiod=20, nbdevup=2, nbdevdn=2)
dataframe['bb_upper'] = upper
dataframe['bb_middle'] = middle
dataframe['bb_lower'] = lower
# 添加高时间框架数据(例如 1h
dataframe_1h = None # 显式声明
if self.config['timeframe'] != '1h':
dataframe_1h = self.dp.get_analyzed_dataframe(metadata['pair'], '1h')[0]
# 确保 dataframe_1h 存在 'close' 列并且非空
if dataframe_1h is not None and not dataframe_1h.empty and 'close' in dataframe_1h.columns:
dataframe['trend_1h'] = dataframe_1h['close'].rolling(window=20).mean()
else:
# 回退到当前时间框架数据
dataframe['trend_1h'] = dataframe['close'].rolling(window=20).mean()
else:
dataframe['trend_1h'] = dataframe['close'].rolling(window=20).mean()
# 记录 1h 数据框信息
logger.debug(f"dataframe_1h columns: {dataframe_1h.columns.tolist() if dataframe_1h is not None and not dataframe_1h.empty else '未使用'}")
return dataframe
@ -560,3 +583,39 @@ class OKXRegressionStrategy(IStrategy):
except Exception as e:
logger.error(f"FreqAI fit 失败:{str(e)}")
raise
def _callback_stop_loss(self, dataframe: DataFrame, metadata: dict, callback_percent: float = 0.015) -> DataFrame:
"""
回调止损逻辑当价格从近期高点回撤超过指定百分比
并结合 RSI 或布林带信号同时考虑高时间框架趋势
"""
# 计算滚动最高价(过去 N 根K线内的最高点
rolling_high_period = 20
dataframe['rolling_high'] = dataframe['close'].rolling(window=rolling_high_period).max()
# 计算当前价格相对于最近高点的回撤比例
dataframe['callback_ratio'] = (dataframe['close'] - dataframe['rolling_high']) / dataframe['rolling_high']
# 获取 RSI 和布林带信息
rsi_overbought = 70
dataframe['in_overbought'] = dataframe['rsi'] > rsi_overbought
dataframe['below_bb_upper'] = dataframe['close'] < dataframe['bb_upper']
# 获取高时间框架趋势1小时均线
dataframe['trend_up'] = dataframe['close'] > dataframe['trend_1h']
dataframe['trend_down'] = dataframe['close'] < dataframe['trend_1h']
# 回调止损条件:
# 1. 当前价格回撤超过设定的百分比
# 2. RSI 处于超买状态 OR 价格跌破布林带上轨
# 3. 当前处于下降趋势(高时间框架确认)
callback_condition = (
(dataframe['callback_ratio'] <= -callback_percent) &
((dataframe['in_overbought'] | (~dataframe['below_bb_upper']))) &
(dataframe['trend_down'])
)
# 应用回调止损逻辑
dataframe.loc[callback_condition, 'exit_long'] = 1
return dataframe

View File

@ -1,111 +1,111 @@
Creating freqtrade_freqtrade_run ...
Creating freqtrade_freqtrade_run ... done
2025-05-04 11:58:28,633 - freqtrade - INFO - freqtrade docker-2025.4-dev-23e4943b
2025-05-04 11:58:28,848 - numexpr.utils - INFO - NumExpr defaulting to 12 threads.
2025-05-04 11:58:30,260 - freqtrade.configuration.load_config - INFO - Using config: /freqtrade/config_examples/config_freqai.okx.json ...
2025-05-04 11:58:30,262 - freqtrade.loggers - INFO - Enabling colorized output.
2025-05-04 11:58:30,263 - root - INFO - Logfile configured
2025-05-04 11:58:30,263 - freqtrade.loggers - INFO - Verbosity set to 0
2025-05-04 11:58:30,264 - freqtrade.configuration.configuration - INFO - Using additional Strategy lookup path: /freqtrade/templates
2025-05-04 11:58:30,264 - freqtrade.configuration.configuration - INFO - Using max_open_trades: 4 ...
2025-05-04 11:58:30,265 - freqtrade.configuration.configuration - INFO - Parameter --fee detected, setting fee to: 0.0008 ...
2025-05-04 11:58:30,265 - freqtrade.configuration.configuration - INFO - Parameter --timerange detected: 20250407-20250415 ...
2025-05-04 11:58:30,301 - freqtrade.configuration.configuration - INFO - Using user-data directory: /freqtrade/user_data ...
2025-05-04 11:58:30,302 - freqtrade.configuration.configuration - INFO - Using data directory: /freqtrade/user_data/data/okx ...
2025-05-04 11:58:30,302 - freqtrade.configuration.configuration - INFO - Parameter --cache=none detected ...
2025-05-04 11:58:30,303 - freqtrade.configuration.configuration - INFO - Filter trades by timerange: 20250407-20250415
2025-05-04 11:58:30,303 - freqtrade.configuration.configuration - INFO - Using freqaimodel class name: XGBoostRegressor
2025-05-04 11:58:30,304 - freqtrade.exchange.check_exchange - INFO - Checking exchange...
2025-05-04 11:58:30,311 - freqtrade.exchange.check_exchange - INFO - Exchange "okx" is officially supported by the Freqtrade development team.
2025-05-04 11:58:30,311 - freqtrade.configuration.configuration - INFO - Using pairlist from configuration.
2025-05-04 11:58:30,312 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 11:58:30,314 - freqtrade.commands.optimize_commands - INFO - Starting freqtrade in Backtesting mode
2025-05-04 11:58:30,314 - freqtrade.exchange.exchange - INFO - Instance is running with dry_run enabled
2025-05-04 11:58:30,315 - freqtrade.exchange.exchange - INFO - Using CCXT 4.4.77
2025-05-04 11:58:30,315 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}}
2025-05-04 11:58:30,320 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}, 'timeout': 20000}
2025-05-04 11:58:30,326 - freqtrade.exchange.exchange - INFO - Using Exchange "OKX"
2025-05-04 11:58:32,974 - freqtrade.resolvers.exchange_resolver - INFO - Using resolved exchange 'Okx'...
2025-05-04 11:58:33,028 - freqtrade.resolvers.iresolver - INFO - Using resolved strategy OKXRegressionStrategy from '/freqtrade/templates/OKXRegressionStrategy.py'...
2025-05-04 11:58:33,028 - freqtrade.strategy.hyper - INFO - Found no parameter file.
2025-05-04 11:58:33,029 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'timeframe' with value in config file: 3m.
2025-05-04 11:58:33,029 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stoploss' with value in config file: -0.05.
2025-05-04 11:58:33,030 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_currency' with value in config file: USDT.
2025-05-04 11:58:33,030 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_amount' with value in config file: 150.
2025-05-04 11:58:33,030 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'startup_candle_count' with value in config file: 30.
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'unfilledtimeout' with value in config file: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit':
2025-05-04 12:38:01,174 - freqtrade - INFO - freqtrade docker-2025.4-dev-23e4943b
2025-05-04 12:38:01,380 - numexpr.utils - INFO - NumExpr defaulting to 12 threads.
2025-05-04 12:38:02,816 - freqtrade.configuration.load_config - INFO - Using config: /freqtrade/config_examples/config_freqai.okx.json ...
2025-05-04 12:38:02,818 - freqtrade.loggers - INFO - Enabling colorized output.
2025-05-04 12:38:02,818 - root - INFO - Logfile configured
2025-05-04 12:38:02,819 - freqtrade.loggers - INFO - Verbosity set to 0
2025-05-04 12:38:02,819 - freqtrade.configuration.configuration - INFO - Using additional Strategy lookup path: /freqtrade/templates
2025-05-04 12:38:02,819 - freqtrade.configuration.configuration - INFO - Using max_open_trades: 4 ...
2025-05-04 12:38:02,820 - freqtrade.configuration.configuration - INFO - Parameter --fee detected, setting fee to: 0.0008 ...
2025-05-04 12:38:02,820 - freqtrade.configuration.configuration - INFO - Parameter --timerange detected: 20250407-20250415 ...
2025-05-04 12:38:02,846 - freqtrade.configuration.configuration - INFO - Using user-data directory: /freqtrade/user_data ...
2025-05-04 12:38:02,846 - freqtrade.configuration.configuration - INFO - Using data directory: /freqtrade/user_data/data/okx ...
2025-05-04 12:38:02,847 - freqtrade.configuration.configuration - INFO - Parameter --cache=none detected ...
2025-05-04 12:38:02,847 - freqtrade.configuration.configuration - INFO - Filter trades by timerange: 20250407-20250415
2025-05-04 12:38:02,848 - freqtrade.configuration.configuration - INFO - Using freqaimodel class name: XGBoostRegressor
2025-05-04 12:38:02,849 - freqtrade.exchange.check_exchange - INFO - Checking exchange...
2025-05-04 12:38:02,855 - freqtrade.exchange.check_exchange - INFO - Exchange "okx" is officially supported by the Freqtrade development team.
2025-05-04 12:38:02,856 - freqtrade.configuration.configuration - INFO - Using pairlist from configuration.
2025-05-04 12:38:02,856 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 12:38:02,858 - freqtrade.commands.optimize_commands - INFO - Starting freqtrade in Backtesting mode
2025-05-04 12:38:02,859 - freqtrade.exchange.exchange - INFO - Instance is running with dry_run enabled
2025-05-04 12:38:02,859 - freqtrade.exchange.exchange - INFO - Using CCXT 4.4.77
2025-05-04 12:38:02,859 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}}
2025-05-04 12:38:02,864 - freqtrade.exchange.exchange - INFO - Applying additional ccxt config: {'enableRateLimit': True, 'rateLimit': 500, 'options': {'defaultType': 'spot'}, 'timeout': 20000}
2025-05-04 12:38:02,870 - freqtrade.exchange.exchange - INFO - Using Exchange "OKX"
2025-05-04 12:38:05,789 - freqtrade.resolvers.exchange_resolver - INFO - Using resolved exchange 'Okx'...
2025-05-04 12:38:05,841 - freqtrade.resolvers.iresolver - INFO - Using resolved strategy OKXRegressionStrategy from '/freqtrade/templates/OKXRegressionStrategy.py'...
2025-05-04 12:38:05,842 - freqtrade.strategy.hyper - INFO - Found no parameter file.
2025-05-04 12:38:05,842 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'timeframe' with value in config file: 3m.
2025-05-04 12:38:05,843 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stoploss' with value in config file: -0.05.
2025-05-04 12:38:05,843 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_currency' with value in config file: USDT.
2025-05-04 12:38:05,843 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'stake_amount' with value in config file: 150.
2025-05-04 12:38:05,844 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'startup_candle_count' with value in config file: 30.
2025-05-04 12:38:05,844 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'unfilledtimeout' with value in config file: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit':
'minutes'}.
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'max_open_trades' with value in config file: 4.
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using minimal_roi: {}
2025-05-04 11:58:33,031 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using timeframe: 3m
2025-05-04 11:58:33,032 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stoploss: -0.05
2025-05-04 11:58:33,032 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop: True
2025-05-04 11:58:33,032 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive: 0.01
2025-05-04 11:58:33,033 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive_offset: 0.0
2025-05-04 11:58:33,033 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_only_offset_is_reached: False
2025-05-04 11:58:33,033 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_custom_stoploss: False
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using process_only_new_candles: True
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_types: {'entry': 'limit', 'exit': 'limit', 'stoploss': 'limit', 'stoploss_on_exchange': False,
2025-05-04 12:38:05,844 - freqtrade.resolvers.strategy_resolver - INFO - Override strategy 'max_open_trades' with value in config file: 4.
2025-05-04 12:38:05,845 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using minimal_roi: {}
2025-05-04 12:38:05,845 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using timeframe: 3m
2025-05-04 12:38:05,845 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stoploss: -0.05
2025-05-04 12:38:05,846 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop: True
2025-05-04 12:38:05,846 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive: 0.01
2025-05-04 12:38:05,846 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_stop_positive_offset: 0.0
2025-05-04 12:38:05,847 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using trailing_only_offset_is_reached: False
2025-05-04 12:38:05,847 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_custom_stoploss: False
2025-05-04 12:38:05,847 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using process_only_new_candles: True
2025-05-04 12:38:05,848 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_types: {'entry': 'limit', 'exit': 'limit', 'stoploss': 'limit', 'stoploss_on_exchange': False,
'stoploss_on_exchange_interval': 60}
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_time_in_force: {'entry': 'GTC', 'exit': 'GTC'}
2025-05-04 11:58:33,034 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_currency: USDT
2025-05-04 11:58:33,035 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_amount: 150
2025-05-04 11:58:33,035 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using startup_candle_count: 30
2025-05-04 11:58:33,035 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using unfilledtimeout: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit': 'minutes'}
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_exit_signal: True
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_only: False
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_roi_if_entry_signal: False
2025-05-04 11:58:33,036 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_offset: 0.0
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using disable_dataframe_checks: False
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_buying_expired_candle_after: 0
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using position_adjustment_enable: False
2025-05-04 11:58:33,037 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_entry_position_adjustment: -1
2025-05-04 11:58:33,038 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_open_trades: 4
2025-05-04 11:58:33,038 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 11:58:33,042 - freqtrade.resolvers.iresolver - INFO - Using resolved pairlist StaticPairList from '/freqtrade/freqtrade/plugins/pairlist/StaticPairList.py'...
2025-05-04 11:58:33,048 - freqtrade.optimize.backtesting - INFO - Using fee 0.0800% from config.
2025-05-04 11:58:33,049 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 11:58:33,049 - freqtrade.data.history.history_utils - INFO - Using indicator startup period: 43250 ...
2025-05-04 11:58:33,197 - freqtrade.optimize.backtesting - INFO - Loading data from 2025-01-06 21:30:00 up to 2025-04-15 00:00:00 (98 days).
2025-05-04 11:58:33,197 - freqtrade.optimize.backtesting - INFO - Dataload complete. Calculating indicators
2025-05-04 11:58:33,198 - freqtrade.optimize.backtesting - INFO - Running backtesting for Strategy OKXRegressionStrategy
2025-05-04 11:58:34,759 - matplotlib.font_manager - INFO - generated new fontManager
2025-05-04 11:58:34,966 - freqtrade.resolvers.iresolver - INFO - Using resolved freqaimodel XGBoostRegressor from '/freqtrade/freqtrade/freqai/prediction_models/XGBoostRegressor.py'...
2025-05-04 11:58:34,966 - freqtrade.freqai.data_drawer - INFO - Could not find existing datadrawer, starting from scratch
2025-05-04 11:58:34,967 - freqtrade.freqai.data_drawer - INFO - Could not find existing historic_predictions, starting from scratch
2025-05-04 11:58:34,967 - freqtrade.freqai.freqai_interface - INFO - Set fresh train queue from whitelist. Queue: ['OKB/USDT', 'TON/USDT']
2025-05-04 11:58:34,968 - freqtrade.strategy.hyper - INFO - No params for buy found, using default values.
2025-05-04 11:58:34,968 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_period = 14
2025-05-04 11:58:34,969 - freqtrade.strategy.hyper - INFO - No params for sell found, using default values.
2025-05-04 11:58:34,969 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_multiplier = 2.0
2025-05-04 11:58:34,970 - freqtrade.strategy.hyper - INFO - No params for protection found, using default values.
2025-05-04 11:58:34,975 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 11:58:34,976 - freqtrade.freqai.freqai_interface - INFO - Training OKB/USDT, 1/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 11:58:34,977 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
2025-05-04 12:38:05,848 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using order_time_in_force: {'entry': 'GTC', 'exit': 'GTC'}
2025-05-04 12:38:05,848 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_currency: USDT
2025-05-04 12:38:05,849 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using stake_amount: 150
2025-05-04 12:38:05,849 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using startup_candle_count: 30
2025-05-04 12:38:05,849 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using unfilledtimeout: {'entry': 5, 'exit': 15, 'exit_timeout_count': 0, 'unit': 'minutes'}
2025-05-04 12:38:05,850 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using use_exit_signal: True
2025-05-04 12:38:05,850 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_only: False
2025-05-04 12:38:05,850 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_roi_if_entry_signal: False
2025-05-04 12:38:05,851 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using exit_profit_offset: 0.0
2025-05-04 12:38:05,851 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using disable_dataframe_checks: False
2025-05-04 12:38:05,851 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using ignore_buying_expired_candle_after: 0
2025-05-04 12:38:05,852 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using position_adjustment_enable: False
2025-05-04 12:38:05,852 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_entry_position_adjustment: -1
2025-05-04 12:38:05,852 - freqtrade.resolvers.strategy_resolver - INFO - Strategy using max_open_trades: 4
2025-05-04 12:38:05,853 - freqtrade.configuration.config_validation - INFO - Validating configuration ...
2025-05-04 12:38:05,857 - freqtrade.resolvers.iresolver - INFO - Using resolved pairlist StaticPairList from '/freqtrade/freqtrade/plugins/pairlist/StaticPairList.py'...
2025-05-04 12:38:05,862 - freqtrade.optimize.backtesting - INFO - Using fee 0.0800% from config.
2025-05-04 12:38:05,863 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 12:38:05,863 - freqtrade.data.history.history_utils - INFO - Using indicator startup period: 43250 ...
2025-05-04 12:38:06,006 - freqtrade.optimize.backtesting - INFO - Loading data from 2025-01-06 21:30:00 up to 2025-04-15 00:00:00 (98 days).
2025-05-04 12:38:06,007 - freqtrade.optimize.backtesting - INFO - Dataload complete. Calculating indicators
2025-05-04 12:38:06,008 - freqtrade.optimize.backtesting - INFO - Running backtesting for Strategy OKXRegressionStrategy
2025-05-04 12:38:07,597 - matplotlib.font_manager - INFO - generated new fontManager
2025-05-04 12:38:07,798 - freqtrade.resolvers.iresolver - INFO - Using resolved freqaimodel XGBoostRegressor from '/freqtrade/freqtrade/freqai/prediction_models/XGBoostRegressor.py'...
2025-05-04 12:38:07,799 - freqtrade.freqai.data_drawer - INFO - Could not find existing datadrawer, starting from scratch
2025-05-04 12:38:07,799 - freqtrade.freqai.data_drawer - INFO - Could not find existing historic_predictions, starting from scratch
2025-05-04 12:38:07,799 - freqtrade.freqai.freqai_interface - INFO - Set fresh train queue from whitelist. Queue: ['OKB/USDT', 'TON/USDT']
2025-05-04 12:38:07,800 - freqtrade.strategy.hyper - INFO - No params for buy found, using default values.
2025-05-04 12:38:07,801 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_period = 14
2025-05-04 12:38:07,801 - freqtrade.strategy.hyper - INFO - No params for sell found, using default values.
2025-05-04 12:38:07,802 - freqtrade.strategy.hyper - INFO - Strategy Parameter(default): atr_multiplier = 2.0
2025-05-04 12:38:07,802 - freqtrade.strategy.hyper - INFO - No params for protection found, using default values.
2025-05-04 12:38:07,808 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 12:38:07,809 - freqtrade.freqai.freqai_interface - INFO - Training OKB/USDT, 1/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 12:38:07,810 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
/freqtrade/user_data/models/test175/backtesting_predictions/cb_okb_1743984000_prediction.feather
2025-05-04 11:58:35,224 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 11:58:35,224 - freqtrade.data.dataprovider - INFO - Loading data for BTC/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
2025-05-04 11:58:35,416 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 11:58:35,417 - freqtrade.data.dataprovider - INFO - Loading data for ETH/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
2025-05-04 12:38:08,058 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 12:38:08,059 - freqtrade.data.dataprovider - INFO - Loading data for BTC/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
2025-05-04 12:38:08,253 - freqtrade.data.dataprovider - INFO - Increasing startup_candle_count for freqai on 3m to 43250
2025-05-04 12:38:08,254 - freqtrade.data.dataprovider - INFO - Loading data for ETH/USDT 3m from 2025-01-06 21:30:00 to 2025-04-15 00:00:00
/freqtrade/templates/OKXRegressionStrategy.py:246: FutureWarning: DataFrame.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.
dataframe = dataframe.fillna(method="ffill").fillna(0)
/freqtrade/templates/OKXRegressionStrategy.py:246: FutureWarning: DataFrame.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.
dataframe = dataframe.fillna(method="ffill").fillna(0)
2025-05-04 11:58:41,469 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000
2025-05-04 11:58:41,470 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training OKB/USDT --------------------
2025-05-04 11:58:41,593 - freqtrade.freqai.data_kitchen - INFO - OKB/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 11:58:41,594 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 11:58:41,650 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 11:58:41,702 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 11:58:41,702 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
2025-05-04 12:38:14,204 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000
2025-05-04 12:38:14,205 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training OKB/USDT --------------------
2025-05-04 12:38:14,334 - freqtrade.freqai.data_kitchen - INFO - OKB/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 12:38:14,334 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 12:38:14,391 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 12:38:14,444 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 12:38:14,444 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
[99] validation_0-rmse:0.09103 validation_1-rmse:0.09003
2025-05-04 11:59:48,077 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training OKB/USDT (66.61 secs) --------------------
2025-05-04 11:59:48,295 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000--s_close.html
2025-05-04 11:59:48,295 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 11:59:48,357 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 11:59:48,442 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 11:59:48,443 - freqtrade.freqai.freqai_interface - INFO - Training TON/USDT, 2/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 11:59:48,444 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
2025-05-04 12:41:04,061 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training OKB/USDT (169.86 secs) --------------------
2025-05-04 12:41:04,283 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-OKB_1743984000/cb_okb_1743984000--s_close.html
2025-05-04 12:41:04,283 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 12:41:04,345 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 12:41:04,441 - freqtrade.freqai.freqai_interface - INFO - Training 1 timeranges
2025-05-04 12:41:04,442 - freqtrade.freqai.freqai_interface - INFO - Training TON/USDT, 2/2 pairs from 2025-01-07 00:00:00 to 2025-04-07 00:00:00, 1/1 trains
2025-05-04 12:41:04,443 - freqtrade.freqai.data_kitchen - INFO - Could not find backtesting prediction file at
/freqtrade/user_data/models/test175/backtesting_predictions/cb_ton_1743984000_prediction.feather
/freqtrade/templates/OKXRegressionStrategy.py:246: FutureWarning:
@ -115,20 +115,20 @@ DataFrame.fillna with 'method' is deprecated and will raise in a future version.
DataFrame.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.
2025-05-04 11:59:54,567 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000
2025-05-04 11:59:54,568 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training TON/USDT --------------------
2025-05-04 11:59:54,684 - freqtrade.freqai.data_kitchen - INFO - TON/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 11:59:54,685 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 11:59:54,741 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 11:59:54,791 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 11:59:54,791 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
2025-05-04 12:41:10,679 - freqtrade.freqai.freqai_interface - INFO - Could not find model at /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000
2025-05-04 12:41:10,680 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Starting training TON/USDT --------------------
2025-05-04 12:41:10,811 - freqtrade.freqai.data_kitchen - INFO - TON/USDT: dropped 0 training points due to NaNs in populated dataset 43200.
2025-05-04 12:41:10,812 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Training on data from 2025-01-07 to 2025-04-06 --------------------
2025-05-04 12:41:10,870 - datasieve.pipeline - INFO - VarianceThreshold will remove 1 features from the dataset.on transform. ['%-hour_of_day']
2025-05-04 12:41:10,921 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 181 features
2025-05-04 12:41:10,922 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - Training model on 34560 data points
[99] validation_0-rmse:0.12193 validation_1-rmse:0.12248
2025-05-04 12:01:00,801 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training TON/USDT (66.23 secs) --------------------
2025-05-04 12:01:00,836 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000--s_close.html
2025-05-04 12:01:00,836 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 12:01:00,894 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 12:01:00,976 - freqtrade.optimize.backtesting - INFO - Backtesting with data from 2025-04-07 00:00:00 up to 2025-04-15 00:00:00 (8 days).
2025-05-04 12:01:01,168 - freqtrade.misc - INFO - dumping json to "/freqtrade/user_data/backtest_results/backtest-result-2025-05-04_12-01-01.meta.json"
2025-05-04 12:44:08,729 - freqtrade.freqai.base_models.BaseRegressionModel - INFO - -------------------- Done training TON/USDT (178.05 secs) --------------------
2025-05-04 12:44:08,769 - freqtrade.plot.plotting - INFO - Stored plot as /freqtrade/user_data/models/test175/sub-train-TON_1743984000/cb_ton_1743984000--s_close.html
2025-05-04 12:44:08,769 - freqtrade.freqai.freqai_interface - INFO - Saving metadata to disk.
2025-05-04 12:44:08,831 - datasieve.pipeline - WARNING - Could not find step di in pipeline, returning None
2025-05-04 12:44:08,923 - freqtrade.optimize.backtesting - INFO - Backtesting with data from 2025-04-07 00:00:00 up to 2025-04-15 00:00:00 (8 days).
2025-05-04 12:44:09,123 - freqtrade.misc - INFO - dumping json to "/freqtrade/user_data/backtest_results/backtest-result-2025-05-04_12-44-09.meta.json"
Result for strategy OKXRegressionStrategy
BACKTESTING REPORT
┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓