连接诊断:从网关到第一个 tick 的六步实测

连接诊断把一条 Rithmic 连接逐步走一遍——网关、系统、路由、认证、订阅、第一个 tick——并报告每一步测到了什么。它从不把某个原因指认为确定,可复制的报告中也不含任何密码。

Senzoukria · 文档 · 更新于 2026 年 9 月


位置

位置
经纪商连接 → 添加或编辑连接 → 第 3 步「凭据」,位于字段下方;按钮「开始诊断」(绝不自行运行)
探测合约
CME 上当前的 MNQ 近月合约,由日期计算得出——绝不写死代码
首个 tick 等待时间
10 至 30 秒,由系统心跳推导得出
网关探测超时
8 秒

它做什么

副标题说明了它的约定:「逐步走完整个连接过程,并报告每一步测到了什么。」各步骤完成一步显示一步;列表中缺少某一步,意味着链条在它之前就停住了。末尾的说明写着:「本诊断报告它测到的事实,并按发生频率列出可能的原因。它从不把其中某一个指认为确定:屏幕上看起来一模一样的拒绝,背后有过不同的原因。」

在向经纪商发出任何请求之前,先施加两道防护。探测合约若已过期会先刷新,因为一个失效合约会让订阅被接受却毫无数据——这正是授权壁垒的特征,而它其实并不是。另外还会检查 CME Globex 日历,因为清淡的数据流和坏掉的数据流在屏幕上看起来一样。

这次测量与它的上下文绑定:一旦你更改网关、系统名、用户名或密码,已显示的结果就被丢弃,因此屏幕绝不会对表单中已不存在的值给出结论。

各步骤

六个步骤,按顺序列出通过与失败时的措辞
步骤通过失败
网关可达网关已响应。网关没有响应。请检查 URL,以及是否有防火墙、VPN 或代理在拦截它。
系统已识别该网关服务「{system}」。「{system}」不在该网关所服务的系统之列。请获取实时列表,并选中你账户所在的那一个。
网关与系统匹配路由正确——该网关确实服务该系统,因此下面的拒绝不是路由引起的。该网关不服务该系统。无论凭据如何,登录都会被拒绝。
认证经纪商接受了本次登录。经纪商拒绝了本次登录:{error}
数据订阅经纪商接受了对 {symbol} 的订阅。经纪商拒绝了本次订阅:{error}
已收到第一个 tick{ms} 毫秒后收到第一个 tick。{seconds} 秒内没有任何 tick。

全部被接受却什么也没来

如果链条走到了最后一步却没有 tick 到达,面板会显示「全部被接受,却没有数据到来」,附上测到的事实,然后按发生频率排列可能的原因。已被本次测量排除的原因会被移除,而不是往后排:只有市场确实休市时才出现休市这一项,只有代码确实需要刷新时才出现合约过期这一项。始终保留两个原因——同一账号上另有会话在开,以及该账号可能未被开通此类数据,而后者只有经纪商能确认。

这一段以可以直接发出的话收尾:「请用这样的措辞询问你的经纪商:我的账号是否已开通第三方 API 访问?开通了哪些数据?在哪个系统名之下?」

复制、指南与局限

  • 「复制结果」会把一份纯文本报告放进剪贴板:网关、系统、代码、每一步的结果与细节、该网关所服务的系统、告警,以及无数据那一段。其中绝不含密码。
  • 变红的步骤会提供「从网关获取实时系统列表」或「告诉我该点哪里」,后者会在对应步骤打开分步指南。
  • 该诊断只在以 Rithmic 为后端的连接上可用。桥接连接(NinjaTrader、Quantower)没有这条六步链;它们的状态来自实时桥接快照。
  • 诊断通过只证明在那一刻、在探测合约上收到了第一个 tick;它不证明其他合约的授权,也不证明历史数据可用。

其他语言版本

常见问题

我打开向导时诊断会自动运行吗?
不会。它只在你点击时才开启自己的会话,而且它使用的是表单中的密码,绝不会从钥匙串重新读取。
为什么它测试的是 MNQ 而不是我的合约?
向导并不询问合约代码。探测使用 CME 上当前的 MNQ 近月合约,由日期计算得出,这样过期合约就绝不会让诊断去测量一个失效代码的沉默。