研究与验证
错误可能出现在哪里,我们如何应对。
下面按实际顺序画出系统化流程中可能出错的四个环节。每一步都说明可能出现的错误,以及目前已有的控制措施。
数据与时点
规则只能使用决策当日可知的信息,并按明确的执行时点与成交假设评估。
选择一个步骤,查看错误可能出现在哪里以及我们如何应对。
-
步骤 01 · 可得信息
错误可能出现在哪里
缺失或修订的数据
数据供应商可能延迟发布、事后补缺,或修订决策已经使用过的数据行。
我们如何应对
使用前记录修订
每次日度更新都与它所替代的上一版本比较,所有被修订的数据行都在数据投入使用前记录下来。
详情
记录下来的修订会经过人工审阅,而不是自动采用,因此延迟补缺和数据改动在影响决策之前都是可见的。
-
步骤 02 · 决策截止点
错误可能出现在哪里
尚不可知的信息
规则可能用到了决策当日尚未公布的价格或申报文件。
我们如何应对
有日期标注的输入
价格读取自单一的、有日期标注的发布版本。对于使用基本面数据的研究,申报文件以有日期、一次写入的快照保存,这一做法自 2026 年 10 月开始。
详情
之后的研究看到的是每个快照当时已知的内容。2026 年 10 月之前的基本面历史只带有单一的截止日期,这是使用这些数据的任何研究都需声明的局限。公开回测只使用 ETF 价格数据,因此快照控制与它无关。
错误可能出现在哪里
单位与调整
研究用价格经过分红和拆股调整,因此研究中的仓位并不等于经纪商实际持有的股数。
我们如何应对
只换算一次,然后取整股
研究仓位依据决策日的调整后价格和未调整价格,只换算一次为经纪商的股数单位,且仅在生成订单时取整。
详情
若任一价格缺失或无效,换算会拒绝继续。把调整后单位与未调整单位混为一谈会错报仓位,因此在这唯一一步之后两者绝不混用。
-
步骤 03 · 下一交易日执行
错误可能出现在哪里
以不可能的价格评估
以决策当时不可能成交的价格来评估,会高估规则本可获得的收益。
我们如何应对
下一交易日执行假定
基于截至某日收盘数据作出的决策,假定在下一交易日开盘执行;模拟交易的成交每个交易日都与这一假定核对。
详情
公开回测全程采用这一假定。模拟交易遵循相应的开盘单流程;观察到的模拟成交与假定价格进行比较,而不是预设二者一致,也不暗示成交价或结果相同。
研究偏差
标准在实验运行之前设定,失败的尝试保留在记录中;公开回测如实标注为样本内。
选择一个步骤,查看错误可能出现在哪里以及我们如何应对。
-
步骤 01 · 预设标准
错误可能出现在哪里
反复试验
在同一段历史上测试许多变体并保留最好的那个,容易将偶然表现误认为有效信号。
我们如何应对
事先设定标准
实验在运行前就声明它的规则和通过标准;失败的思路被关闭,而不是反复调参直到通过。
详情
被关闭的实验也包括那些仅差一点未达标准的。尝试过的内容及其结果,与最终保留下来的结果一并存档。
-
步骤 02 · 实验
错误可能出现在哪里
样本内拟合
在一段历史上拟合规则和权重,再在同一段历史上展示,描述的是拟合程度,而不是任何预测。
我们如何应对
在所展示的历史上拟合,并如实说明
公开回测的规则研究和风险份额拟合都使用了同一区间内的数据。它作为对方法的描述呈现,而不是作为经样本外验证的证据,因为这项验证尚未进行。
详情
尚无未参与研究和调参的独立验证样本,同一段历史也已用于多项组合研究。自 2026 年 6 月起运行的模拟交易是对规则的持续评估;目前尚未公开模拟交易业绩。
-
步骤 03 · 保留或关闭
错误可能出现在哪里
选择效应
只报告幸存的策略、标的或区间,会掩盖那些本应为结果加上限定的失败。
我们如何应对
失败保留在记录中
已退出的策略和已关闭的实验保留在记录中,公开的结果会说明它遗漏了什么。
详情
公开回测将今天的规则适用于整个历史,因此它的构成反映了哪些研究幸存下来;其回测方法说明对此有明确交代。
-
步骤 04 · 记录结果
错误可能出现在哪里
混用或未标注的结果
未区分回测与模拟交易口径,或未说明数据来源,可能导致误读。
我们如何应对
每个数字一个标注
每个数字都分别标注为回测 BACKTEST 或模拟交易 PAPER,并附数据截止日期;两类业绩不会合并为同一个数字。
详情
首页图表是回测,并标注为样本内。目前尚未公开模拟交易业绩;日后公开时将标注为 PAPER,并与任何回测分开展示。
执行差异
规则想要的、实际发送的和实际成交的,是三份分开保存的记录,并在每个交易日对账。
选择一个步骤,查看错误可能出现在哪里以及我们如何应对。
-
步骤 01 · 目标仓位
错误可能出现在哪里
记录不完整,难以定位差异
规则想要的、实际发送的和实际成交的三者可能各不相同;如果只记录其中一项,就无法分辨差异来自哪里。
我们如何应对
三份记录,分开保存
每个交易日都把目标、订单和成交作为独立记录保存,使每项差异都能被定位,而不是靠推断。
详情
目标是规则要求的仓位,以经纪商股数单位表示,经过「数据与时点」中所述的唯一一次换算,在任何订单存在之前就已保存。
-
步骤 02 · 订单
错误可能出现在哪里
与目标不同的订单
整股取整、未通过的交易前检查或被取消的订单,都意味着发送的内容与想要的不完全一致。
我们如何应对
开盘前检查,按实际发送记录
订单在开盘前以试运行方式通过交易前检查;若检查未通过,当日不交易;实际提交的内容作为独立记录保存。
详情
交易前检查涵盖购买力、可负担性和杠杆。订单被取消或仅部分成交的交易日,按已确认的成交对账并如此标注,而不是假定已全部完成。
-
步骤 03 · 模拟成交
错误可能出现在哪里
模型成交与成本
回测假定以模型价格和成本成交;实际订单可能部分成交、延迟成交或以不同价格成交。
我们如何应对
模型成本,观察成交
研究中按固定的半个价差加经纪商佣金表计费;模拟交易的成交、费用以及相对模型价格的滑点每个交易日都记录在案。
详情
未对市场冲击建模。模拟交易的成交在真实市场数据上模拟,没有资金承担风险,因此不体现真实资金会产生的冲击;模型成本与观察成本的比较是对模型的检验,而不是关于真实交易的证据。
-
步骤 04 · 对账核验
错误可能出现在哪里
无人察觉的差异
部分成交、被取消的订单或与费率表不一致的费用,可能一直留在账本中无人检查。
我们如何应对
每个交易日对账
目标、订单和成交当日即与经纪商自身的记录对账,经纪商费用按每笔订单与实际收取的金额核对。
详情
对账只记录已发生的事实,从不生成或提交订单。未通过验证的交易日记为错误而不是结果,差异在生成任何报告之前都会被调查。
可追溯性
交易只从有版本记录的发布版本、基于有日期标注的输入运行,每个公开数字都能追溯到它的来源记录。
选择一个步骤,查看错误可能出现在哪里以及我们如何应对。
-
步骤 01 · 版本化代码
错误可能出现在哪里
无版本记录的变更
在结果与其复现之间发生变化的代码,使结果无法追溯。
我们如何应对
固定版本的发布
交易只运行有版本记录、发布后不再改动的代码版本,每个版本都记录了回滚目标。
详情
相同的输入产生相同的决策。这是软件的一项属性,不是关于未来收益的陈述。
-
步骤 02 · 配置
错误可能出现在哪里
悄然偏移的配置
子策略、预算份额或参数在没有记录的情况下被改动,会改变无人打算触及的决策。
我们如何应对
经审核、有版本、有日期
配置与代码一同纳入版本控制;配置变更先提出建议,连同明确的生效日期确认后,再与代码一同发布。
详情
新增或退出一个子策略是对组合配置的一次经审核的变更。配置评审未通过时,沿用原有配置。
-
步骤 03 · 有日期的输入
错误可能出现在哪里
无法复现的输入
基于此后已被修订或覆盖的数据作出的决策,无法重建或核查。
-
步骤 04 · 决策
错误可能出现在哪里
悄然发生的回归
系统其他部分的改动改变了无人打算触及的决策。
我们如何应对
发布前测试,发布后观察
每项变更在发布前经过审阅和测试,随后在它的第一个模拟交易日中观察并对账,之后才视为稳定。
详情
重放检查根据记录的输入重建近期决策,并与实际作出的决策比较。发布前的审阅与测试和部署后的观察是分开的;只有两者都完成,变更才算稳定。
-
步骤 05 · 报告
错误可能出现在哪里
与记录脱节的报告
公开数字不再能对应到它的来源记录,或者更正覆盖了最初发布的内容。
我们如何应对
数字对应记录
日度和月度对账文件把每个仓位和数字都对应到经纪商记录和数据来源;更正在原处进行并附可见说明。
详情
更正保留原始发布日期并附加可见的修订说明;没有任何内容会被悄悄替换。
本页描述的是今天已有的控制措施。对于近期才开始或仅部分覆盖的控制,均注明范围和日期。本页内容不构成投资建议;Quantcore Labs 不管理客户资产。