update
This commit is contained in:
parent
51565a4edf
commit
f595e351bb
@ -36,11 +36,28 @@ class PaperTradingService:
|
||||
logger.info(f"模拟交易服务初始化完成(自动平反向持仓: {'启用' if self.auto_close_opposite else '禁用'},保本止损阈值: {self.breakeven_threshold}%)")
|
||||
|
||||
def _ensure_table_exists(self):
|
||||
"""确保数据表已创建"""
|
||||
"""确保数据表已创建,并迁移新字段"""
|
||||
from app.models.paper_trading import PaperOrder
|
||||
from app.models.database import Base
|
||||
from sqlalchemy import text
|
||||
Base.metadata.create_all(bind=db_service.engine)
|
||||
|
||||
# 检查并添加新字段 breakeven_triggered
|
||||
db = db_service.get_session()
|
||||
try:
|
||||
# 尝试查询新字段,如果失败则添加
|
||||
db.execute(text("SELECT breakeven_triggered FROM paper_orders LIMIT 1"))
|
||||
except Exception:
|
||||
try:
|
||||
db.execute(text("ALTER TABLE paper_orders ADD COLUMN breakeven_triggered INTEGER DEFAULT 0"))
|
||||
db.commit()
|
||||
logger.info("数据库迁移: 添加 breakeven_triggered 字段")
|
||||
except Exception as e:
|
||||
logger.warning(f"添加 breakeven_triggered 字段失败(可能已存在): {e}")
|
||||
db.rollback()
|
||||
finally:
|
||||
db.close()
|
||||
|
||||
def _load_active_orders(self):
|
||||
"""从数据库加载活跃订单到内存"""
|
||||
db = db_service.get_session()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user