This commit is contained in:
2026-09-05 22:52:35 +08:00
parent af55324e2a
commit 2f93fe2ecb
6 changed files with 102 additions and 34 deletions

View File

@@ -17,7 +17,6 @@ from libs.signal import init_signals, SignalItem
from libs.collector import collector_push
from sdk import Client
from libs.grid_take_profit import GridTrailingTracker
from .state import State
from .order import OrderBook
from .watch import DipWatch
from .runtime import Runtime
@@ -56,14 +55,8 @@ def StartTrend() -> None:
portfolio = client.portfolio()
assets = portfolio.assets
positions = list(portfolio.positions.values())
storeState = State.for_strategy(
config.global_config.qmt_data_dir,
config.account_config.strategy,
config.account_config.account_id,
)
order_book = OrderBook()
order_book.refresh(client, portfolio.orders)
storeState.reconcile(positions, portfolio.orders)
# 获取本策略的信号开仓数据
signals = init_signals(
@@ -76,7 +69,6 @@ def StartTrend() -> None:
client=client,
global_cfg=config.global_config,
account_cfg=config.account_config,
state=storeState,
orders=order_book,
open_watch=DipWatch(),
add_watch=DipWatch(),
@@ -177,13 +169,6 @@ def RunOnce(run: Runtime, signals:list[SignalItem]) -> None:
log.exception("[行情] 获取行情失败,代码数量=%d", len(all_codes))
return
# 6. 更新状态机
try:
run.state.reconcile(positions, portfolio.orders)
except Exception:
log.exception("[状态] 订单状态对账失败")
return
log.info("[RunOnce] 本轮就绪,持仓=%d,候选=%d,大盘允许=%s,资金允许=%s", len(positions), len(allow_open), market_ok, allow_open_by_cash)
# 启动线程,开始计算