MOre tests for ParameterHyperopt
This commit is contained in:
parent
929f329607
commit
6954a1e029
@ -14,6 +14,7 @@ from tests.conftest import patch_exchange
|
|||||||
def hyperopt_conf(default_conf):
|
def hyperopt_conf(default_conf):
|
||||||
hyperconf = deepcopy(default_conf)
|
hyperconf = deepcopy(default_conf)
|
||||||
hyperconf.update({
|
hyperconf.update({
|
||||||
|
'datadir': Path(default_conf['datadir']),
|
||||||
'hyperopt': 'DefaultHyperOpt',
|
'hyperopt': 'DefaultHyperOpt',
|
||||||
'hyperopt_loss': 'ShortTradeDurHyperOptLoss',
|
'hyperopt_loss': 'ShortTradeDurHyperOptLoss',
|
||||||
'hyperopt_path': str(Path(__file__).parent / 'hyperopts'),
|
'hyperopt_path': str(Path(__file__).parent / 'hyperopts'),
|
||||||
@ -21,6 +22,7 @@ def hyperopt_conf(default_conf):
|
|||||||
'timerange': None,
|
'timerange': None,
|
||||||
'spaces': ['default'],
|
'spaces': ['default'],
|
||||||
'hyperopt_jobs': 1,
|
'hyperopt_jobs': 1,
|
||||||
|
'hyperopt_min_trades': 1,
|
||||||
})
|
})
|
||||||
return hyperconf
|
return hyperconf
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@ from freqtrade.commands.optimize_commands import setup_optimize_configuration, s
|
|||||||
from freqtrade.data.history import load_data
|
from freqtrade.data.history import load_data
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.optimize.hyperopt import Hyperopt
|
from freqtrade.optimize.hyperopt import Hyperopt
|
||||||
|
from freqtrade.optimize.hyperopt_auto import HyperOptAuto
|
||||||
from freqtrade.optimize.hyperopt_tools import HyperoptTools
|
from freqtrade.optimize.hyperopt_tools import HyperoptTools
|
||||||
from freqtrade.resolvers.hyperopt_resolver import HyperOptResolver
|
from freqtrade.resolvers.hyperopt_resolver import HyperOptResolver
|
||||||
from freqtrade.state import RunMode
|
from freqtrade.state import RunMode
|
||||||
@ -1089,3 +1090,19 @@ def test_print_epoch_details(capsys):
|
|||||||
assert '# ROI table:' in captured.out
|
assert '# ROI table:' in captured.out
|
||||||
assert re.search(r'^\s+minimal_roi = \{$', captured.out, re.MULTILINE)
|
assert re.search(r'^\s+minimal_roi = \{$', captured.out, re.MULTILINE)
|
||||||
assert re.search(r'^\s+\"90\"\:\s0.14,\s*$', captured.out, re.MULTILINE)
|
assert re.search(r'^\s+\"90\"\:\s0.14,\s*$', captured.out, re.MULTILINE)
|
||||||
|
|
||||||
|
|
||||||
|
def test_in_strategy_auto_hyperopt(mocker, hyperopt_conf, tmpdir) -> None:
|
||||||
|
# mocker.patch('freqtrade.optimize.hyperopt.dump', MagicMock())
|
||||||
|
# mocker.patch('freqtrade.optimize.hyperopt.file_dump_json')
|
||||||
|
(Path(tmpdir) / 'hyperopt_results').mkdir(parents=True)
|
||||||
|
# No hyperopt needed
|
||||||
|
del hyperopt_conf['hyperopt']
|
||||||
|
hyperopt_conf.update({
|
||||||
|
'strategy': 'HyperoptableStrategy',
|
||||||
|
'user_data_dir': Path(tmpdir),
|
||||||
|
})
|
||||||
|
hyperopt = Hyperopt(hyperopt_conf)
|
||||||
|
assert isinstance(hyperopt.custom_hyperopt, HyperOptAuto)
|
||||||
|
|
||||||
|
hyperopt.start()
|
||||||
|
@ -587,7 +587,8 @@ def test_hyperopt_parameters():
|
|||||||
assert isinstance(fltpar.get_space(''), Real)
|
assert isinstance(fltpar.get_space(''), Real)
|
||||||
assert fltpar.value == 1
|
assert fltpar.value == 1
|
||||||
|
|
||||||
catpar = CategoricalParameter(['buy_rsi', 'buy_macd', 'buy_none'], default='buy_macd', space='buy')
|
catpar = CategoricalParameter(['buy_rsi', 'buy_macd', 'buy_none'],
|
||||||
|
default='buy_macd', space='buy')
|
||||||
assert isinstance(catpar.get_space(''), Categorical)
|
assert isinstance(catpar.get_space(''), Categorical)
|
||||||
assert catpar.value == 'buy_macd'
|
assert catpar.value == 'buy_macd'
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user