This commit is contained in:
Dobromir Popov
2025-07-14 22:22:16 +03:00
parent 4a55c5ff03
commit ee2e6478d8
11 changed files with 1268 additions and 35 deletions

View File

@ -8,6 +8,7 @@ from .exchange_interface import ExchangeInterface
from .mexc_interface import MEXCInterface
from .binance_interface import BinanceInterface
from .deribit_interface import DeribitInterface
from .bybit_interface import BybitInterface
logger = logging.getLogger(__name__)
@ -18,7 +19,8 @@ class ExchangeFactory:
SUPPORTED_EXCHANGES = {
'mexc': MEXCInterface,
'binance': BinanceInterface,
'deribit': DeribitInterface
'deribit': DeribitInterface,
'bybit': BybitInterface
}
@classmethod
@ -62,6 +64,12 @@ class ExchangeFactory:
api_secret=api_secret,
test_mode=test_mode
)
elif exchange_name == 'bybit':
exchange = exchange_class(
api_key=api_key,
api_secret=api_secret,
test_mode=test_mode
)
else: # binance and others
exchange = exchange_class(
api_key=api_key,
@ -100,6 +108,9 @@ class ExchangeFactory:
elif exchange_name == 'binance':
api_key = os.getenv('BINANCE_API_KEY', '')
api_secret = os.getenv('BINANCE_SECRET_KEY', '')
elif exchange_name == 'bybit':
api_key = os.getenv('BYBIT_API_KEY', '')
api_secret = os.getenv('BYBIT_API_SECRET', '')
else:
logger.warning(f"Unknown exchange credentials for {exchange_name}")
api_key = api_secret = ''