This commit is contained in:
aaron 2026-02-11 20:54:52 +08:00
parent 6dea177565
commit a0c2340170

View File

@ -267,10 +267,13 @@ class PaperTradingService:
db.commit()
db.refresh(db_order)
# 同步更新内存缓存
order.status = OrderStatus.OPEN
order.filled_price = filled_price
order.opened_at = db_order.opened_at
# 使用 make_transient 将对象从会话中分离,使其成为独立对象
from sqlalchemy.orm import make_transient
db.expunge(db_order) # 从会话中移除
make_transient(db_order) # 使对象独立
# 用独立的对象替换内存缓存中的旧对象
self.active_orders[order.order_id] = db_order
logger.info(f"挂单已激活: {order.order_id} | {order.symbol} {order.side.value} @ ${filled_price:,.2f}")
@ -280,7 +283,6 @@ class PaperTradingService:
'order_id': order.order_id,
'symbol': order.symbol,
'side': order.side.value,
'entry_price': order.entry_price,
'filled_price': filled_price,
'quantity': order.quantity,
'signal_grade': order.signal_grade.value if order.signal_grade else None,