"DI_cutoff": 2,
"&s-minima_threshold": -2,
"&s-maxima_threshold": 2,
- "label_period_candles": 100,
+ // "label_period_candles": 100,
"hp_rmse": -1,
"period_rmse": -1
},
y_test = y_test.tail(test_window)
test_weights = test_weights[-test_window:]
- # FIXME: find a better way to propagate optuna computed params to strategy
- if dk.pair not in self.freqai_info["feature_parameters"]:
- self.freqai_info["feature_parameters"][dk.pair] = {}
- self.freqai_info["feature_parameters"][dk.pair][
- "label_period_candles"
- ] = self.__optuna_period_params[dk.pair].get("label_period_candles")
+ # # FIXME: find a better way to propagate optuna computed params to strategy
+ # if dk.pair not in self.freqai_info["feature_parameters"]:
+ # self.freqai_info["feature_parameters"][dk.pair] = {}
+ # self.freqai_info["feature_parameters"][dk.pair][
+ # "label_period_candles"
+ # ] = self.__optuna_period_params[dk.pair].get("label_period_candles")
model = LGBMRegressor(
objective="regression", metric="rmse", **model_training_parameters
dk.data["extra_returns_per_train"][MINIMA_THRESHOLD_COLUMN] = -2
dk.data["extra_returns_per_train"][MAXIMA_THRESHOLD_COLUMN] = 2
else:
- if self.__optuna_hyperopt:
- label_period_candles = self.__optuna_period_params.get(pair, {}).get(
- "label_period_candles", self.ft_params["label_period_candles"]
- )
- else:
- label_period_candles = self.ft_params["label_period_candles"]
+ # if self.__optuna_hyperopt:
+ # label_period_candles = self.__optuna_period_params.get(pair, {}).get(
+ # "label_period_candles", self.ft_params["label_period_candles"]
+ # )
+ # else:
+ # label_period_candles = self.ft_params["label_period_candles"]
+ label_period_candles = self.ft_params["label_period_candles"]
min_pred, max_pred = self.min_max_pred(
pred_df_full,
num_candles,
dk.data["extra_returns_per_train"]["DI_value_param3"] = f[2]
dk.data["extra_returns_per_train"]["DI_cutoff"] = cutoff
- dk.data["extra_returns_per_train"]["label_period_candles"] = (
- self.__optuna_period_params.get(pair, {}).get(
- "label_period_candles", self.ft_params["label_period_candles"]
- )
- )
+ # dk.data["extra_returns_per_train"]["label_period_candles"] = (
+ # self.__optuna_period_params.get(pair, {}).get(
+ # "label_period_candles", self.ft_params["label_period_candles"]
+ # )
+ # )
dk.data["extra_returns_per_train"]["hp_rmse"] = self.__optuna_hp_rmse.get(
pair, -1
)
y_test,
test_weights,
self.data_split_parameters.get("test_size", TEST_SIZE),
- self.freqai_info.get("fit_live_predictions_candles", 100),
self.__optuna_config.get("candles_step", 100),
model_training_parameters,
),
y_test,
test_weights,
test_size,
- fit_live_predictions_candles,
candles_step,
model_training_parameters,
) -> float:
)
y_pred = model.predict(X_test)
- min_label_period_candles = int(fit_live_predictions_candles / 6)
- max_label_period_candles = int(fit_live_predictions_candles / 2)
- label_period_candles = trial.suggest_int(
- "label_period_candles",
- min_label_period_candles,
- max_label_period_candles,
- )
- y_pred = pd.Series(y_pred)
- min_length = min(len(y_test), len(y_pred))
- remaining_candles = min_length % label_period_candles
- if remaining_candles:
- y_test = y_test.iloc[remaining_candles:]
- y_pred = y_pred.iloc[remaining_candles:]
- indices = range(0, min_length, label_period_candles)
- y_test = [y_test.iloc[i : i + label_period_candles] for i in indices]
- y_pred = [y_pred.iloc[i : i + label_period_candles] for i in indices]
-
error = sklearn.metrics.root_mean_squared_error(y_test, y_pred)
return error
y_test = y_test.tail(test_window)
test_weights = test_weights[-test_window:]
- # FIXME: find a better way to propagate optuna computed params to strategy
- if dk.pair not in self.freqai_info["feature_parameters"]:
- self.freqai_info["feature_parameters"][dk.pair] = {}
- self.freqai_info["feature_parameters"][dk.pair][
- "label_period_candles"
- ] = self.__optuna_period_params[dk.pair].get("label_period_candles")
+ # # FIXME: find a better way to propagate optuna computed params to strategy
+ # if dk.pair not in self.freqai_info["feature_parameters"]:
+ # self.freqai_info["feature_parameters"][dk.pair] = {}
+ # self.freqai_info["feature_parameters"][dk.pair][
+ # "label_period_candles"
+ # ] = self.__optuna_period_params[dk.pair].get("label_period_candles")
model = XGBRegressor(
objective="reg:squarederror",
dk.data["extra_returns_per_train"][MINIMA_THRESHOLD_COLUMN] = -2
dk.data["extra_returns_per_train"][MAXIMA_THRESHOLD_COLUMN] = 2
else:
- if self.__optuna_hyperopt:
- label_period_candles = self.__optuna_period_params.get(pair, {}).get(
- "label_period_candles", self.ft_params["label_period_candles"]
- )
- else:
- label_period_candles = self.ft_params["label_period_candles"]
+ # if self.__optuna_hyperopt:
+ # label_period_candles = self.__optuna_period_params.get(pair, {}).get(
+ # "label_period_candles", self.ft_params["label_period_candles"]
+ # )
+ # else:
+ # label_period_candles = self.ft_params["label_period_candles"]
+ label_period_candles = self.ft_params["label_period_candles"]
min_pred, max_pred = self.min_max_pred(
pred_df_full,
num_candles,
dk.data["extra_returns_per_train"]["DI_value_param3"] = f[2]
dk.data["extra_returns_per_train"]["DI_cutoff"] = cutoff
- dk.data["extra_returns_per_train"]["label_period_candles"] = (
- self.__optuna_period_params.get(pair, {}).get(
- "label_period_candles", self.ft_params["label_period_candles"]
- )
- )
+ # dk.data["extra_returns_per_train"]["label_period_candles"] = (
+ # self.__optuna_period_params.get(pair, {}).get(
+ # "label_period_candles", self.ft_params["label_period_candles"]
+ # )
+ # )
dk.data["extra_returns_per_train"]["hp_rmse"] = self.__optuna_hp_rmse.get(
pair, -1
)
y_test,
test_weights,
self.data_split_parameters.get("test_size", TEST_SIZE),
- self.freqai_info.get("fit_live_predictions_candles", 100),
self.__optuna_config.get("candles_step", 100),
model_training_parameters,
),
y_test,
test_weights,
test_size,
- fit_live_predictions_candles,
candles_step,
model_training_parameters,
) -> float:
)
y_pred = model.predict(X_test)
- min_label_period_candles = int(fit_live_predictions_candles / 6)
- max_label_period_candles = int(fit_live_predictions_candles / 2)
- label_period_candles = trial.suggest_int(
- "label_period_candles",
- min_label_period_candles,
- max_label_period_candles,
- )
- y_pred = pd.Series(y_pred)
- min_length = min(len(y_test), len(y_pred))
- remaining_candles = min_length % label_period_candles
- if remaining_candles:
- y_test = y_test.iloc[remaining_candles:]
- y_pred = y_pred.iloc[remaining_candles:]
- indices = range(0, min_length, label_period_candles)
- y_test = [y_test.iloc[i : i + label_period_candles] for i in indices]
- y_pred = [y_pred.iloc[i : i + label_period_candles] for i in indices]
-
error = sklearn.metrics.root_mean_squared_error(y_test, y_pred)
return error
def set_freqai_targets(self, dataframe, metadata, **kwargs):
pair = str(metadata.get("pair"))
- label_period_candles = (
- self.freqai_info["feature_parameters"]
- .get(pair, {})
- .get(
- "label_period_candles",
- self.freqai_info["feature_parameters"]["label_period_candles"],
- )
- )
+ # label_period_candles = (
+ # self.freqai_info["feature_parameters"]
+ # .get(pair, {})
+ # .get(
+ # "label_period_candles",
+ # self.freqai_info["feature_parameters"]["label_period_candles"],
+ # )
+ # )
+ label_period_candles = self.freqai_info["feature_parameters"]["label_period_candles"]
dataframe[EXTREMA_COLUMN] = 0
min_peaks, _ = find_peaks(
-dataframe["low"].values,