Option drop last shifted labels while backtesting

This commit is contained in:
Emre 2022-12-20 16:59:16 +03:00
parent 3012c55ec5
commit f648214ca0
No known key found for this signature in database
GPG Key ID: 0EAD2EE11B666ABA
2 changed files with 6 additions and 0 deletions

View File

@ -548,6 +548,7 @@ CONF_SCHEMA = {
"conv_width": {"type": "integer", "default": 1}, "conv_width": {"type": "integer", "default": 1},
"train_period_days": {"type": "integer", "default": 0}, "train_period_days": {"type": "integer", "default": 0},
"backtest_period_days": {"type": "number", "default": 7}, "backtest_period_days": {"type": "number", "default": 7},
"backtest_drop_shifted_labels": {"type": "boolean", "default": False},
"identifier": {"type": "string", "default": "example"}, "identifier": {"type": "string", "default": "example"},
"feature_parameters": { "feature_parameters": {
"type": "object", "type": "object",

View File

@ -308,6 +308,11 @@ class IFreqaiModel(ABC):
dk.append_predictions(append_df) dk.append_predictions(append_df)
else: else:
dataframe_train = dk.slice_dataframe(tr_train, dataframe) dataframe_train = dk.slice_dataframe(tr_train, dataframe)
if self.freqai_info.get('backtest_drop_shifted_labels', False):
label_period_candles = self.freqai_info.get('feature_parameters', {}) \
.get("label_period_candles", 0)
if label_period_candles > 0:
dataframe_train = dataframe_train.iloc[:-label_period_candles, :]
dataframe_backtest = dk.slice_dataframe(tr_backtest, dataframe) dataframe_backtest = dk.slice_dataframe(tr_backtest, dataframe)
if not self.model_exists(dk): if not self.model_exists(dk):
dk.find_features(dataframe_train) dk.find_features(dataframe_train)