mirror of
https://github.com/freqtrade/freqtrade.git
synced 2024-11-10 10:21:59 +00:00
adding category list if the category is not from the category
This commit is contained in:
parent
0b7cb2a1a8
commit
03ee3aaf40
|
@ -14,7 +14,6 @@ from freqtrade.exchange.exchange_types import Tickers
|
||||||
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter, SupportsBacktesting
|
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter, SupportsBacktesting
|
||||||
from freqtrade.util.coin_gecko import FtCoinGeckoApi
|
from freqtrade.util.coin_gecko import FtCoinGeckoApi
|
||||||
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
@ -34,11 +33,9 @@ class MarketCapPairList(IPairList):
|
||||||
self._stake_currency = self._config["stake_currency"]
|
self._stake_currency = self._config["stake_currency"]
|
||||||
self._number_assets = self._pairlistconfig["number_assets"]
|
self._number_assets = self._pairlistconfig["number_assets"]
|
||||||
self._max_rank = self._pairlistconfig.get("max_rank", 30)
|
self._max_rank = self._pairlistconfig.get("max_rank", 30)
|
||||||
self._refresh_period = self._pairlistconfig.get(
|
self._refresh_period = self._pairlistconfig.get("refresh_period", 86400)
|
||||||
"refresh_period", 86400)
|
|
||||||
self._category = self._pairlistconfig.get("category", None)
|
self._category = self._pairlistconfig.get("category", None)
|
||||||
self._marketcap_cache: TTLCache = TTLCache(
|
self._marketcap_cache: TTLCache = TTLCache(maxsize=1, ttl=self._refresh_period)
|
||||||
maxsize=1, ttl=self._refresh_period)
|
|
||||||
self._def_candletype = self._config["candle_type_def"]
|
self._def_candletype = self._config["candle_type_def"]
|
||||||
|
|
||||||
_coingecko_config = self._config.get("coingecko", {})
|
_coingecko_config = self._config.get("coingecko", {})
|
||||||
|
@ -48,9 +45,14 @@ class MarketCapPairList(IPairList):
|
||||||
is_demo=_coingecko_config.get("is_demo", True),
|
is_demo=_coingecko_config.get("is_demo", True),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
categories = self._coingecko.get_coins_categories_list()
|
||||||
|
category_ids = [cat['category_id'] for cat in categories]
|
||||||
|
|
||||||
|
if self._category not in category_ids:
|
||||||
|
raise OperationalException(f"category not in coingecko category list you can choose from {category_ids}")
|
||||||
|
|
||||||
if self._max_rank > 250:
|
if self._max_rank > 250:
|
||||||
raise OperationalException(
|
raise OperationalException("This filter only support marketcap rank up to 250.")
|
||||||
"This filter only support marketcap rank up to 250.")
|
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def needstickers(self) -> bool:
|
def needstickers(self) -> bool:
|
||||||
|
|
Loading…
Reference in New Issue
Block a user