Merge branch 'enums' into feat/short
This commit is contained in:
		| @@ -1,8 +1,11 @@ | |||||||
| # flake8: noqa: F401 | # flake8: noqa: F401 | ||||||
| from freqtrade.enums.backteststate import BacktestState | from freqtrade.enums.backteststate import BacktestState | ||||||
|  | from freqtrade.enums.collateral import Collateral | ||||||
|  | from freqtrade.enums.exchangename import ExchangeName | ||||||
| from freqtrade.enums.interestmode import InterestMode | from freqtrade.enums.interestmode import InterestMode | ||||||
| from freqtrade.enums.rpcmessagetype import RPCMessageType | from freqtrade.enums.rpcmessagetype import RPCMessageType | ||||||
| from freqtrade.enums.runmode import NON_UTIL_MODES, OPTIMIZE_MODES, TRADING_MODES, RunMode | from freqtrade.enums.runmode import NON_UTIL_MODES, OPTIMIZE_MODES, TRADING_MODES, RunMode | ||||||
| from freqtrade.enums.selltype import SellType | from freqtrade.enums.selltype import SellType | ||||||
| from freqtrade.enums.signaltype import SignalTagType, SignalType | from freqtrade.enums.signaltype import SignalTagType, SignalType | ||||||
| from freqtrade.enums.state import State | from freqtrade.enums.state import State | ||||||
|  | from freqtrade.enums.tradingmode import TradingMode | ||||||
|   | |||||||
							
								
								
									
										11
									
								
								freqtrade/enums/collateral.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								freqtrade/enums/collateral.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | |||||||
|  | from enum import Enum | ||||||
|  |  | ||||||
|  |  | ||||||
|  | class Collateral(Enum): | ||||||
|  |     """ | ||||||
|  |         Enum to distinguish between | ||||||
|  |         cross margin/futures collateral and | ||||||
|  |         isolated margin/futures collateral | ||||||
|  |     """ | ||||||
|  |     CROSS = "cross" | ||||||
|  |     ISOLATED = "isolated" | ||||||
							
								
								
									
										10
									
								
								freqtrade/enums/exchangename.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								freqtrade/enums/exchangename.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | |||||||
|  | from enum import Enum | ||||||
|  |  | ||||||
|  |  | ||||||
|  | class ExchangeName(Enum): | ||||||
|  |     """All the exchanges supported by freqtrade that support leverage""" | ||||||
|  |  | ||||||
|  |     BINANCE = "Binance" | ||||||
|  |     KRAKEN = "Kraken" | ||||||
|  |     FTX = "FTX" | ||||||
|  |     OTHER = None | ||||||
| @@ -7,6 +7,8 @@ class SignalType(Enum): | |||||||
|     """ |     """ | ||||||
|     BUY = "buy" |     BUY = "buy" | ||||||
|     SELL = "sell" |     SELL = "sell" | ||||||
|  |     SHORT = "short" | ||||||
|  |     EXIT_SHORT = "exit_short" | ||||||
|  |  | ||||||
|  |  | ||||||
| class SignalTagType(Enum): | class SignalTagType(Enum): | ||||||
|   | |||||||
							
								
								
									
										11
									
								
								freqtrade/enums/tradingmode.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								freqtrade/enums/tradingmode.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | |||||||
|  | from enum import Enum | ||||||
|  |  | ||||||
|  |  | ||||||
|  | class TradingMode(Enum): | ||||||
|  |     """ | ||||||
|  |         Enum to distinguish between | ||||||
|  |         spot, margin, futures or any other trading method | ||||||
|  |     """ | ||||||
|  |     SPOT = "spot" | ||||||
|  |     MARGIN = "margin" | ||||||
|  |     FUTURES = "futures" | ||||||
| @@ -4,6 +4,7 @@ from typing import Dict | |||||||
|  |  | ||||||
| import ccxt | import ccxt | ||||||
|  |  | ||||||
|  | from freqtrade.enums import ExchangeName | ||||||
| from freqtrade.exceptions import (DDosProtection, InsufficientFundsError, InvalidOrderException, | from freqtrade.exceptions import (DDosProtection, InsufficientFundsError, InvalidOrderException, | ||||||
|                                   OperationalException, TemporaryError) |                                   OperationalException, TemporaryError) | ||||||
| from freqtrade.exchange import Exchange | from freqtrade.exchange import Exchange | ||||||
| @@ -15,6 +16,8 @@ logger = logging.getLogger(__name__) | |||||||
|  |  | ||||||
| class Binance(Exchange): | class Binance(Exchange): | ||||||
|  |  | ||||||
|  |     exchange_name: ExchangeName = ExchangeName.BINANCE | ||||||
|  |  | ||||||
|     _ft_has: Dict = { |     _ft_has: Dict = { | ||||||
|         "stoploss_on_exchange": True, |         "stoploss_on_exchange": True, | ||||||
|         "order_time_in_force": ['gtc', 'fok', 'ioc'], |         "order_time_in_force": ['gtc', 'fok', 'ioc'], | ||||||
|   | |||||||
| @@ -21,6 +21,7 @@ from pandas import DataFrame | |||||||
|  |  | ||||||
| from freqtrade.constants import DEFAULT_AMOUNT_RESERVE_PERCENT, ListPairsWithTimeframes | from freqtrade.constants import DEFAULT_AMOUNT_RESERVE_PERCENT, ListPairsWithTimeframes | ||||||
| from freqtrade.data.converter import ohlcv_to_dataframe, trades_dict_to_list | from freqtrade.data.converter import ohlcv_to_dataframe, trades_dict_to_list | ||||||
|  | from freqtrade.enums import ExchangeName | ||||||
| from freqtrade.exceptions import (DDosProtection, ExchangeError, InsufficientFundsError, | from freqtrade.exceptions import (DDosProtection, ExchangeError, InsufficientFundsError, | ||||||
|                                   InvalidOrderException, OperationalException, PricingError, |                                   InvalidOrderException, OperationalException, PricingError, | ||||||
|                                   RetryableOrderError, TemporaryError) |                                   RetryableOrderError, TemporaryError) | ||||||
| @@ -69,6 +70,8 @@ class Exchange: | |||||||
|     } |     } | ||||||
|     _ft_has: Dict = {} |     _ft_has: Dict = {} | ||||||
|  |  | ||||||
|  |     exchange_name: ExchangeName = ExchangeName.BINANCE | ||||||
|  |  | ||||||
|     def __init__(self, config: Dict[str, Any], validate: bool = True) -> None: |     def __init__(self, config: Dict[str, Any], validate: bool = True) -> None: | ||||||
|         """ |         """ | ||||||
|         Initializes this module with the given config, |         Initializes this module with the given config, | ||||||
|   | |||||||
| @@ -4,6 +4,7 @@ from typing import Any, Dict | |||||||
|  |  | ||||||
| import ccxt | import ccxt | ||||||
|  |  | ||||||
|  | from freqtrade.enums import ExchangeName | ||||||
| from freqtrade.exceptions import (DDosProtection, InsufficientFundsError, InvalidOrderException, | from freqtrade.exceptions import (DDosProtection, InsufficientFundsError, InvalidOrderException, | ||||||
|                                   OperationalException, TemporaryError) |                                   OperationalException, TemporaryError) | ||||||
| from freqtrade.exchange import Exchange | from freqtrade.exchange import Exchange | ||||||
| @@ -16,6 +17,8 @@ logger = logging.getLogger(__name__) | |||||||
|  |  | ||||||
| class Ftx(Exchange): | class Ftx(Exchange): | ||||||
|  |  | ||||||
|  |     exchange_name: ExchangeName = ExchangeName.FTX | ||||||
|  |  | ||||||
|     _ft_has: Dict = { |     _ft_has: Dict = { | ||||||
|         "stoploss_on_exchange": True, |         "stoploss_on_exchange": True, | ||||||
|         "ohlcv_candle_limit": 1500, |         "ohlcv_candle_limit": 1500, | ||||||
|   | |||||||
| @@ -4,6 +4,7 @@ from typing import Any, Dict | |||||||
|  |  | ||||||
| import ccxt | import ccxt | ||||||
|  |  | ||||||
|  | from freqtrade.enums import ExchangeName | ||||||
| from freqtrade.exceptions import (DDosProtection, InsufficientFundsError, InvalidOrderException, | from freqtrade.exceptions import (DDosProtection, InsufficientFundsError, InvalidOrderException, | ||||||
|                                   OperationalException, TemporaryError) |                                   OperationalException, TemporaryError) | ||||||
| from freqtrade.exchange import Exchange | from freqtrade.exchange import Exchange | ||||||
| @@ -15,6 +16,8 @@ logger = logging.getLogger(__name__) | |||||||
|  |  | ||||||
| class Kraken(Exchange): | class Kraken(Exchange): | ||||||
|  |  | ||||||
|  |     exchange_name: ExchangeName = ExchangeName.KRAKEN | ||||||
|  |  | ||||||
|     _params: Dict = {"trading_agreement": "agree"} |     _params: Dict = {"trading_agreement": "agree"} | ||||||
|     _ft_has: Dict = { |     _ft_has: Dict = { | ||||||
|         "stoploss_on_exchange": True, |         "stoploss_on_exchange": True, | ||||||
|   | |||||||
							
								
								
									
										1
									
								
								freqtrade/leverage/__init__.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								freqtrade/leverage/__init__.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | # flake8: noqa: F401 | ||||||
		Reference in New Issue
	
	Block a user