Move stop_duration to parent class
avoids reimplementation and enhances standardization
This commit is contained in:
parent
12e84bda1e
commit
4351a26b4c
@ -200,6 +200,9 @@ For that reason, they must implement the following methods:
|
||||
|
||||
The `until` portion should be calculated using the provided `calculate_lock_end()` method.
|
||||
|
||||
All Protections should use `"stop_duration"` to define how long a a pair (or all pairs) should be locked.
|
||||
The content of this is made available as `self._stop_duration` to the each Protection.
|
||||
|
||||
#### Global vs. local stops
|
||||
|
||||
Protections can have 2 different ways to stop trading for a limited :
|
||||
|
@ -20,8 +20,6 @@ class CooldownPeriod(IProtection):
|
||||
def __init__(self, config: Dict[str, Any], protection_config: Dict[str, Any]) -> None:
|
||||
super().__init__(config, protection_config)
|
||||
|
||||
self._stop_duration = protection_config.get('stop_duration', 60)
|
||||
|
||||
def _reason(self) -> str:
|
||||
"""
|
||||
LockReason to use
|
||||
|
@ -23,6 +23,8 @@ class IProtection(LoggingMixin, ABC):
|
||||
def __init__(self, config: Dict[str, Any], protection_config: Dict[str, Any]) -> None:
|
||||
self._config = config
|
||||
self._protection_config = protection_config
|
||||
self._stop_duration = protection_config.get('stop_duration', 60)
|
||||
|
||||
LoggingMixin.__init__(self, logger)
|
||||
|
||||
@property
|
||||
|
@ -22,7 +22,6 @@ class LowProfitPairs(IProtection):
|
||||
|
||||
self._lookback_period = protection_config.get('lookback_period', 60)
|
||||
self._trade_limit = protection_config.get('trade_limit', 1)
|
||||
self._stop_duration = protection_config.get('stop_duration', 60)
|
||||
self._required_profit = protection_config.get('required_profit', 0.0)
|
||||
|
||||
def short_desc(self) -> str:
|
||||
|
@ -25,7 +25,6 @@ class StoplossGuard(IProtection):
|
||||
|
||||
self._lookback_period = protection_config.get('lookback_period', 60)
|
||||
self._trade_limit = protection_config.get('trade_limit', 10)
|
||||
self._stop_duration = protection_config.get('stop_duration', 60)
|
||||
self._disable_global_stop = protection_config.get('only_per_pair', False)
|
||||
|
||||
def short_desc(self) -> str:
|
||||
|
Loading…
Reference in New Issue
Block a user