From 83cdf76636e05c5c198ac4914c028dd2eba32d1c Mon Sep 17 00:00:00 2001 From: Matthias Date: Wed, 23 Apr 2025 19:37:54 +0200 Subject: [PATCH] chore: simplify import/exports --- .../optimize/hyperopt/hyperopt_interface.py | 4 +-- .../optimize/hyperopt/hyperopt_optimizer.py | 4 +-- freqtrade/optimize/space/__init__.py | 27 +++++++++++++++---- freqtrade/strategy/parameters.py | 4 +-- tests/optimize/test_hyperopt.py | 3 +-- 5 files changed, 29 insertions(+), 13 deletions(-) diff --git a/freqtrade/optimize/hyperopt/hyperopt_interface.py b/freqtrade/optimize/hyperopt/hyperopt_interface.py index c09c956ef..093b9225f 100644 --- a/freqtrade/optimize/hyperopt/hyperopt_interface.py +++ b/freqtrade/optimize/hyperopt/hyperopt_interface.py @@ -13,9 +13,9 @@ from optuna.samplers import BaseSampler from freqtrade.constants import Config from freqtrade.exchange import timeframe_to_minutes from freqtrade.misc import round_dict -from freqtrade.optimize.space import SKDecimal -from freqtrade.optimize.space.optunaspaces import ( +from freqtrade.optimize.space import ( DimensionProtocol, + SKDecimal, ft_CategoricalDistribution, ft_IntDistribution, ) diff --git a/freqtrade/optimize/hyperopt/hyperopt_optimizer.py b/freqtrade/optimize/hyperopt/hyperopt_optimizer.py index 3105d5f1c..e3fe1369d 100644 --- a/freqtrade/optimize/hyperopt/hyperopt_optimizer.py +++ b/freqtrade/optimize/hyperopt/hyperopt_optimizer.py @@ -41,9 +41,9 @@ with warnings.catch_warnings(): # warnings.filterwarnings("ignore", category=ExperimentalWarning) import optuna - from freqtrade.optimize.space.decimalspace import SKDecimal - from freqtrade.optimize.space.optunaspaces import ( + from freqtrade.optimize.space import ( DimensionProtocol, + SKDecimal, ft_CategoricalDistribution, ft_FloatDistribution, ft_IntDistribution, diff --git a/freqtrade/optimize/space/__init__.py b/freqtrade/optimize/space/__init__.py index 0a16bf8af..77552b9f2 100644 --- a/freqtrade/optimize/space/__init__.py +++ b/freqtrade/optimize/space/__init__.py @@ -1,5 +1,22 @@ -from .decimalspace import SKDecimal # noqa: F401 -from .optunaspaces import DimensionProtocol as Dimension # noqa: F401 -from .optunaspaces import ft_CategoricalDistribution as Categorical # noqa: F401 -from .optunaspaces import ft_FloatDistribution as Real # noqa: F401 -from .optunaspaces import ft_IntDistribution as Integer # noqa: F401 +from .decimalspace import SKDecimal +from .optunaspaces import ( + DimensionProtocol, + ft_CategoricalDistribution, + ft_FloatDistribution, + ft_IntDistribution, +) + + +# Alias for the distribution classes +Dimension = DimensionProtocol +Categorical = ft_CategoricalDistribution +Integer = ft_IntDistribution +Real = ft_FloatDistribution + +__all__ = [ + "Categorical", + "Dimension", + "Integer", + "Real", + "SKDecimal", +] diff --git a/freqtrade/strategy/parameters.py b/freqtrade/strategy/parameters.py index f738ca526..31e1d075d 100644 --- a/freqtrade/strategy/parameters.py +++ b/freqtrade/strategy/parameters.py @@ -14,8 +14,8 @@ from freqtrade.optimize.hyperopt_tools import HyperoptStateContainer with suppress(ImportError): - from freqtrade.optimize.space import SKDecimal - from freqtrade.optimize.space.optunaspaces import ( + from freqtrade.optimize.space import ( + SKDecimal, ft_CategoricalDistribution, ft_FloatDistribution, ft_IntDistribution, diff --git a/tests/optimize/test_hyperopt.py b/tests/optimize/test_hyperopt.py index 83ce63c6f..c1497f2b2 100644 --- a/tests/optimize/test_hyperopt.py +++ b/tests/optimize/test_hyperopt.py @@ -16,8 +16,7 @@ from freqtrade.optimize.hyperopt import Hyperopt from freqtrade.optimize.hyperopt.hyperopt_auto import HyperOptAuto from freqtrade.optimize.hyperopt_tools import HyperoptTools from freqtrade.optimize.optimize_reports import generate_strategy_stats -from freqtrade.optimize.space import SKDecimal -from freqtrade.optimize.space.optunaspaces import ft_IntDistribution +from freqtrade.optimize.space import SKDecimal, ft_IntDistribution from freqtrade.strategy import IntParameter from freqtrade.util import dt_utc from tests.conftest import (