第 1 课
一次量化研究,到底要走多远?
从会随时间出现的九拍计数出发,认识从猜想、事件研究到规则与留出验收的完整路线。
有一天,蛙兄在股票 App 里翻看 K 线。
价格涨涨跌跌,看起来和平时没什么不同。可在几根 K 线的上方和下方,零零散散地标着一串数字:
1、2、3、4……8、9
“谁在 K 线上做数学题?”
蛙兄点开旁边的说明,发现这是一种从 1 数到 9 的技术计数。至于到底怎么数,不同软件可能还有不同答案。
为了后面的研究不再鸡同鸭讲,我们把课程里即将固定的这套规则叫作:九拍计数。它分为上行和下行两种,但两种都是从 1 数到 9,不是一个顺数、一个倒数。
蛙兄盯着“下行九拍”看了一会儿,突然冒出一个大胆的猜想:
如果一只股票已经走完了下行九拍,是不是说明它已经跌得差不多了?
要是每次都在下行九拍完成以后买入,会不会更容易赚钱?
理由也很简单。
抄底嘛。
蛙兄把这个想法告诉了蛙博士。
“你怎么知道那里就是底?”蛙博士问。
“都已经从 1 数到 9 了,还不能算跌到位吗?”
“当然可能跌到位了。”蛙博士说,“也可能只是数到了 9。”
蛙兄又看了看屏幕上的数字。
“所以,还是得测一测?”
“当然。”蛙博士说,“不过这次,我们不只想知道它在历史上有没有一点优势。我们还想看看,这个猜想能不能一步步变成一套说得清楚的买卖规则。”

上一次的量化闭环,没有白走
上一次,我们把虚构公司分成“代码带 8”和“代码不带 8”两组。
我们先把猜想和规则写清楚,再让 AI 读取数据、比较结果、查看分布、质疑差异,最后还打开了一段事前留下的数据。
这已经是一个真正的量化研究小闭环。
它帮我们回答的是:
某个固定特征,在这份历史数据里有没有出现表现差异?
九拍研究却多往前走了一步。
股票代码不会今天有 8、明天又没有 8。九拍则会随着每根 K 线变化,同一只股票还可能在不同时间出现多次。
更重要的是,我们不再只想知道“历史上有没有差异”,还想将这个差异一步步变成可以执行和回测的规则。
问的问题变了,研究要走的路自然也更长。

最小量化闭环不是没用的半成品。它能帮我们初步排除坏想法。当我们还想把一条弱规律变成可执行策略时,才需要继续补齐后面的路。
这次,我们会走过五段路
蛙博士没有把桌上的所有问题都塞给蛙兄。
他把它们收成了五段路。
第一段:先把猜想说清楚
“下行九拍完成后更容易反弹”,听起来已经像一个猜想。
但它里面的每个词都还需要继续追问:
什么叫下行九拍?怎样才算完成?“更容易”是与谁比?“反弹”又准备看多久?
如果这些规则没有在看结果以前固定,两个人口中的“九拍”可能根本不是同一件事。
所以,第一步不是让 AI 快点计算,而是先把猜想变成明确规则。
第二段:先假装每次都有钱
规则定好以后,我们会把历史上的每一次完整九拍单独拿出来看。
在这一阶段,我们暂时不管手里有多少钱,也不管同一天出现了多少次信号。每一次九拍都像拿到了一笔独立的虚拟资金,然后观察它之后发生了什么。
这当然不是真实账户。
我们这样做,只是想先把一个更基础的问题单独拎出来:
九拍之后的表现,与同一只股票在普通日期之后的表现相比,有没有值得继续研究的差异?
如果连这一步都看不到什么特别之处,我们就没必要急着往后堆叠更多规则。
如果数据中确实出现了一点值得继续检查的弱规律,它也只是拿到了下一张入场券,还没有变成一套策略。
第三段:再决定哪些情况买、什么时候卖
假如基础猜想值得继续,下一步也不是马上宣布“九拍策略完成”。
我们还需要回答两类问题。
第一类是:所有九拍都值得买吗?
我们会保持买入时点不变,再看看 MACD、相对成交量、市值和行业等当时已经知道的条件,能不能帮我们留下更值得研究的候选事件。
第二类是:买进以后,什么时候卖?
固定持有几天、等一个指标发生变化,或者在条件一直不出现时强制收尾,都需要被写成明确规则。
到这一步,我们才会得到一套能够继续进入账户回测的完整买卖规则。
第四段:把有限资金和交易成本加回来
前面把每次九拍都单独拿出来看,好像每次都有一笔新钱可以使用。
真的把交易排到同一条时间线上,情况就不一样了。
如果手里只有 100 点资金,前面的交易还没结束,后面又一口气来了几十个信号,我们不可能每个都买。
资金会被占用,机会会被错过,每次交易还会产生手续费,真实成交价格也可能比我们理想中的价格更差。
所以,我们会把前面冻结的买卖规则放进一个只有有限资金的历史账户,再看它实际能接住多少次信号、账户怎样涨跌,以及与同期沪深300相比是什么结果。
这一步,才是把一套买卖规则放进统一历史账户里的回测。
第五段:不改答案,打开新数据验收
研究期回测结束以后,我们不会因为结果不好看就继续改参数,然后再对同一段数据重考一次。
我们会先把九拍、买入、卖出、资金和成本规则全部锁定,再打开一段没有参与前期选择的数据。
这次验收可能让人高兴,也可能把前面的好消息全部推翻。
两种结果都不是课程故障。
如果新数据中的结果反转了,我们也的确完成了验收——只是验收出这套规则还经不起新数据。

每一个新问题,都在堵一个新漏洞
蛙兄顺着路线又看了一遍。
“所以,九拍规则定好以后,还不能高兴?”
“可以高兴一下。”蛙博士说,“然后问它是不是比随机日期更特别。”
“比随机日期更好,就能高兴了?”
“还要看那些九拍是否值得买,以及买了以后怎么卖。”
“买卖规则都有了呢?”
“把有限资金和交易成本加回来。”
“历史账户也能跑了呢?”
“不改答案,打开新数据。”
蛙兄沉默了几秒。
“我发现,一个问题刚解决,下一个就在门口等着。”
这正是本次研究要带我们看见的东西。
量化研究里,新问题不断出现,不一定说明前面做错了。
很多时候,恰恰说明我们又堵住了一个容易自欺欺人的漏洞。
一次量化研究不是程序跑出一个收益数字就结束。它会一步步把猜想改成规则,把弱规律改成买卖方案,再把资金、成本和新数据加回来接受检查。
AI 可以跑得很快,地图还得由我们拿着
接下来的程序会比代码分组实验更复杂。
我们会让 AI 读取数据、识别九拍、抽取随机日期、计算收益、比较筛选器、运行历史账户并生成图表。
你不需要先学会手写这些程序。
但 AI 能够把程序写出来,不等于它可以替我们决定:
- 现在究竟在回答哪个问题;
- 哪些规则应该在看结果以前锁定;
- 一次实验应该暂时停在哪里;
- 结果到底支持了什么,又没有支持什么。
AI 的腿可以很快。
但地图不能也交给它随手画。
先确认,我们数的是同一个 9
五段路已经摊在桌上。
今天,我们还不需要急着让账户跑起来。
蛙兄把目光重新移回 K 线图上的数字 9。
“所以,第一步不是让 AI 把数字 9 画上去?”
“当然不是。”蛙博士说,“第一步是先确认,你数的九拍和我数的九拍,真的是同一个东西。”
要是两个人心里的九拍规则不一样,后面的数字算得再精确,也只是两个人各自认真地跑偏。
下一步,我们就把 K 线上的 1 至 9 数字,改写成一套 AI 能执行、我们也能检查的九拍规则。
先把猜想说清楚,再看它值不值得研究;补齐买卖规则,再把有限资金和成本加回来;最后不改答案,用新数据验收。
课后讨论
留下你的问题、理解或不同意见,也看看其他学习者怎么想。