fix: 修复 VeighNa 模块加载问题
- 修改 main_service.py 使用正确的 gateway 导入路径 - 添加 try/except 处理 gateway 导入失败的情况 - 更新 requirements-docker.txt 添加 gateway 包说明 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -20,6 +20,13 @@ nbformat>=5.10.4
|
||||
requests>=2.32.0
|
||||
qrcode>=7.4.2
|
||||
|
||||
# VeighNa Gateway 扩展(可选,根据需要安装)
|
||||
# 注意:这些是独立的扩展包,未安装时不影响核心功能
|
||||
# vnpy_ctp
|
||||
# vnpy_ib
|
||||
# vnpy_okx
|
||||
# vnpy_binance
|
||||
|
||||
# ============================================
|
||||
# Web 服务依赖
|
||||
# ============================================
|
||||
|
||||
@@ -21,10 +21,23 @@ try:
|
||||
)
|
||||
from vnpy.trader.constant import Exchange, Direction, OrderType, Offset
|
||||
from vnpy.trader.setting import SETTINGS
|
||||
from vnpy.gateway.ctp import CtpGateway
|
||||
from vnpy.gateway.ib import IbGateway
|
||||
from vnpy.gateway.okx import OkxGateway
|
||||
from vnpy.gateway.binance import BinanceGateway
|
||||
# Gateway modules are imported as independent packages
|
||||
try:
|
||||
from vnpy_ctp import CtpGateway
|
||||
except ImportError:
|
||||
CtpGateway = None
|
||||
try:
|
||||
from vnpy_ib import IbGateway
|
||||
except ImportError:
|
||||
IbGateway = None
|
||||
try:
|
||||
from vnpy_okx import OkxGateway
|
||||
except ImportError:
|
||||
OkxGateway = None
|
||||
try:
|
||||
from vnpy_binance import BinanceGateway
|
||||
except ImportError:
|
||||
BinanceGateway = None
|
||||
VNPY_AVAILABLE = True
|
||||
except ImportError:
|
||||
VNPY_AVAILABLE = False
|
||||
@@ -78,11 +91,15 @@ class VeighNaService:
|
||||
# 创建主引擎
|
||||
main_engine = MainEngine(event_engine)
|
||||
|
||||
# 添加网关
|
||||
main_engine.add_gateway(CtpGateway)
|
||||
main_engine.add_gateway(IbGateway)
|
||||
main_engine.add_gateway(OkxGateway)
|
||||
main_engine.add_gateway(BinanceGateway)
|
||||
# 添加网关(仅添加已安装的)
|
||||
if CtpGateway:
|
||||
main_engine.add_gateway(CtpGateway)
|
||||
if IbGateway:
|
||||
main_engine.add_gateway(IbGateway)
|
||||
if OkxGateway:
|
||||
main_engine.add_gateway(OkxGateway)
|
||||
if BinanceGateway:
|
||||
main_engine.add_gateway(BinanceGateway)
|
||||
|
||||
return main_engine, event_engine
|
||||
|
||||
|
||||
Reference in New Issue
Block a user