Ver código fonte

更新记录的顺序

skyfffire 4 dias atrás
pai
commit
e867d4b63b
1 arquivos alterados com 3 adições e 4 exclusões
  1. 3 4
      src/leadlag/strategy.py

+ 3 - 4
src/leadlag/strategy.py

@@ -261,9 +261,6 @@ class TradingStrategy:
         # 如果不是目标交易对,直接返回
         if symbol != self.target_symbol:
             return
-                
-        # 记录价格数据到数据库
-        await self._record_price_data(market_data)
         
         # 基于账户信息更新 current_position 和状态
         await self._update_position_and_state(market_data)
@@ -273,6 +270,9 @@ class TradingStrategy:
             await self._handle_idle_monitoring(market_data)
         elif self.state == StrategyState.CLOSING_WITH_LIMIT_ORDER:
             await self._handle_closing_with_limit_order(market_data)
+        
+        # 记录价格数据到数据库
+        await self._record_price_data(market_data)
             
         # 更新账户信息,但至少间隔1秒
         current_time = time.time()
@@ -405,7 +405,6 @@ class TradingStrategy:
             
         except Exception as e:
             logger.error(f"记录价格数据失败: {e}")
-    
 
     
     async def _handle_idle_monitoring(self, market_data):