第七部分 · 把研究变成可运行项目 · 第 47 章

市场中性模拟盘: 把策略放进真实时间

回测把多年历史压缩成几分钟,模拟盘却强迫系统按真实时间等待。市场中性还多了一本对冲账:Beta、基差、保证金和现金每天都在变化。这一章先搭出模拟盘,再跟着它过完一周,让数据迟到、信号为空、涨停买不到和盘后对不到账这些现实问题逐个出现。

主线七 本部分第 2 / 5 章

本部分的问题:怎样让研究穿过代码、模拟盘、真实订单和人的情绪,仍然保持可信?

读完后,你会完成两类实战,并知道何时推进、何时停手、怎样复盘。

读完这一章,你会明白

  • 市场中性模拟要同时记四本账:股票多头、对冲工具、现金保证金和总净值,少一本就看不清全貌。
  • 对冲比例、基差、换月、保证金和归因,共同决定策略是否真的接近中性,而不是名字叫中性。
  • 模拟盘的第一目标是验证真实时间流程跑得稳不稳,不是证明短期收益好不好看。
  • 数据延迟、空信号、涨跌停未成交、成本偏差和对账错误——这些问题只有放到真实节奏里,才会自己浮出来。

1. 做一个市场中性模拟盘

金融现场 1.1. 模拟盘第三天,对冲账户先发来保证金提醒

一个市场中性模拟盘前两天运行完美,第三天多头上涨、期货对冲也亏损,账户同时出现两边现金压力。研究者第一反应是“组合不是赚钱了吗”,随后才发现股票浮盈不能立刻替代期货保证金,账面净值和可用现金不是同一个变量。

回测常把所有资产塞进同一个无摩擦钱包,真实账户却分着现货、衍生品、保证金和待交收资金。总资产为正,某个子账户仍可能先断粮;模型方向最终正确,也可能在资金调拨前被迫减仓。

模拟盘的意义就在于让这些小事故发生在真钱之前。每天不仅记录收益,还要记录可用资金、保证金占用、基差和对账差异。策略能赚钱只是入场券,现金能在正确时间出现在正确账户,系统才算真的会走路。

1.2. 先把账本结构画出来

目标一句话:搭一个教学版市场中性模拟。多头部分使用一个股票多因子组合,对冲部分使用股指期货或指数 ETF 的简化替代。每月调仓,每日估值,账本上逐日记录:股票多头收益、对冲收益、总收益、净暴露、回撤和成本。

先说一个降级方案。如果没有股指期货数据,可以先用指数收益做纸面对冲:比如多头组合 100 万,用中证 500 指数收益的 -100 万名义敞口近似对冲。这样不能模拟基差和保证金,但能帮你把 Beta 对冲的想法先跑通——用工程师的话说,先写个内存版 mock 把接口逻辑调通,再接真实数据源。

项目边界必须写成文档:是否使用真实期货合约,是否考虑保证金,是否考虑基差,对冲比例如何估计,调仓频率多少,成本如何扣。边界越清楚,结果越可解释;边界含糊的回测,只能输出含糊的结论。

版本对冲收益怎么算能学到什么缺什么
指数简化版对冲收益 = -对冲名义 × 指数收益率理解 Beta 和净暴露没有基差、合约乘数、保证金、换月
真实期货版空头盈亏 = -合约张数 × 合约乘数 × 期货点位变化理解真实对冲账本需要期货合约和保证金数据

建议先做指数简化版,确认多头 Alpha 和 Beta 概念;再做真实期货版,把基差、换月、保证金和现金压力加进去。两版结果差异越大,越说明真实对冲的细节重要——那些差异就是你的学费清单。

1.3. 对冲可以削浪,选股才是船

多头组合可以沿用指数增强项目的因子模型:每月选出分数最高的一批股票,等权或按优化权重持有。但关注点变了:指数增强里你关心能不能跑赢指数,市场中性里你关心多头相对市场有没有 Alpha,而不是跟着市场一起涨跌。市场涨它也涨,那不叫本事,那叫 Beta。

多头组合的行业和风格也要管住。举个反例:多头全仓小盘成长股,对冲工具却是大盘指数——平时看着没事,一旦市场风格从小盘切到大盘,两边的差价会被一下撕开,对冲误差大得吓人。市场中性不是随便买一篮子股票,再随手空一个指数。

还有一个必须养成的习惯:记录多头组合的 Beta。你可以用历史回归估计组合相对基准的 Beta,也可以先用 1 做简化。简化本身没问题,但报告里要白纸黑字写清楚:Beta 是假设的还是估计的,这两件事差着十万八千里。

对冲错配,等于悄悄留了一个“潜仓”

多头一篮子小盘股,空头却挂着大盘指数——表面上两头都有头寸,风格一切换,没被覆盖的那部分立刻裸奔。这个差价就是你的隐藏仓位:它不写在仓位表里,却天天在净值里发言。检查中性的第一步不是看杠杆多高,而是问多头和空头在风格、行业上到底长得像不像。

1.4. 选哪把伞,看你站在哪片雨里

最常见的对冲工具是股指期货,如对应沪深 300、中证 500、中证 1000 的期货合约。选哪个,取决于多头组合更像哪个指数:如果多头是中证 500 股票,用中证 500 期货更合理,两边对得上,削波效果才好;拿配对错的工具对冲,等于大雨天打一把满是洞的伞。

如果用期货,一串新概念会立刻上岗:合约乘数、保证金、合约到期、换月和基差。最直观的一个差别是:期货价格和指数点位不同,它有自己独立的脾气,所以对冲收益不是简单的负指数收益。

教学项目分两版走最稳:第一版用指数收益简化对冲,理解净 Beta;第二版加入真实期货价格和换月,亲眼看看基差和保证金如何改变结果。先把原理走通,再上真账本,反过来容易被细节淹没、原理还没建立。

1.5. 空多少,是一道算术题

对冲比例决定你要空多少期货。最简单是按名义金额一比一对冲: 股票多头 100 万,空 100 万指数期货。更细一点,按 Beta 调整: 如果多头 Beta 是 1.2——市场涨 1% 它倾向于涨 1.2%——那股票 100 万需要空 120 万指数名义价值,才能把方向风险压平。

注意

注意,Beta 不是刻在石头上的常数。组合换仓、市场风格变化、个股波动变化,都会让 Beta 变化。实盘里会定期估计和调整对冲比例,但调整太频繁也会增加成本——精度和成本,永远是一对老冤家。

模拟盘要每日记录净暴露。净暴露接近 0,说明大盘方向风险被压低;净暴露长期偏正或偏负,说明对冲不完整——你以为削平了浪,其实还踩着跷跷板。

Beta 对冲写成公式也很简单: 对冲名义 = 股票多头市值 × 组合 Beta。若只空 100 万,组合仍然留下约 20 万的正市场暴露——市场大涨大跌时,这 20 万会替你发言。

如果用股指期货,还要把名义换成合约张数。假设期货点位 6000 点,合约乘数 200 元/点,一张合约名义价值是 6000 × 200 = 120 万元。要对冲 120 万名义,理论上空 1 张;要对冲 60 万名义,就会遇到不能交易半张合约的取整问题——理论很光滑,合约是一格一格的。

“对冲名义 = 多头市值 × Beta”落到账本长什么样?配套的 examples/ex04_neutral.py 每天就记这么几行:

examples/ex04_neutral.py
bench_ret = bench[t] / bench[t - 1] - 1
long_ret  = 多头组合的同日收益
hedge_pnl   = -BETA * bench_ret                 1
neutral_ret = (long_ret + hedge_pnl) / 2        2
neutral_nav.append(neutral_nav[-1] * (1 + neutral_ret))
# 账本同日还记两件事:
#   净暴露 ≈ 多头Beta - 对冲Beta
#   保证金占用 = 空头名义 × 12%                  3
  1. 对冲盈亏与大盘反号:这就是公式“对冲名义 = 多头市值 × Beta”的日记账版。大盘涨,空头亏;大盘跌,空头赚——方向和 long_ret 正好对打。
  2. 合并后的中性收益(教学口径下多空各一半权重):东西不多,就俩盈亏相加。对冲能削浪的原理,回头看就只是这两行;复杂的是恰恰相反——Beta 估错、基差漂移、保证金占用。
  3. 千万别漏掉这两笔账:净暴露告诉你方向风险还剩多少;保证金是被锁走的钱,是对冲的直接代价。模拟盘(就像这个脚本)把三件事逐日记下来,未来的你才知道风浪销在哪里。

跑一遍就能看到本章说的三件事同时发生:波动从约 17% 压到 5% 上下,但没有压到 0;对冲后的涨跌全部来自选股超额和 Beta 残余,与大盘方向基本脱钩——中性不是稳赢魔法,只是把方向这根线剪断了。

Beta 对冲实验台:推对冲比例滑杆,看净暴露和波动率怎么变——“对冲是道算术题”就在这里玩。

1.6. 期货自己的脾气

如果使用真实股指期货,就会遇到基差:期货价格与现货指数之间的差。期货价格可能高于或低于现货指数,到期前会逐步收敛到 0。做空期货对冲时,基差变化会直接影响收益,不管你的股票选得有多好。

期货合约到期需要换月。你要决定什么时候从近月换到下一个合约,换月价格如何记录,是否产生额外成本。不同换月规则会改变回测结果——换月不是可有可无的簿记细节,它就是策略的一部分。

很多市场中性产品的阶段性表现,很大程度上受基差影响。模拟项目如果能把基差收益单独拆出来,你会更清楚策略赚的是选股,还是对冲工具带来的额外收益或成本——是顺手递糖,还是悄悄收走。

举个数字例子感受基差。现货指数从 6000 跌到 5940,跌 1%;期货从 5960 跌到 5920,只跌约 0.67%。如果你用期货空头对冲,股票多头可能亏接近 1%,但期货空头只赚 0.67%——中间差异去哪了?就是基差变化和跟踪误差的一部分。纸面上完美的对冲,落地时总会漏水。

所以,市场中性报告里最好把股票多头收益、期货空头收益、指数收益和基差变化分开列。只看总净值,很难知道对冲到底有没有按预期工作——那条曲线是把好几本账揉成了一张纸。

1.7. 中性组合也会缺钱

期货一上来,现金管理立刻变成主角。期货对冲需要保证金:股票多头占用资金,期货空头占用保证金,账户还要留现金应对亏损和追加保证金。一个看起来净暴露为 0 的组合,现金管理仍然重要——方向风险可以对冲掉,现金流风险对冲不掉。

模拟时要逐日记录保证金占用和可用现金。如果市场波动导致期货亏损,保证金需求可能增加。即使股票多头在赚钱,现金流时点也可能紧张——账是赢的,钱是紧的,两件事可以同时成立。

这一步能让你理解为什么衍生品策略不是只看收益曲线。保证金、现金和强平规则,平时隐身,极端行情里会一起冲上前台,直接决定策略能否扛过极端行情——特别是路径最难看的那一段。

账户项目初始指数上涨 1% 且你空 1 张期货
股票多头市值1,000,000约 1,010,000
期货空头名义1,200,000亏约 12,000
保证金占用,按 12%144,000仍需维持,亏损会减少可用现金
账户现金预留 200,000减少约 12,000,还要能覆盖追加保证金

这个表说明,即使股票多头赚钱,期货空头也可能带来现金损失。市场中性不是只看总收益,还要看现金和保证金能不能撑住路径。

保证金有自己的习性:天晴安静,风暴跳涨

保证金不是一个固定数字,而是随行情呼吸的活物:波动一大,浮亏先吃现金,比例还可能上调,两股力量同一个方向收紧。回测里把它当常数,等于假设风暴天保证金和晴天一样温柔——这是衍生品回测最常见的低估。所以别只记一个平均值,要把保证金占用的逐日轨迹画出来,看它最坏的时候探到多深。

账是赢的,钱是紧的:中性也要留谷仓

净暴露为 0 不代表现金无忧:股票占一笔,保证金锁一笔,追加保证金看的是路径不是终点。账户里那笔预留现金不是闲置浪费,是谷仓——平时嫌它利息少,极端行情里它是你唯一能立刻拿出来的东西。模拟盘逐日记保证金和可用现金,练的就是这门“晴天存粮”的手艺。

市场中性组合的三本账:多头、空股指、保证金 ① 多头市值 一篮子股票的市值 100 万 赚的是选股 Alpha 市值每天随涨跌变 ② 空股指名义 对冲金额 = 市值 × Beta 100 万 × 1.2 = 120 万 把大盘的涨跌对冲掉 随多头市值每天重算 ③ 保证金占用 120 万 × 12% = 14.4 万 名义 占用 备用 指数涨 10% → 空仓多亏 12 万 按 Beta 对冲 × 12% 占用 三笔账每天对一遍,爆仓前它们会先说

中性组合每天要对三本账:多头股票值多少钱、该空多少名义的股指(市值×Beta)、这些名义占用多少保证金(名义×12%)。占用只是名义的一小条,所以指数一涨空仓亏得很快——三笔账每天对一遍,爆仓前它们会先说。

1.8. 把总收益拆回零件

每天收益可以拆成三部分: 股票多头收益、期货对冲收益、现金和费用。想更细,可以继续拆行业、风格、选股和基差。拆完之后,你能清楚看到市场中性到底中性在哪里、不中性又在哪里。

归因是用来抓说谎的。如果总收益很好,但主要来自期货基差收益,那它不是纯选股 Alpha,是基差行情赏的饭;如果总收益很差,但股票多头跑赢基准、只是对冲成本过高,问题可能在对冲工具,药方是换工具或降成本,而不是推翻选股模型。不看归因就开药方,迟早医错部位。

归因报告要按月输出,并且累计着看。市场中性策略的错误通常不是一天看出来的,而是在多个阶段慢慢暴露: 对冲偏差一点点积累、成本一点点上升、风格一点点反转、基差一段段不利。月度归因表就是你的异常监控大盘。

组合财报要搭成阶梯,别揉成一张纸

总净值只是阶梯最顶上一格,往下要逐层拆:股票多头赚多少、期货对冲赚多少、基差送了多少、现金和费用拖了多少。只看顶层,像只看总分的学生——考砸了不知道哪科丢的分。层级搭好之后,每一次回撤都能落到一个具体零件上,药方才有地方开。

中性组合的一天收益,拆回三个零件 当日总收益 = 股票多头收益 + 期货对冲收益 + 现金和费用;想更细,再拆行业、风格、选股和基差 股票多头 +0.40% 期货对冲 −0.25% 现金和费用 −0.03% 当日合计 +0.12% 选股赚的 对冲亏的 每天固定扣 落进口袋的 总收益好,但主要来自期货基差 → 不是纯选股 Alpha,是基差行情赏的饭 总收益差,但多头跑赢、对冲成本过高 → 药方是换工具或降成本,不是推翻选股模型 归因是用来抓说谎的:月度归因累计着看——中性策略的错误,是在多个阶段慢慢暴露的

每天收益可以拆成三个零件:股票多头 +0.40%、期货对冲 −0.25%、现金和费用 −0.03%,合计 +0.12%。归因用来抓说谎:收益好但主要来自基差,那是行情赏饭;收益差但多头跑赢、只是对冲太贵,药方是换工具降成本,不是推翻选股模型。

1.9. 中性两个字要拿证据说话

市场中性模拟要看的风险清单比股票策略长:年化收益、波动、最大回撤、夏普、月度胜率、净暴露、总杠杆、保证金占用、对冲误差、基差贡献和交易成本。每一项都对应一种可能的死法,缺一项就有一处盲区。

还有一个一句话的证伪检查:看策略净值与大盘的相关性。如果策略号称市场中性,但净值和大盘高度同涨同跌,无非两种可能:对冲没有做好,或者股票组合本身暴露太强。无论哪种,中性两个字都要先打个问号。

最后上压力测试,用假想但合理的情景扎它几针。假设大盘一天跌 5%,期货基差突然扩大,股票多头流动性变差,组合会怎样?这些情景比普通历史波动更能暴露问题,因为它精准打击你账本最脆弱的几个接口。

1.10. 让时间只朝一个方向走

模拟盘应按真实时间运行。每月固定日期调仓,每天收盘后估值,逐日记录当日股票收益、期货收益、现金、保证金和净值。不要事后补数据再假装当时运行——那是拍回忆录,不是做实验,未来函数会顺着缝隙爬满整个项目。

每次调仓要生成订单清单和对冲清单。即使不实盘,也要假装自己要下单,检查交易单位、涨跌停、停牌和资金是否足够。这个仪式看似多余,却是回测和实盘之间最重要的一次彩排。

模拟盘至少运行几个月。短期结果不重要——样本太短说明不了什么;重要的是流程是否稳定,归因是否清楚,风险指标是否按预期更新。模拟盘的价值是养习惯、验流程,不是晒收益。

1.11. 先学会认输清单

这个项目给不出实盘许可证,但可以给一张认输清单。如果你还不能一句话解释基差是什么、怎么影响收益,不要实盘市场中性;如果你不知道保证金如何变化、什么情况下会追加,不要实盘;如果你只能看到总净值,看不到股票和对冲分别贡献,不要实盘。

还有一种更要命的错觉:策略只在简化指数对冲中好看,加入真实期货和成本后变差。这种时候也不要实盘。简化模型是学习工具,是脚手架,不是真实收益承诺——脚手架拆掉之后楼还站不站得住,才是问题本身。

最后说实话:市场中性看起来比股票多头稳,但结构更复杂——两条腿走路,每条腿都有自己的坑。个人学习可以做模拟和纸面回测,实盘要非常谨慎,先把看不懂的地方全部消灭,再讨论本金的事。

2. 第一次跑模拟盘的一周

模拟盘不是过家家。回测是把历史按快进键跑一遍,模拟盘是把系统扔进真实时间里,跟着时钟一天天走。而真实时间的脾气,你会在这一周里领教个遍:周一数据迟到,周二信号文件空着,周三目标股涨停,周四成本比假设高,周五对账出错。第一次跑模拟盘,目标不是赚钱,是看系统在真实节奏下会出什么问题——这是给你的系统做压测。

2.1. 数据没有按时到

你的计划很美好:每天晚上八点更新数据、生成信号。第一天,现实就给你上课——数据源延迟,部分股票的收盘价缺席。如果脚本不做缺失检查,闷头往下跑,模型就会用残缺的数据生成一本正经的错误信号。

正确姿势是给流程装一道闸:先跑数据检查,缺失率超过阈值就停止生成信号,记录日志并发出告警。宁可今天不交易,也不要拿坏数据交易。前者是少做一单,后者是带着错误认知做一单。

模拟盘第一课:数据准时、完整,不是这个世界的默认配置。实盘系统的第一原则,是先确认输入健康,再谈模型输出——输入不对,模型越聪明,错得越自信。

模拟盘第一周:五个事故,一次复盘 周一 数据没按时到 应对动作 停机告警·记日志 周二 信号文件为空 应对动作 不交易·查日志 周三 涨停买不到 应对动作 涨停不买·记偏离 周四 成本比预期高 应对动作 分组查滑点·再改 周五 盘后对账 应对动作 对账到0.01元再下班 周末 写复盘 收尾 病历·药方都留档 本周末的事故清单:数据延迟 ×1 · 空信号 ×1 · 涨停未成交 ×1 · 滑点持续偏高 · 账实错位 ×1 一周只证明流程通了,证明不了策略有效 —— 模拟盘至少再跑几个月,才谈实盘

模拟盘第一周把回测里不会发生的事演了个遍:数据迟到、空信号、涨停买不进、滑点超标、账实错位。每条事故都要落成一条事先写好的处理规则,周末复盘把病历和药方一起留档——但一周只证明流程通了,证明不了策略有效。

回测第一天最容易踩的四个坑 幸存者偏差 拿今天的成分股名单 去测十年前的历史—— 等于把退市股全踢出去了 你看到的不是真实历史 未来信息泄漏 因子用了收盘后才发布的财报 ——那天交易时根本看不见它 回测收益 = 虚假的承诺 交易成本估低 佣金 + 印花税 + 滑点 + 大单对小盘股的冲击成本 小成本假设 = 大坑 过度拟合 反复调参数直到 2018-2022 收益最好——只是背下这几年, 不是学会了规律 样本外一眼就翻 这四个坑在回测章节里都有专节——今天在这里认出它们,明天就轮到你自己把它们写进断言里

第一天写回测最容易忘的不是代码,是这四个认知坑:幸存者偏差会把赢家的历史当历史读、信息泄漏会把收盘后的报表当成盘中可见、低成本会像给收益涂美颜、过拟合会把历史背下来。每一个都够单独出一章——这本书早就分别讲过,这里只是给第一天提个醒。

2.2. 信号文件为空

第二天,数据正常了。打开信号文件——空的。排查下来,是股票池过滤太严格:剔除停牌、剔除 ST、剔除低成交额、剔除缺失因子,几刀下来,剩不下几只股票了。

这不是技术小插曲,是策略级的抉择时刻:如果实盘里信号为空,系统该怎么办?保持原仓位?清仓收手?还是干脆停机?三个动作风险完全不同,而市场不会等你开会讨论。规则必须提前写好。

模拟盘第二课:任何异常输出都得有预案。空信号、极端信号、重复信号、数量太少——每一种都要有事先定义好的处理规则,临场拍脑袋的不是策略,是骰子。

2.3. 目标股票涨停买不到

第三天,策略选中一只高分股票,买入信号很坚定。可它开盘后一路冲上涨停,封板不动。这时候如果你的模拟撮合仍然按目标价「成交」了——恭喜,你的模拟盘在现实里根本没发生这笔交易,只有回测里成交了。

于是你把规则改成涨停不可买:这笔订单未成交,现金保留在账户。结果也立竿见影——当天策略少买一只强势股,模拟净值和理想回测之间出现了第一条裂缝。这种裂缝,正是模拟盘要逼你看清的东西。

模拟盘第三课:交易限制会让真实组合偏离目标组合。偏离本身必须记录在案,否则下周你就开始困惑:实盘的曲线为什么和回测对不上?答案周三就写在日志里了。

2.4. 成本比预期高

第四天,模拟成交结束后你做了一件事:把这几天的滑点成本汇总统计。结果眉头一皱——平均滑点明显高于回测假设。往下查原因:策略买的小盘股本身成交额偏低,而目标订单占成交额的比例偏高,单子在自己拖动价格。

注意

注意,这时候不该做的动作是立刻回去改模型。先做成本分析:按股票成交额分组看滑点,按订单参与率看滑点;看清楚结构,再决定是加一道流动性过滤,还是降低单票权重。对症下药之前,先把脉。

模拟盘第四课:成本不是刻在石头上的常数,它会随规模和流动性变化。实盘前的成本估计,必须在模拟和小实盘里反复校准——一回校准不准,不等于永远不用校。

2.5. 盘后对账

周五收盘,你做盘后对账:现金、持仓、模拟成交、费用、净值,一项项核对是否一致。查着查着,发现一个刺眼的错位:一只股票卖出失败了,但内部的目标持仓表里,已经把它删掉了。

这个错位有多严重?如果不对账,下周系统会坚信这只股票已经不在持仓中——风险计算漏掉它,订单生成也漏掉它,一个幽灵误差从此在系统里自由生长。你要做的是修复账户模块:未成交的持仓继续保留在状态里,并在报告中明确标记偏离。

模拟盘第五课:对账是交易系统的底线。没有对账,系统的内部状态会慢慢偏离真实世界,像一台从不校准的仪器,用着用着就相信了自己的幻觉。

2.6. 写复盘

周末到了,坐下来写本周复盘。先声明一件事:这周收益多少,不重要。你要记录的是事故清单:数据延迟一次、空信号一次、涨停未成交一次、滑点持续高于预期、对账发现一次状态错误。收益曲线是不是好看,是这些记录的注脚而不是主角。

然后,针对每条事故写改进:增加数据缺失阈值、定义空信号处理规则、加入涨跌停成交限制、按流动性调整滑点模型、修复未成交持仓对账逻辑。事故清单是病历,改进清单是药方,两个都要留档。

模拟盘第六课:每一个异常,都是系统变稳的机会。只要你记录、定位、修正,它就不会白疼。这正是模拟盘存在的意义——让错误发生在免费的时候。

2.7. 模拟盘要跑多久

跑完这一周,可以上实盘了吗?不行。一周只能帮你看清流程问题,证明不了策略有效。至少跑几个月:经历日常数据更新和调仓,也经历节假日、停牌、市场上涨、下跌和系统异常——把这些全见过一遍,系统的底才摸到。

还有一条纪律:模拟期间不要频繁改策略逻辑。今天改个参数、明天换个规则,最后你将分不清表现到底来自原策略,还是来自你的不断干预。修 bug、补风控,随时欢迎;策略规则的变更,必须记录版本,像代码走发布流程一样。

记住

记住模拟盘的定位:它是把回测策略变成可运行流程的转换器。流程还不稳定之前,不谈实盘——桥还没做过载测试,就先别让车上。

2.8. 模拟盘报告应包含什么

模拟盘不是「跑起来就行」,它生成的报告应该能回答每一天发生了什么。至少包含这些栏目:每日信号生成状态、订单列表、模拟成交、未成交原因、持仓偏离、成本、净值、风险暴露、数据检查结果和异常日志。

还有一样最容易被漏掉的:人工干预记录。你有没有手动跳过某一天?有没有手动改过参数?有没有临时修改股票池?这些动作看着随手,其实都在改变结果,不记下来,复盘时你会忘了自己做过什么。

什么时候才有资格讨论小资金实盘?一个朴素的标准:当模拟盘报告能够稳定解释每一天发生了什么。哪一天系统做了什么、没做什么、为什么——都能说清,桥才算过了载测试。

小结

这一章的正文不是让你记住几个孤立名词,而是要把它们放回同一条因果链里。读完后,先用自己的话复述下面几条判断,再顺着“小节回看”检查是否能解释每一步。

  • 市场中性模拟要同时记四本账:股票多头、对冲工具、现金保证金和总净值,少一本就看不清全貌。
  • 对冲比例、基差、换月、保证金和归因,共同决定策略是否真的接近中性,而不是名字叫中性。
  • 模拟盘的第一目标是验证真实时间流程跑得稳不稳,不是证明短期收益好不好看。
  • 数据延迟、空信号、涨跌停未成交、成本偏差和对账错误——这些问题只有放到真实节奏里,才会自己浮出来。

小节回看

  • 1.1. 模拟盘第三天,对冲账户先发来保证金提醒
  • 1.2. 先把账本结构画出来
  • 1.3. 对冲可以削浪,选股才是船
  • 1.4. 选哪把伞,看你站在哪片雨里
  • 1.5. 空多少,是一道算术题
  • 1.6. 期货自己的脾气
  • 1.7. 中性组合也会缺钱
  • 1.8. 把总收益拆回零件
  • 1.9. 中性两个字要拿证据说话
  • 1.10. 让时间只朝一个方向走
  • 1.11. 先学会认输清单
  • 2.1. 数据没有按时到
  • 2.2. 信号文件为空
  • 2.3. 目标股票涨停买不到
  • 2.4. 成本比预期高
  • 2.5. 盘后对账
  • 2.6. 写复盘
  • 2.7. 模拟盘要跑多久
  • 2.8. 模拟盘报告应包含什么

自测

为什么市场中性项目要拆收益归因?

因为总收益里混着选股、对冲、基差、现金和成本好几股力量;不拆开归因,就分不清钱是哪部分赚的、哪部分亏的。

对冲比例为什么不能永远固定?

因为组合 Beta 会随持仓和市场不断变化;比例不调整,净暴露就可能悄悄偏离目标,方向风险又回来了。

模拟盘的第一目标是什么?

验证数据、信号、订单、成交、对账、报告这条流程在真实时间里稳不稳——先跑通流水线,再谈它产出的东西好不好。

信号文件为空时为什么不能临场猜?

因为保持原仓位、清仓、停止三种动作的风险完全不同,临场拍脑袋等于让情绪替你定规则;规则必须事先写好。

下一章为什么接在这里

从模拟盘到小实盘: 上线前必须检查什么

逐项核对数据、模型、交易、风控、日志和权限,再用可承受的小资金验证真实链路。