Update pairlists to use *args **kwargs init
This commit is contained in:
@@ -5,11 +5,11 @@ Minimum age (days listed) pair list filter
|
|||||||
import logging
|
import logging
|
||||||
from copy import deepcopy
|
from copy import deepcopy
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
from typing import Any, Dict, List, Optional
|
from typing import Dict, List, Optional
|
||||||
|
|
||||||
from pandas import DataFrame
|
from pandas import DataFrame
|
||||||
|
|
||||||
from freqtrade.constants import Config, ListPairsWithTimeframes
|
from freqtrade.constants import ListPairsWithTimeframes
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
from freqtrade.misc import plural
|
from freqtrade.misc import plural
|
||||||
@@ -21,15 +21,8 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
class AgeFilter(IPairList):
|
class AgeFilter(IPairList):
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
# Checked symbols cache (dictionary of ticker symbol => timestamp)
|
# Checked symbols cache (dictionary of ticker symbol => timestamp)
|
||||||
self._symbolsChecked: Dict[str, int] = {}
|
self._symbolsChecked: Dict[str, int] = {}
|
||||||
|
|||||||
@@ -5,11 +5,10 @@ Provides dynamic pair list based on Market Cap
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from typing import Any, Dict, List
|
from typing import Dict, List
|
||||||
|
|
||||||
from cachetools import TTLCache
|
from cachetools import TTLCache
|
||||||
|
|
||||||
from freqtrade.constants import Config
|
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
||||||
@@ -22,15 +21,8 @@ logger = logging.getLogger(__name__)
|
|||||||
class MarketCapPairList(IPairList):
|
class MarketCapPairList(IPairList):
|
||||||
is_pairlist_generator = True
|
is_pairlist_generator = True
|
||||||
|
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
if "number_assets" not in self._pairlistconfig:
|
if "number_assets" not in self._pairlistconfig:
|
||||||
raise OperationalException(
|
raise OperationalException(
|
||||||
|
|||||||
@@ -3,9 +3,8 @@ Offset pair list filter
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from typing import Any, Dict, List
|
from typing import Dict, List
|
||||||
|
|
||||||
from freqtrade.constants import Config
|
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
||||||
@@ -15,15 +14,8 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
class OffsetFilter(IPairList):
|
class OffsetFilter(IPairList):
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
self._offset = self._pairlistconfig.get("offset", 0)
|
self._offset = self._pairlistconfig.get("offset", 0)
|
||||||
self._number_pairs = self._pairlistconfig.get("number_assets", 0)
|
self._number_pairs = self._pairlistconfig.get("number_assets", 0)
|
||||||
|
|||||||
@@ -3,11 +3,10 @@ Performance pair list filter
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from typing import Any, Dict, List
|
from typing import Dict, List
|
||||||
|
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
|
|
||||||
from freqtrade.constants import Config
|
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
from freqtrade.persistence import Trade
|
from freqtrade.persistence import Trade
|
||||||
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
||||||
@@ -17,15 +16,8 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
class PerformanceFilter(IPairList):
|
class PerformanceFilter(IPairList):
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
self._minutes = self._pairlistconfig.get("minutes", 0)
|
self._minutes = self._pairlistconfig.get("minutes", 0)
|
||||||
self._min_profit = self._pairlistconfig.get("min_profit")
|
self._min_profit = self._pairlistconfig.get("min_profit")
|
||||||
|
|||||||
@@ -3,9 +3,8 @@ Precision pair list filter
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from typing import Any, Dict, Optional
|
from typing import Optional
|
||||||
|
|
||||||
from freqtrade.constants import Config
|
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange import ROUND_UP
|
from freqtrade.exchange import ROUND_UP
|
||||||
from freqtrade.exchange.types import Ticker
|
from freqtrade.exchange.types import Ticker
|
||||||
@@ -16,15 +15,8 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
class PrecisionFilter(IPairList):
|
class PrecisionFilter(IPairList):
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
if "stoploss" not in self._config:
|
if "stoploss" not in self._config:
|
||||||
raise OperationalException(
|
raise OperationalException(
|
||||||
|
|||||||
@@ -3,9 +3,8 @@ Price pair list filter
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from typing import Any, Dict, Optional
|
from typing import Dict, Optional
|
||||||
|
|
||||||
from freqtrade.constants import Config
|
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange.types import Ticker
|
from freqtrade.exchange.types import Ticker
|
||||||
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
||||||
@@ -15,15 +14,8 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
class PriceFilter(IPairList):
|
class PriceFilter(IPairList):
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
self._low_price_ratio = self._pairlistconfig.get("low_price_ratio", 0)
|
self._low_price_ratio = self._pairlistconfig.get("low_price_ratio", 0)
|
||||||
if self._low_price_ratio < 0:
|
if self._low_price_ratio < 0:
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Provides pair list from Leader data
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from typing import Any, Dict, List, Optional
|
from typing import Dict, List, Optional
|
||||||
|
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
@@ -32,15 +32,8 @@ class ProducerPairList(IPairList):
|
|||||||
|
|
||||||
is_pairlist_generator = True
|
is_pairlist_generator = True
|
||||||
|
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Dict[str, Any],
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
self._num_assets: int = self._pairlistconfig.get("number_assets", 0)
|
self._num_assets: int = self._pairlistconfig.get("number_assets", 0)
|
||||||
self._producer_name = self._pairlistconfig.get("producer_name", "default")
|
self._producer_name = self._pairlistconfig.get("producer_name", "default")
|
||||||
|
|||||||
@@ -14,7 +14,6 @@ from cachetools import TTLCache
|
|||||||
|
|
||||||
from freqtrade import __version__
|
from freqtrade import __version__
|
||||||
from freqtrade.configuration.load_config import CONFIG_PARSE_MODE
|
from freqtrade.configuration.load_config import CONFIG_PARSE_MODE
|
||||||
from freqtrade.constants import Config
|
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
||||||
@@ -27,15 +26,8 @@ logger = logging.getLogger(__name__)
|
|||||||
class RemotePairList(IPairList):
|
class RemotePairList(IPairList):
|
||||||
is_pairlist_generator = True
|
is_pairlist_generator = True
|
||||||
|
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
if "number_assets" not in self._pairlistconfig:
|
if "number_assets" not in self._pairlistconfig:
|
||||||
raise OperationalException(
|
raise OperationalException(
|
||||||
|
|||||||
@@ -4,9 +4,8 @@ Shuffle pair list filter
|
|||||||
|
|
||||||
import logging
|
import logging
|
||||||
import random
|
import random
|
||||||
from typing import Any, Dict, List, Literal
|
from typing import Dict, List, Literal
|
||||||
|
|
||||||
from freqtrade.constants import Config
|
|
||||||
from freqtrade.enums import RunMode
|
from freqtrade.enums import RunMode
|
||||||
from freqtrade.exchange import timeframe_to_seconds
|
from freqtrade.exchange import timeframe_to_seconds
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
@@ -20,15 +19,8 @@ ShuffleValues = Literal["candle", "iteration"]
|
|||||||
|
|
||||||
|
|
||||||
class ShuffleFilter(IPairList):
|
class ShuffleFilter(IPairList):
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
# Apply seed in backtesting mode to get comparable results,
|
# Apply seed in backtesting mode to get comparable results,
|
||||||
# but not in live modes to get a non-repeating order of pairs during live modes.
|
# but not in live modes to get a non-repeating order of pairs during live modes.
|
||||||
|
|||||||
@@ -3,9 +3,8 @@ Spread pair list filter
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from typing import Any, Dict, Optional
|
from typing import Dict, Optional
|
||||||
|
|
||||||
from freqtrade.constants import Config
|
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange.types import Ticker
|
from freqtrade.exchange.types import Ticker
|
||||||
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
||||||
@@ -15,15 +14,8 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
class SpreadFilter(IPairList):
|
class SpreadFilter(IPairList):
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
self._max_spread_ratio = self._pairlistconfig.get("max_spread_ratio", 0.005)
|
self._max_spread_ratio = self._pairlistconfig.get("max_spread_ratio", 0.005)
|
||||||
self._enabled = self._max_spread_ratio != 0
|
self._enabled = self._max_spread_ratio != 0
|
||||||
|
|||||||
@@ -6,9 +6,8 @@ Provides pair white list as it configured in config
|
|||||||
|
|
||||||
import logging
|
import logging
|
||||||
from copy import deepcopy
|
from copy import deepcopy
|
||||||
from typing import Any, Dict, List
|
from typing import Dict, List
|
||||||
|
|
||||||
from freqtrade.constants import Config
|
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
from freqtrade.plugins.pairlist.IPairList import IPairList, PairlistParameter
|
||||||
|
|
||||||
@@ -19,15 +18,8 @@ logger = logging.getLogger(__name__)
|
|||||||
class StaticPairList(IPairList):
|
class StaticPairList(IPairList):
|
||||||
is_pairlist_generator = True
|
is_pairlist_generator = True
|
||||||
|
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
self._allow_inactive = self._pairlistconfig.get("allow_inactive", False)
|
self._allow_inactive = self._pairlistconfig.get("allow_inactive", False)
|
||||||
|
|
||||||
|
|||||||
@@ -5,13 +5,13 @@ Volatility pairlist filter
|
|||||||
import logging
|
import logging
|
||||||
import sys
|
import sys
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
from typing import Any, Dict, List, Optional
|
from typing import Dict, List, Optional
|
||||||
|
|
||||||
import numpy as np
|
import numpy as np
|
||||||
from cachetools import TTLCache
|
from cachetools import TTLCache
|
||||||
from pandas import DataFrame
|
from pandas import DataFrame
|
||||||
|
|
||||||
from freqtrade.constants import Config, ListPairsWithTimeframes
|
from freqtrade.constants import ListPairsWithTimeframes
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
from freqtrade.misc import plural
|
from freqtrade.misc import plural
|
||||||
@@ -27,15 +27,8 @@ class VolatilityFilter(IPairList):
|
|||||||
Filters pairs by volatility
|
Filters pairs by volatility
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
self._days = self._pairlistconfig.get("lookback_days", 10)
|
self._days = self._pairlistconfig.get("lookback_days", 10)
|
||||||
self._min_volatility = self._pairlistconfig.get("min_volatility", 0)
|
self._min_volatility = self._pairlistconfig.get("min_volatility", 0)
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ from typing import Any, Dict, List, Literal
|
|||||||
|
|
||||||
from cachetools import TTLCache
|
from cachetools import TTLCache
|
||||||
|
|
||||||
from freqtrade.constants import Config, ListPairsWithTimeframes
|
from freqtrade.constants import ListPairsWithTimeframes
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange import timeframe_to_minutes, timeframe_to_prev_date
|
from freqtrade.exchange import timeframe_to_minutes, timeframe_to_prev_date
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
@@ -27,15 +27,8 @@ SORT_VALUES = ["quoteVolume"]
|
|||||||
class VolumePairList(IPairList):
|
class VolumePairList(IPairList):
|
||||||
is_pairlist_generator = True
|
is_pairlist_generator = True
|
||||||
|
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
if "number_assets" not in self._pairlistconfig:
|
if "number_assets" not in self._pairlistconfig:
|
||||||
raise OperationalException(
|
raise OperationalException(
|
||||||
|
|||||||
@@ -4,12 +4,12 @@ Rate of change pairlist filter
|
|||||||
|
|
||||||
import logging
|
import logging
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
from typing import Any, Dict, List, Optional
|
from typing import Dict, List, Optional
|
||||||
|
|
||||||
from cachetools import TTLCache
|
from cachetools import TTLCache
|
||||||
from pandas import DataFrame
|
from pandas import DataFrame
|
||||||
|
|
||||||
from freqtrade.constants import Config, ListPairsWithTimeframes
|
from freqtrade.constants import ListPairsWithTimeframes
|
||||||
from freqtrade.exceptions import OperationalException
|
from freqtrade.exceptions import OperationalException
|
||||||
from freqtrade.exchange.types import Tickers
|
from freqtrade.exchange.types import Tickers
|
||||||
from freqtrade.misc import plural
|
from freqtrade.misc import plural
|
||||||
@@ -21,15 +21,8 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
class RangeStabilityFilter(IPairList):
|
class RangeStabilityFilter(IPairList):
|
||||||
def __init__(
|
def __init__(self, *args, **kwargs) -> None:
|
||||||
self,
|
super().__init__(*args, **kwargs)
|
||||||
exchange,
|
|
||||||
pairlistmanager,
|
|
||||||
config: Config,
|
|
||||||
pairlistconfig: Dict[str, Any],
|
|
||||||
pairlist_pos: int,
|
|
||||||
) -> None:
|
|
||||||
super().__init__(exchange, pairlistmanager, config, pairlistconfig, pairlist_pos)
|
|
||||||
|
|
||||||
self._days = self._pairlistconfig.get("lookback_days", 10)
|
self._days = self._pairlistconfig.get("lookback_days", 10)
|
||||||
self._min_rate_of_change = self._pairlistconfig.get("min_rate_of_change", 0.01)
|
self._min_rate_of_change = self._pairlistconfig.get("min_rate_of_change", 0.01)
|
||||||
|
|||||||
Reference in New Issue
Block a user