fix logger in base_trader

This commit is contained in:
zhiyong 2025-05-10 22:14:51 +08:00
parent 6ad14c689e
commit e818699c13
3 changed files with 6 additions and 5 deletions

View File

@ -6,14 +6,14 @@ from position_manager import PositionManager
from typing import Dict
# 获取日志记录器
logger = get_logger('base_trader')
class BaseTrader(ABC):
"""交易基类,定义交易接口的通用方法"""
def __init__(self):
def __init__(self, logger):
"""初始化交易基类"""
self.position_managers: Dict[str, PositionManager] = {}
self.logger = logger
pass
@abstractmethod
@ -168,7 +168,7 @@ class BaseTrader(ABC):
return is_morning_session or is_afternoon_session
except Exception as e:
logger.error(f"判断交易时间发生错误: {str(e)}")
self.logger.error(f"判断交易时间发生错误: {str(e)}")
return False
def is_trading_date(self, date=None):
@ -189,7 +189,7 @@ class BaseTrader(ABC):
return is_workday(date)
except Exception as e:
logger.error(f"判断交易日期发生错误: {str(e)}")
self.logger.error(f"判断交易日期发生错误: {str(e)}")
return False
def get_position_manager(self, strategy_name) -> PositionManager:

View File

@ -39,7 +39,7 @@ class MyXtQuantTraderCallback:
class XtTrader(BaseTrader):
def __init__(self):
super().__init__()
super().__init__(logger)
self.started = False
self.connected = False
self.subscribed = False

View File

@ -13,6 +13,7 @@ import random
class SimulationTrader(BaseTrader):
def __init__(self, logger=None):
super().__init__(logger)
self.logger = logger or get_logger("simulation_trader")
# 模拟资金账户信息
self.sim_balance = {"account_id": "simulation", "cash": 1000000.00, "frozen": 0.00, "total": 1000000.00}