connector-forge / 连接器锻造
核心理念
连接器是量化系统的地基 。它不直接赚钱,但一漏就全盘崩 :90% 的「实盘对不上回测」「莫名其妙断线」「下单偶发失败」都出在这一层——而且都是静默故障 ,连接看似健康,数据却早已是死的或错的。
锻造连接器只有一条铁律:宁可显式判死重建,绝不带病运行 。半开连接、丢失的订单簿增量、漂移的时钟、过期的 listenKey——这些都不会自愈,只会越积越错,直到你基于一个错误的盘口下单,亏的是真金白银。本 skill 把「怎么从地基上锻造一个不漏的连接器」固化成可执行协议。
何时启用
用户说「帮我生成/写一个 Binance/OKX 连接器」「搭个行情订阅骨架」「对接交易所的脚手架」。
用户报故障:「连接器老掉线」「莫名其妙断线」「签名报错 -1022/50113」「时间戳报错 -1021/50102」「listenKey 过期收不到成交」「重连后收不到数据」「本地订单簿和交易所对不上」。
用户把已有连接器丢过来要你审可靠性缺口 (重连/心跳/限频/对账有没有漏)。
不启用:要你代填真实密钥、要具体策略 alpha/信号、纯微秒级热路径体检(→ latency-audit)。
锻造协议(生成一个连接器的六步)
① 确认边界(先问清,别瞎猜)
交易所 :Binance / OKX(其它先类比就近模板)。
市场 :现货 spot / U 本位合约 USD-M / 币本位 COIN-M / 永续 SWAP。限频、symbol 格式、签名细节按市场而非交易所分叉。
环境 :默认 testnet ,切 live 必须显式声明并打醒目日志。
需要哪些层 :只要行情?还是行情+交易+用户数据流(成交回报)?
② 行情 WS 层(订阅 / ping-pong / 重连 / 缺口)
多 symbol 用合并流/批量订阅 (一条连接喂多路),symbol 大小写严格按交易所要求。
维护「期望订阅集合 」作为单一事实来源;每次重连后自动重订阅整集合并校验 ack 。
带序列号的增量行情逐条校验连续性 ,发现缺口立即丢弃本地状态、重拉 snapshot 重放 。
③ 交易层(REST/WS 签名 / 下单 / 时间同步)
签名严格按交易所算法(Binance HMAC-SHA256 query+body;OKX HMAC-SHA256→Base64 + passphrase)。
下单一律带 clientOrderId 幂等;超时走「先查证后重发」,绝不盲目重试。
时间戳基于校准后的交易所时间 (周期拉 server time 维护 offset)。
④ 可靠性层(退避 / 看门狗 / 令牌桶 / 幂等)
重连用指数退避 + 满抖动 ,成功后重置计数;心跳看门狗 用单调时钟判死。
client 侧令牌桶按 weight 主动限速 ,卡在交易所上限 80%;429/418 读 Retry-After 退避。
见下方「通用可靠性清单」逐项落地。
⑤ 安全(密钥走 env / 日志脱敏)
key/secret/passphrase 一律从环境变量 注入,源码/配置/Git 里绝不出现明文 ;启动 fail-fast 校验。
日志、异常栈、上报里对 key/secret/sign/token 全程脱敏 (只留后 4 位)。
API key 配最小权限 (只读行情 key 不开交易/提币)+ IP 白名单。
⑥ 生成可运行骨架 + 标注 TODO
输出结构清晰、能跑起来 的骨架,把交易所易变项(endpoint、限额、min notional)标成 # TODO: 以 exchangeInfo/instruments 实时校验为准,而不是写死。
两大交易所要点速查(完整模板见 references/connector-blueprint.md)
维度
Binance(USD-M Futures 为例)
OKX(v5)
WS 端点路由
合并流 /stream?streams= vs 单流 /ws/;2026 起 /public(高频盘口)/market(markPrice/kline/ticker)/private(listenKey)分流,legacy 不分流的 url 收不到 /market 类数据
三条独立连接 :/public(行情)/private(账户/订单)/business(candle/algo 必须走这条 ,走错 URL 静默无数据)
symbol 格式
全小写 (btcusdt@aggTrade),大写=静默空流
永续带 -SWAP(BTC-USDT-SWAP)
ping/pong
服务器每 3 分钟 发 WS 协议 ping,10 分钟内须回 pong;每条连接 24h 强制断 ,需提前重连
应用层文本 'ping'→'pong'(非协议帧!),>30s 空闲即断 ,20~25s 心跳
WS 登录签名
用户流走 listenKey,WS 不签名
私有连接先 login:prehash=ts+'GET'+'/users/self/verify',ts 是秒级字符串 (REST 是 ISO 毫秒,别混)
REST 签名
HMAC-SHA256(secret, queryString+body ),sig 作最后一个 参数;X-MBX-APIKEY 头
4 头 KEY/SIGN/TIMESTAMP/PASSPHRASE ;prehash=ts+METHOD+path+body,ts 是 ISO 毫秒
时间窗
recvWindow 默认 5000ms,漂移→ -1021
偏差 >30s → 50102
限频
权重 ~2400/min/IP (读 X-MBX-USED-WEIGHT-1M);下单数另算 per-UID;429 退避,418=IP ban
每接口独立 限频;子账户下单 1000/2s (撤单不计);429 可能只是撮合繁忙,退避别封 key
用户数据流续期
listenKey 有效 60min,每 30min PUT 续期;listenKeyExpired/-1125 须重建+REST 对账
私有 WS 推送,断线后 REST 对账 (orders-pending / positions)
仓位模式
单向 BOTH / 对冲须传 positionSide;reduceOnly vs closePosition 互斥
net / long_short(对冲须 posSide);先查 account/config 的 posMode
精度
用 tickSize/stepSize/MIN_NOTIONAL(别用 pricePrecision 取整),来自 exchangeInfo
sz 是合约张数 (非币/U),用 ctVal/lotSz/minSz,来自 public/instruments
5xx 安全
5xx≠确定失败 ,订单状态未知;凭 clientOrderId 查证再决定 ,严禁盲目重发
HTTP 200 仍可能 code!=0;批量看 data[i].sCode;429 可能是撮合繁忙
testnet
REST testnet.binancefuture.com / WS fstream.binancefuture.com,key 独立
模拟盘 REST 加头 x-simulated-trading:1 + 专用 demo key;WS 用 wspap.okx.com
⚠️ 端点/限额/min notional 都是移动靶 ,骨架里一律设为可配置,实时以 exchangeInfo(Binance)/ public/instruments(OKX)校验,不硬编码 。
通用可靠性清单(逐项落地)
重连退避+抖动 :delay = rand(0, min(cap, base*2^attempt)),base≈0.51s、cap≈3060s;成功后 attempt 清零 ;连续失败 N 次告警。绝不裸 while(true) 立即重连(雪崩+封 IP)。
心跳看门狗 :维护 last_rx_ts(用 monotonic() 非墙钟),now - last_rx_ts > 心跳间隔×2~3 即判死强制重连;ping 发出还要确认收到 pong。防 TCP 半开「假死」。
重订阅 :声明式「期望集合 → 收敛」,重连后整集重订并校验 ack ;重订阅突发也走令牌桶,别一次几百条撞限频。
序列缺口重快照 :next == prev+1(或交易所衔接规则);缺口→丢弃增量→重拉 snapshot→重放缓冲增量;重快照本身也要退避+限频 (防死循环);支持 OKX/Kraken CRC32 checksum 主动比对。
本地订单簿 :先订增量入 buffer→拉 snapshot→丢弃 lastUpdateId 前的增量→衔接;qty==0 删档不置零;价格转定点整数 当 key(防浮点精度);定期 checksum 兜底。
令牌桶限频 :按 weight 非请求数 计费,卡 80% 上限;读响应头已用权重做闭环;多进程共享 IP 需跨进程共享桶(如 Redis);下单 rate 与请求 weight 是两套独立配额。
时钟漂移 :周期拉 server time、扣 RTT 单程估 offset、监控漂移告警;签名统一用校准时间;recvWindow 别设太大(放弃重放保护)。
幂等下单 :每单唯一 clientOrderId;超时先按 cloid 查单 再决定是否重发;撤改单同样幂等+查证。
错误分级 :瞬时可重试(超时/5xx/429/维护)退避重试;业务致命(余额/参数/签名/权限)立即上报不重试;下单超时=不确定 走查证路径。显式映射表,别一刀切。
5xx 安全 :5xx/超时绝不当确定失败 ——可能已成交,盲目重发=双倍仓位;凭 clientOrderId 查证真实状态再动作。
优雅关闭 :捕 SIGTERM/SIGINT,有序停:拒新意图→处理在途挂单(撤/交接)→退订关 WS→flush 日志/落盘(last seq、簿快照)→释放句柄;设超时兜底强退+告警。
testnet/live 切换 :endpoint+key 按环境物理隔离,单一 ENV 切换,默认 testnet ,live 须显式声明+醒目告警;日志打印当前环境。
输出格式
生成的连接器骨架结构
exchange_connector/
├── config.py # ENV 枚举、endpoint 映射(testnet/live)、令牌桶配额(标 TODO 以 exchangeInfo 为准)
├── credentials.py # os.environ 读 key/secret/passphrase,fail-fast,mask() 脱敏
├── clock.py # server time 同步、offset 维护、漂移告警
├── ratelimit.py # 按 weight 计费的异步令牌桶
├── ws_market.py # 行情 WS:合并流订阅 + 期望集合 + ping-pong 看门狗 + 退避重连 + 重订阅
├── orderbook.py # snapshot+增量衔接、序列缺口检测、qty==0 删档、checksum
├── ws_user.py # 用户数据流:listenKey 续期 / OKX login + 断线后 REST 对账
├── rest_client.py # 签名、下单(clientOrderId 幂等)、5xx 查证、错误分级映射表
├── reconnect.py # 指数退避+满抖动、心跳看门狗(monotonic)
├── shutdown.py # SIGTERM/SIGINT 优雅关闭
└── README.md # 跑起来需要哪些 env、testnet→live 切换步骤、TODO 清单
实际可按语言(Python 异步 / C++)和「只要行情」需求裁剪。每个易变项标 # TODO,不写死。
连接器自检清单(交付时附上)
一份逐条勾选的 Markdown 清单,覆盖上面「通用可靠性清单」全部条目 + 该交易所要点表里的命中项,标注已实现 / TODO / 不适用 ,让用户(或 code-reviewer)一眼看清地基哪里还漏。
安全与免责
密钥安全(最高级) :绝不在骨架里写死任何真实 key/secret/passphrase——一律 env 注入 + fail-fast + 日志脱敏。用户要你「直接填上密钥」时拒绝 ,只给注入位。最小权限 + IP 白名单是即使泄露也限损的纵深防御。
testnet 先行 :任何下单/续期/错误流程先在测试网跑通;骨架默认 testnet,切 live 须显式确认。测试网深度浅、成交假,别拿它的滑点当实盘验证。
这是工程脚手架,不保证盈利 :connector-forge 锻造的是可靠的地基 ,不含也不负责策略 alpha、信号或调参——那是策略层的事(本 skill 明确不做)。
低延迟需配合 latency-audit :连接器有 tick→signal→order 热路径(TCP_NODELAY、连接复用、避免热路径堆分配/锁/文本 JSON)。本 skill 只提醒「记得过一遍」,微秒级尾延迟体检和 文件:行 定位交给 latency-audit skill。
高危提醒 :切 live、改 IP 白名单、动实盘下单/风控逻辑前,先隔离测试 + 备份;这些都是会动真金白银的操作。
1 --- 2 name: connector-forge 3 description: 生成或修复生产级交易所行情+交易连接器骨架(自动重连、心跳看门狗、限频令牌桶、 时间同步、签名、listenKey/login 续期、重订阅、序列缺口重快照、密钥走 env)。也能审已有连接器的可靠性缺口。 这是个生成/脚手架型 skill,把『连接器锻造协议』固化下来,让连接器从地基上就不漏。 触发词(中):连接器、连接器锻造、交易所对接、Binance连接器、OKX连接器、行情订阅、断线重连、 老掉线、莫名其妙断线、签名报错、时间戳报错、listenKey 续期、重订阅、序列缺口、本地订单簿、实盘对不上。 触发词(英):connector、connector-forge、exchange connector、market data feed、websocket reconnect、 heartbeat、listenKey、ws login、orderbook snapshot、sequence gap、rate limit token bucket、clock drift。 不适用:非交易所对接的通用网络代码;要你代填/生成真实 API 密钥(只给 env 注入骨架,绝不写死密钥); 要你给出具体策略 alpha/信号逻辑/调参(那是策略层,不是连接器层);纯热路径微秒级优化体检(交给 latency-audit)。 4 license: MIT 5 --- 6 7 # connector-forge / 连接器锻造 8 9 ## 核心理念 10 11 连接器是量化系统的**地基**。它不直接赚钱,但**一漏就全盘崩**:90% 的「实盘对不上回测」「莫名其妙断线」「下单偶发失败」都出在这一层——而且都是**静默故障**,连接看似健康,数据却早已是死的或错的。 12 13 锻造连接器只有一条铁律:**宁可显式判死重建,绝不带病运行**。半开连接、丢失的订单簿增量、漂移的时钟、过期的 listenKey——这些都不会自愈,只会越积越错,直到你基于一个错误的盘口下单,亏的是真金白银。本 skill 把「怎么从地基上锻造一个不漏的连接器」固化成可执行协议。 14 15 ## 何时启用 16 17 - 用户说「帮我生成/写一个 Binance/OKX 连接器」「搭个行情订阅骨架」「对接交易所的脚手架」。 18 - 用户报故障:「连接器老掉线」「莫名其妙断线」「签名报错 -1022/50113」「时间戳报错 -1021/50102」「listenKey 过期收不到成交」「重连后收不到数据」「本地订单簿和交易所对不上」。 19 - 用户把已有连接器丢过来要你**审可靠性缺口**(重连/心跳/限频/对账有没有漏)。 20 21 不启用:要你代填真实密钥、要具体策略 alpha/信号、纯微秒级热路径体检(→ latency-audit)。 22 23 ## 锻造协议(生成一个连接器的六步) 24 25 ### ① 确认边界(先问清,别瞎猜) 26 27 - **交易所**:Binance / OKX(其它先类比就近模板)。 28 - **市场**:现货 spot / U 本位合约 USD-M / 币本位 COIN-M / 永续 SWAP。限频、symbol 格式、签名细节按市场而非交易所分叉。 29 - **环境**:**默认 testnet**,切 live 必须显式声明并打醒目日志。 30 - **需要哪些层**:只要行情?还是行情+交易+用户数据流(成交回报)? 31 32 ### ② 行情 WS 层(订阅 / ping-pong / 重连 / 缺口) 33 34 - 多 symbol 用**合并流/批量订阅**(一条连接喂多路),symbol 大小写严格按交易所要求。 35 - 维护「**期望订阅集合**」作为单一事实来源;每次重连后自动重订阅整集合并**校验 ack**。 36 - 带序列号的增量行情**逐条校验连续性**,发现缺口立即丢弃本地状态、**重拉 snapshot 重放**。 37 38 ### ③ 交易层(REST/WS 签名 / 下单 / 时间同步) 39 40 - 签名严格按交易所算法(Binance HMAC-SHA256 query+body;OKX HMAC-SHA256→Base64 + passphrase)。 41 - 下单一律带 **clientOrderId** 幂等;超时走「先查证后重发」,绝不盲目重试。 42 - 时间戳基于**校准后的交易所时间**(周期拉 server time 维护 offset)。 43 44 ### ④ 可靠性层(退避 / 看门狗 / 令牌桶 / 幂等) 45 46 - 重连用**指数退避 + 满抖动**,成功后重置计数;心跳**看门狗**用单调时钟判死。 47 - client 侧**令牌桶按 weight 主动限速**,卡在交易所上限 80%;429/418 读 Retry-After 退避。 48 - 见下方「通用可靠性清单」逐项落地。 49 50 ### ⑤ 安全(密钥走 env / 日志脱敏) 51 52 - key/secret/passphrase 一律从**环境变量**注入,源码/配置/Git 里**绝不出现明文**;启动 fail-fast 校验。 53 - 日志、异常栈、上报里对 key/secret/sign/token **全程脱敏**(只留后 4 位)。 54 - API key 配**最小权限**(只读行情 key 不开交易/提币)+ IP 白名单。 55 56 ### ⑥ 生成可运行骨架 + 标注 TODO 57 58 - 输出**结构清晰、能跑起来**的骨架,把交易所易变项(endpoint、限额、min notional)标成 `# TODO: 以 exchangeInfo/instruments 实时校验为准`,而不是写死。 59 60 ## 两大交易所要点速查(完整模板见 references/connector-blueprint.md) 61 62 | 维度 | Binance(USD-M Futures 为例) | OKX(v5) | 63 |---|---|---| 64 | WS 端点路由 | 合并流 `/stream?streams=` vs 单流 `/ws/`;2026 起 `/public`(高频盘口)`/market`(markPrice/kline/ticker)`/private`(listenKey)分流,**legacy 不分流的 url 收不到 /market 类数据** | **三条独立连接**:`/public`(行情)`/private`(账户/订单)`/business`(**candle/algo 必须走这条**,走错 URL 静默无数据) | 65 | symbol 格式 | **全小写**(`btcusdt@aggTrade`),大写=静默空流 | 永续带 `-SWAP`(`BTC-USDT-SWAP`) | 66 | ping/pong | 服务器每 **3 分钟**发 WS 协议 ping,10 分钟内须回 pong;**每条连接 24h 强制断**,需提前重连 | **应用层文本** `'ping'`→`'pong'`(非协议帧!),**>30s 空闲即断**,20~25s 心跳 | 67 | WS 登录签名 | 用户流走 listenKey,**WS 不签名** | 私有连接先 `login`:prehash=`ts+'GET'+'/users/self/verify'`,**ts 是秒级字符串**(REST 是 ISO 毫秒,别混) | 68 | REST 签名 | HMAC-SHA256(secret, **queryString+body**),sig 作**最后一个**参数;`X-MBX-APIKEY` 头 | 4 头 KEY/SIGN/TIMESTAMP/**PASSPHRASE**;prehash=`ts+METHOD+path+body`,**ts 是 ISO 毫秒** | 69 | 时间窗 | `recvWindow` 默认 5000ms,漂移→ **-1021** | 偏差 >30s → **50102** | 70 | 限频 | 权重 **~2400/min/IP**(读 `X-MBX-USED-WEIGHT-1M`);下单数另算 per-UID;429 退避,418=**IP ban** | **每接口独立**限频;子账户下单 **1000/2s**(撤单不计);429 可能只是撮合繁忙,退避别封 key | 71 | 用户数据流续期 | `listenKey` 有效 60min,**每 30min** PUT 续期;`listenKeyExpired`/-1125 须**重建+REST 对账** | 私有 WS 推送,断线后 **REST 对账**(orders-pending / positions) | 72 | 仓位模式 | 单向 BOTH / 对冲须传 `positionSide`;`reduceOnly` vs `closePosition` 互斥 | `net` / `long_short`(对冲须 `posSide`);先查 `account/config` 的 `posMode` | 73 | 精度 | 用 `tickSize`/`stepSize`/`MIN_NOTIONAL`(**别用 pricePrecision** 取整),来自 `exchangeInfo` | `sz` 是**合约张数**(非币/U),用 `ctVal`/`lotSz`/`minSz`,来自 `public/instruments` | 74 | 5xx 安全 | **5xx≠确定失败**,订单状态未知;凭 clientOrderId **查证再决定**,严禁盲目重发 | HTTP 200 仍可能 `code!=0`;批量看 `data[i].sCode`;429 可能是撮合繁忙 | 75 | testnet | REST `testnet.binancefuture.com` / WS `fstream.binancefuture.com`,**key 独立** | 模拟盘 REST 加头 `x-simulated-trading:1` + 专用 demo key;WS 用 `wspap.okx.com` | 76 77 > ⚠️ 端点/限额/min notional 都是**移动靶**,骨架里一律设为可配置,实时以 `exchangeInfo`(Binance)/ `public/instruments`(OKX)校验,**不硬编码**。 78 79 ## 通用可靠性清单(逐项落地) 80 81 - [ ] **重连退避+抖动**:`delay = rand(0, min(cap, base*2^attempt))`,base≈0.5~1s、cap≈30~60s;**成功后 attempt 清零**;连续失败 N 次告警。绝不裸 `while(true)` 立即重连(雪崩+封 IP)。 82 - [ ] **心跳看门狗**:维护 `last_rx_ts`(用 `monotonic()` 非墙钟),`now - last_rx_ts > 心跳间隔×2~3` 即判死强制重连;ping 发出还要确认收到 pong。防 TCP 半开「假死」。 83 - [ ] **重订阅**:声明式「期望集合 → 收敛」,重连后整集重订并**校验 ack**;重订阅突发也走令牌桶,别一次几百条撞限频。 84 - [ ] **序列缺口重快照**:`next == prev+1`(或交易所衔接规则);缺口→丢弃增量→重拉 snapshot→重放缓冲增量;**重快照本身也要退避+限频**(防死循环);支持 OKX/Kraken CRC32 checksum 主动比对。 85 - [ ] **本地订单簿**:先订增量入 buffer→拉 snapshot→丢弃 `lastUpdateId` 前的增量→衔接;`qty==0` 删档不置零;价格转**定点整数**当 key(防浮点精度);定期 checksum 兜底。 86 - [ ] **令牌桶限频**:按 **weight 非请求数**计费,卡 80% 上限;读响应头已用权重做闭环;多进程共享 IP 需跨进程共享桶(如 Redis);下单 rate 与请求 weight 是两套独立配额。 87 - [ ] **时钟漂移**:周期拉 server time、扣 RTT 单程估 offset、监控漂移告警;签名统一用校准时间;`recvWindow` 别设太大(放弃重放保护)。 88 - [ ] **幂等下单**:每单唯一 `clientOrderId`;超时**先按 cloid 查单**再决定是否重发;撤改单同样幂等+查证。 89 - [ ] **错误分级**:瞬时可重试(超时/5xx/429/维护)退避重试;业务致命(余额/参数/签名/权限)立即上报不重试;**下单超时=不确定**走查证路径。显式映射表,别一刀切。 90 - [ ] **5xx 安全**:5xx/超时**绝不当确定失败**——可能已成交,盲目重发=双倍仓位;凭 clientOrderId 查证真实状态再动作。 91 - [ ] **优雅关闭**:捕 SIGTERM/SIGINT,有序停:拒新意图→处理在途挂单(撤/交接)→退订关 WS→flush 日志/落盘(last seq、簿快照)→释放句柄;设超时兜底强退+告警。 92 - [ ] **testnet/live 切换**:endpoint+key 按环境物理隔离,单一 `ENV` 切换,**默认 testnet**,live 须显式声明+醒目告警;日志打印当前环境。 93 94 ## 输出格式 95 96 ### 生成的连接器骨架结构 97 98 ``` 99 exchange_connector/ 100 ├── config.py # ENV 枚举、endpoint 映射(testnet/live)、令牌桶配额(标 TODO 以 exchangeInfo 为准) 101 ├── credentials.py # os.environ 读 key/secret/passphrase,fail-fast,mask() 脱敏 102 ├── clock.py # server time 同步、offset 维护、漂移告警 103 ├── ratelimit.py # 按 weight 计费的异步令牌桶 104 ├── ws_market.py # 行情 WS:合并流订阅 + 期望集合 + ping-pong 看门狗 + 退避重连 + 重订阅 105 ├── orderbook.py # snapshot+增量衔接、序列缺口检测、qty==0 删档、checksum 106 ├── ws_user.py # 用户数据流:listenKey 续期 / OKX login + 断线后 REST 对账 107 ├── rest_client.py # 签名、下单(clientOrderId 幂等)、5xx 查证、错误分级映射表 108 ├── reconnect.py # 指数退避+满抖动、心跳看门狗(monotonic) 109 ├── shutdown.py # SIGTERM/SIGINT 优雅关闭 110 └── README.md # 跑起来需要哪些 env、testnet→live 切换步骤、TODO 清单 111 ``` 112 113 > 实际可按语言(Python 异步 / C++)和「只要行情」需求裁剪。每个易变项标 `# TODO`,不写死。 114 115 ### 连接器自检清单(交付时附上) 116 117 一份逐条勾选的 Markdown 清单,覆盖上面「通用可靠性清单」全部条目 + 该交易所要点表里的命中项,标注**已实现 / TODO / 不适用**,让用户(或 code-reviewer)一眼看清地基哪里还漏。 118 119 ## 安全与免责 120 121 - **密钥安全(最高级)**:绝不在骨架里写死任何真实 key/secret/passphrase——一律 env 注入 + fail-fast + 日志脱敏。用户要你「直接填上密钥」时**拒绝**,只给注入位。最小权限 + IP 白名单是即使泄露也限损的纵深防御。 122 - **testnet 先行**:任何下单/续期/错误流程先在测试网跑通;骨架默认 testnet,切 live 须显式确认。测试网深度浅、成交假,别拿它的滑点当实盘验证。 123 - **这是工程脚手架,不保证盈利**:connector-forge 锻造的是**可靠的地基**,不含也不负责策略 alpha、信号或调参——那是策略层的事(本 skill 明确不做)。 124 - **低延迟需配合 latency-audit**:连接器有 `tick→signal→order` 热路径(TCP_NODELAY、连接复用、避免热路径堆分配/锁/文本 JSON)。本 skill 只提醒「记得过一遍」,微秒级尾延迟体检和 `文件:行` 定位交给 **latency-audit** skill。 125 - **高危提醒**:切 live、改 IP 白名单、动实盘下单/风控逻辑前,先隔离测试 + 备份;这些都是会动真金白银的操作。