From c32f8e972a6eaa3f2dd27712bc5cc1dcfb6ce60f Mon Sep 17 00:00:00 2001 From: viotemp1 Date: Mon, 28 Apr 2025 18:50:09 +0300 Subject: [PATCH] move delayed and wrap_non_picklable_objects from hyperopt to hyperopt_optimizer --- freqtrade/optimize/hyperopt/hyperopt.py | 6 ++---- freqtrade/optimize/hyperopt/hyperopt_optimizer.py | 4 +++- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/freqtrade/optimize/hyperopt/hyperopt.py b/freqtrade/optimize/hyperopt/hyperopt.py index 70a85b30b..ed404e923 100644 --- a/freqtrade/optimize/hyperopt/hyperopt.py +++ b/freqtrade/optimize/hyperopt/hyperopt.py @@ -14,7 +14,7 @@ from pathlib import Path from typing import Any import rapidjson -from joblib import Parallel, cpu_count, delayed, wrap_non_picklable_objects +from joblib import Parallel, cpu_count from freqtrade.constants import FTHYPT_FILEVERSION, LAST_BT_RESULT_FN, Config from freqtrade.enums import HyperoptState @@ -160,9 +160,7 @@ class Hyperopt: return self.hyperopter.generate_optimizer(*args, **kwargs) - return parallel( - delayed(wrap_non_picklable_objects(optimizer_wrapper))(v) for v in asked - ) + return parallel(optimizer_wrapper(v) for v in asked) def _set_random_state(self, random_state: int | None) -> int: return random_state or random.randint(1, 2**16 - 1) # noqa: S311 diff --git a/freqtrade/optimize/hyperopt/hyperopt_optimizer.py b/freqtrade/optimize/hyperopt/hyperopt_optimizer.py index 53aa8f88d..b04478841 100644 --- a/freqtrade/optimize/hyperopt/hyperopt_optimizer.py +++ b/freqtrade/optimize/hyperopt/hyperopt_optimizer.py @@ -11,7 +11,7 @@ from pathlib import Path from typing import Any import optuna -from joblib import dump, load +from joblib import dump, load, delayed, wrap_non_picklable_objects from joblib.externals import cloudpickle from optuna.exceptions import ExperimentalWarning from pandas import DataFrame @@ -260,6 +260,8 @@ class HyperOptimizer: # noinspection PyProtectedMember attr.value = params_dict[attr_name] + @delayed + @wrap_non_picklable_objects def generate_optimizer(self, raw_params: dict[str, Any]) -> dict[str, Any]: """ Used Optimize function.