diff --git a/freqtrade/main.py b/freqtrade/main.py index 7a71ca414..60f561c7a 100755 --- a/freqtrade/main.py +++ b/freqtrade/main.py @@ -36,7 +36,7 @@ def refresh_whitelist(whitelist: List[str]) -> List[str]: health = exchange.get_wallet_health() for status in health: pair = '{}_{}'.format(_CONF['stake_currency'], status['Currency']) - if pair not in whitelist or pair in _CONF['exchange'].get('pair_blacklist',[]): + if pair not in whitelist or pair in _CONF['exchange'].get('pair_blacklist', []): continue if status['IsActive']: sanitized_whitelist.append(pair) @@ -47,6 +47,7 @@ def refresh_whitelist(whitelist: List[str]) -> List[str]: ) return sanitized_whitelist + def _process(nb_assets: Optional[int] = 0) -> bool: """ Queries the persistence layer for open trades and handles them, @@ -64,7 +65,8 @@ def _process(nb_assets: Optional[int] = 0) -> bool: ) # Keep only the subsets of pairs wanted (up to nb_assets) - _CONF['exchange']['pair_whitelist'] = sanitized_list[:nb_assets] if nb_assets else sanitized_list + final_list = sanitized_list[:nb_assets] if nb_assets else sanitized_list + _CONF['exchange']['pair_whitelist'] = final_list # Query trades from persistence layer trades = Trade.query.filter(Trade.is_open.is_(True)).all() diff --git a/freqtrade/tests/test_acl_pair.py b/freqtrade/tests/test_acl_pair.py index 33bfa7d0e..a37113ae0 100644 --- a/freqtrade/tests/test_acl_pair.py +++ b/freqtrade/tests/test_acl_pair.py @@ -52,7 +52,6 @@ def test_refresh_whitelist(mocker): print(conf['exchange']['pair_whitelist']) print(refreshedwhitelist) whitelist = ['BTC_ETH', 'BTC_TKN'] - pairslist = conf['exchange']['pair_whitelist'] # Ensure all except those in whitelist are removed assert_list_equal(whitelist, refreshedwhitelist) diff --git a/freqtrade/tests/test_main.py b/freqtrade/tests/test_main.py index a8d8c328c..605ac084b 100644 --- a/freqtrade/tests/test_main.py +++ b/freqtrade/tests/test_main.py @@ -179,6 +179,7 @@ def test_create_trade_no_pairs(default_conf, ticker, mocker): mocker.patch.dict('freqtrade.main._CONF', conf) create_trade(default_conf['stake_amount']) + def test_create_trade_no_pairs_after_blacklist(default_conf, ticker, mocker): mocker.patch.dict('freqtrade.main._CONF', default_conf) mocker.patch('freqtrade.main.get_signal', side_effect=lambda s, t: True)