Remove btdata from generate_strategy_stats

This commit is contained in:
Matthias 2022-01-07 09:06:29 +01:00
parent 1203d08d1e
commit e540959c27
3 changed files with 7 additions and 7 deletions

View File

@ -76,6 +76,7 @@ class Hyperopt:
self.config = config self.config = config
self.backtesting = Backtesting(self.config) self.backtesting = Backtesting(self.config)
self.pairlist = self.backtesting.pairlists.whitelist
if not self.config.get('hyperopt'): if not self.config.get('hyperopt'):
self.custom_hyperopt = HyperOptAuto(self.config) self.custom_hyperopt = HyperOptAuto(self.config)
@ -332,7 +333,7 @@ class Hyperopt:
params_details = self._get_params_details(params_dict) params_details = self._get_params_details(params_dict)
strat_stats = generate_strategy_stats( strat_stats = generate_strategy_stats(
processed, self.backtesting.strategy.get_strategy_name(), self.pairlist, self.backtesting.strategy.get_strategy_name(),
backtesting_results, min_date, max_date, market_change=0 backtesting_results, min_date, max_date, market_change=0
) )
results_explanation = HyperoptTools.format_results_explanation_string( results_explanation = HyperoptTools.format_results_explanation_string(

View File

@ -345,14 +345,14 @@ def generate_daily_stats(results: DataFrame) -> Dict[str, Any]:
} }
def generate_strategy_stats(btdata: Dict[str, DataFrame], def generate_strategy_stats(pairlist: List[str],
strategy: str, strategy: str,
content: Dict[str, Any], content: Dict[str, Any],
min_date: datetime, max_date: datetime, min_date: datetime, max_date: datetime,
market_change: float market_change: float
) -> Dict[str, Any]: ) -> Dict[str, Any]:
""" """
:param btdata: Backtest data :param pairlist: List of pairs to backtest
:param strategy: Strategy name :param strategy: Strategy name
:param content: Backtest result data in the format: :param content: Backtest result data in the format:
{'results: results, 'config: config}}. {'results: results, 'config: config}}.
@ -365,7 +365,6 @@ def generate_strategy_stats(btdata: Dict[str, DataFrame],
if not isinstance(results, DataFrame): if not isinstance(results, DataFrame):
return {} return {}
config = content['config'] config = content['config']
pairlist = list(btdata.keys())
max_open_trades = min(config['max_open_trades'], len(pairlist)) max_open_trades = min(config['max_open_trades'], len(pairlist))
starting_balance = config['dry_run_wallet'] starting_balance = config['dry_run_wallet']
stake_currency = config['stake_currency'] stake_currency = config['stake_currency']
@ -512,9 +511,9 @@ def generate_backtest_stats(btdata: Dict[str, DataFrame],
""" """
result: Dict[str, Any] = {'strategy': {}} result: Dict[str, Any] = {'strategy': {}}
market_change = calculate_market_change(btdata, 'close') market_change = calculate_market_change(btdata, 'close')
pairlist = list(btdata.keys())
for strategy, content in all_results.items(): for strategy, content in all_results.items():
strat_stats = generate_strategy_stats(btdata, strategy, content, strat_stats = generate_strategy_stats(pairlist, strategy, content,
min_date, max_date, market_change=market_change) min_date, max_date, market_change=market_change)
result['strategy'][strategy] = strat_stats result['strategy'][strategy] = strat_stats

View File

@ -368,7 +368,7 @@ def test_hyperopt_format_results(hyperopt):
'backtest_start_time': 1619718665, 'backtest_start_time': 1619718665,
'backtest_end_time': 1619718665, 'backtest_end_time': 1619718665,
} }
results_metrics = generate_strategy_stats({'XRP/BTC': None}, '', bt_result, results_metrics = generate_strategy_stats(['XRP/BTC'], '', bt_result,
Arrow(2017, 11, 14, 19, 32, 00), Arrow(2017, 11, 14, 19, 32, 00),
Arrow(2017, 12, 14, 19, 32, 00), market_change=0) Arrow(2017, 12, 14, 19, 32, 00), market_change=0)