diff --git a/freqtrade/freqai/data_kitchen.py b/freqtrade/freqai/data_kitchen.py index 400e70fc8..c05900bad 100644 --- a/freqtrade/freqai/data_kitchen.py +++ b/freqtrade/freqai/data_kitchen.py @@ -1,5 +1,6 @@ import copy import logging +import re import shutil from datetime import datetime, timezone from math import cos, sin @@ -881,6 +882,10 @@ class FreqaiDataKitchen: """ column_names = dataframe.columns features = [c for c in column_names if "%" in c] + pca_features = [c for c in column_names if re.search(r"^PC\d+$", c)] + if not features and pca_features: + features = pca_features + if not features: raise OperationalException("Could not find any features!") diff --git a/freqtrade/freqai/freqai_interface.py b/freqtrade/freqai/freqai_interface.py index d9f917338..bf625b2a7 100644 --- a/freqtrade/freqai/freqai_interface.py +++ b/freqtrade/freqai/freqai_interface.py @@ -434,6 +434,10 @@ class IFreqaiModel(ABC): feature_list = dk.data["training_features_list_raw"] else: feature_list = dk.data['training_features_list'] + + if self.ft_params.get('principal_component_analysis', False): + feature_list = dk.data['training_features_list'] + if dk.training_features_list != feature_list: raise OperationalException( "Trying to access pretrained model with `identifier` "