Ensure base tf included in include_timeframes

This commit is contained in:
Emre
2022-12-05 16:16:17 +03:00
parent e734b39929
commit 730fba956b
3 changed files with 39 additions and 2 deletions

View File

@@ -233,3 +233,23 @@ def get_timerange_backtest_live_models(config: Config) -> str:
dd = FreqaiDataDrawer(models_path, config)
timerange = dd.get_timerange_from_live_historic_predictions()
return timerange.timerange_str
def ensure_base_tf_in_include_timeframes(config: Config) -> Config:
"""
Ensure that the base timeframe is included in the include_timeframes list
:param config: Configuration dictionary
:return config: Configuration dictionary
"""
feature_parameters = config.get('freqai', {}).get('feature_parameters', {})
include_timeframes = feature_parameters.get('include_timeframes', [])
if config['timeframe'] in include_timeframes:
return config
include_timeframes = [config['timeframe']] + include_timeframes
config.get('freqai', {}).get('feature_parameters', {}) \
.update({**feature_parameters, 'include_timeframes': include_timeframes})
return config

View File

@@ -148,9 +148,11 @@ class IStrategy(ABC, HyperStrategyMixin):
def load_freqAI_model(self) -> None:
if self.config.get('freqai', {}).get('enabled', False):
# Import here to avoid importing this if freqAI is disabled
from freqtrade.freqai.utils import download_all_data_for_training
from freqtrade.freqai.utils import (download_all_data_for_training,
ensure_base_tf_in_include_timeframes)
from freqtrade.resolvers.freqaimodel_resolver import FreqaiModelResolver
self.freqai = FreqaiModelResolver.load_freqaimodel(self.config)
self.config = ensure_base_tf_in_include_timeframes(self.config)
self.freqai_info = self.config["freqai"]
# download the desired data in dry/live