Latest

OrderFilledEvent 接入订单追踪系统2

OrderFilledEvent 接入订单追踪系统 现状诊断 当前 fill 处理路径 user 频道 data.fills → _publish_user_events() → OrderFilledEvent → 🕳️ 无消费者(数据丢失) userFills 频道 → handle_message() → _on_user_fill() → ✅ 订单追踪正常 两条路径并存,结果截然不同: * user 频道的 fills:_publish_user_events 已发布 OrderFilledEvent(优先级 CRITICAL),但 EventBus 上零订阅者,成交数据完全丢失,不进入订单追踪。 * userFills 频道:通过 realtime_kline_service_base.on_message

By SHI XIAOLONG

OrderFilledEvent 接入订单追踪系统

OrderFilledEvent 接入订单追踪系统 目标 * 补上“成交事件有发布无消费”的缺口,让订单追踪系统成为 OrderFilledEvent 的消费者。 * 统一成交入口:所有 fill(user 频道 data.fills + userFills 频道)都经 EventBus 以 OrderFilledEvent 发布,订单追踪只通过订阅事件更新状态,逻辑更清晰、易扩展。 设计要点 * 单一入口:订单追踪的“应用一笔成交”逻辑只在一个地方执行——对 OrderFilledEvent 的订阅 handler(与现有 _on_user_fill 逻辑等价)。 * 避免重复:userFills 不再走 handle_message → _on_user_fill,仅通过 _cache_

By SHI XIAOLONG

双WebSocket架构设计5

双 WebSocket 架构设计文档(K 线主网 + 订单/用户推送随配置) 1. 目标与约束 需求 * K 线与 L2 订单簿:始终连接主网 WebSocket(wss://api.hyperliquid.xyz/ws),与 TRADING_NETWORK 无关。 * orderUpdates / userFills / user:连接随 TRADING_NETWORK 变化的 WebSocket(testnet 时 wss://api.hyperliquid-testnet.xyz/ws,mainnet 时与主网一致),与下单/查单网络保持一致。 非目标 * 不改变现有交易 HTTP API、订单跟踪逻辑、WebSocketOrderManager

By SHI XIAOLONG

双WebSocket架构设计4

双 WebSocket 架构设计文档(K 线主网 + 订单/用户推送随配置) 1. 目标与约束 需求 * K 线与 L2 订单簿:始终连接主网 WebSocket(wss://api.hyperliquid.xyz/ws),与 TRADING_NETWORK 无关。 * orderUpdates / userFills / user:连接随 TRADING_NETWORK 变化的 WebSocket(testnet 时 wss://api.hyperliquid-testnet.xyz/ws,mainnet 时与主网一致),与下单/查单网络保持一致。 非目标 * 不改变现有交易 HTTP API、订单跟踪逻辑、WebSocketOrderManager

By SHI XIAOLONG

双WebSocket架构设计3

双 WebSocket 架构设计文档(K 线主网 + 订单/用户推送随配置) 文档版本:3.0 | 最后更新:2026-02-22 3.0 变更:架构仅保留双 WebSocket,移除单 WS 回滚(DUAL_WS_ENABLED、_build_trading_subscriptions_legacy、_handle_trading_channel 等);Executor 直接按 source="trading" 过滤;同步修正 2.2 OrderFilledEvent 表述、缓冲区 1000 条 error 告警、config 行号与构造函数参数说明。

By SHI XIAOLONG

双WebSocket架构设计2

双 WebSocket 架构设计文档(K 线主网 + 订单/用户推送随配置) 文档版本:3.0 | 最后更新:2026-02-22 3.0 变更:架构仅保留双 WebSocket,移除单 WS 回滚(DUAL_WS_ENABLED、_build_trading_subscriptions_legacy、_handle_trading_channel 等);Executor 直接按 source="trading" 过滤;同步修正 2.2 OrderFilledEvent 表述、缓冲区 1000 条 error 告警、config 行号与构造函数参数说明。

By SHI XIAOLONG

双WebSocket架构设计

双 WebSocket 架构设计文档(K 线主网 + 订单/用户推送随配置) 文档版本:2.0 | 最后更新:2026-02-22 1. 目标与约束 需求 * K 线与 L2 订单簿:始终连接主网 WebSocket(wss://api.hyperliquid.xyz/ws),与 TRADING_NETWORK 无关。 * orderUpdates / userFills / user:连接随 TRADING_NETWORK 变化的 WebSocket(testnet 时 wss://api.hyperliquid-testnet.xyz/ws,mainnet 时与主网一致),与下单/查单网络保持一致。 非目标

By SHI XIAOLONG

订单跟踪系统BUG30

订单跟踪系统 Bug 分析报告 分析日期:2026-02-22 分析范围:src/trading/websocket_order_manager.py、src/trading/executor.py、src/trading/position_manager.py 一、架构与数据流简述 订单跟踪核心在 src/trading/websocket_order_manager.py: * 唯一解析路径:_resolve() 在持锁内将订单从 PENDING 转为终态(FILLED/CANCELED/REJECTED/TIMEOUT),并调用 result_event.set()。 * WS 驱动:_on_order_update(orderUpdates)、_on_

By SHI XIAOLONG

双 WebSocket 架构设计文档(K 线主网 + 订单/用户推送随配置)

双 WebSocket 架构设计文档(K 线主网 + 订单/用户推送随配置) 1. 目标与约束 需求 * K 线与 L2 订单簿:始终连接主网 WebSocket(wss://api.hyperliquid.xyz/ws),与 TRADING_NETWORK 无关。 * orderUpdates / userFills / user:连接随 TRADING_NETWORK 变化的 WebSocket(testnet 时 wss://api.hyperliquid-testnet.xyz/ws,mainnet 时与主网一致),与下单/查单网络一致。 非目标 * 不改变现有交易 HTTP API、订单跟踪逻辑、WebSocketOrderManager

By SHI XIAOLONG

订单跟踪系统BUG29

订单跟踪系统 Bug 分析报告 分析日期:2026-02-22 分析范围:src/trading/websocket_order_manager.py、src/trading/executor.py、src/trading/position_manager.py 一、架构与数据流简述 订单跟踪核心在 src/trading/websocket_order_manager.py: * 唯一解析路径:_resolve() 在持锁内将订单从 PENDING 转为终态(FILLED/CANCELED/REJECTED/TIMEOUT),并调用 result_event.set()。 * WS 驱动:_on_order_update(orderUpdates)、_on_

By SHI XIAOLONG