Move "tickers_needed" check to pairlistmanager to cover all pairlists
This commit is contained in:
parent
39c27cfc37
commit
75f1a123eb
@ -5,7 +5,6 @@ import logging
|
|||||||
from typing import Any, Dict, Optional
|
from typing import Any, Dict, Optional
|
||||||
|
|
||||||
from freqtrade.constants import Config
|
from freqtrade.constants import Config
|
||||||
from freqtrade.exceptions import OperationalException
|
|
||||||
from freqtrade.exchange.types import Ticker
|
from freqtrade.exchange.types import Ticker
|
||||||
from freqtrade.plugins.pairlist.IPairList import IPairList
|
from freqtrade.plugins.pairlist.IPairList import IPairList
|
||||||
|
|
||||||
@ -23,12 +22,6 @@ class SpreadFilter(IPairList):
|
|||||||
self._max_spread_ratio = pairlistconfig.get('max_spread_ratio', 0.005)
|
self._max_spread_ratio = pairlistconfig.get('max_spread_ratio', 0.005)
|
||||||
self._enabled = self._max_spread_ratio != 0
|
self._enabled = self._max_spread_ratio != 0
|
||||||
|
|
||||||
if not self._exchange.exchange_has('fetchTickers'):
|
|
||||||
raise OperationalException(
|
|
||||||
'Exchange does not support fetchTickers, therefore SpreadFilter cannot be used.'
|
|
||||||
'Please edit your config and restart the bot.'
|
|
||||||
)
|
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def needstickers(self) -> bool:
|
def needstickers(self) -> bool:
|
||||||
"""
|
"""
|
||||||
|
@ -46,6 +46,15 @@ class PairListManager(LoggingMixin):
|
|||||||
if not self._pairlist_handlers:
|
if not self._pairlist_handlers:
|
||||||
raise OperationalException("No Pairlist Handlers defined")
|
raise OperationalException("No Pairlist Handlers defined")
|
||||||
|
|
||||||
|
if self._tickers_needed and not self._exchange.exchange_has('fetchTickers'):
|
||||||
|
invalid = ". ".join([p.name for p in self._pairlist_handlers if p.needstickers])
|
||||||
|
|
||||||
|
raise OperationalException(
|
||||||
|
"Exchange does not support fetchTickers, therefore the following pairlists "
|
||||||
|
"cannot be used. Please edit your config and restart the bot.\n"
|
||||||
|
f"{invalid}."
|
||||||
|
)
|
||||||
|
|
||||||
refresh_period = config.get('pairlist_refresh_period', 3600)
|
refresh_period = config.get('pairlist_refresh_period', 3600)
|
||||||
LoggingMixin.__init__(self, logger, refresh_period)
|
LoggingMixin.__init__(self, logger, refresh_period)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user