我花了几年才明白:Alpha 不是“找出来”的,而是“筛掉假的”

第一次做量化时,我和很多人一样,盯着 K 线看了半天。

那时候特别喜欢一句话——“感觉这个形态快启动了。”

后来回头看,我发现自己干的事和在云里找动物没区别。看久了,总能看出一只兔子、一条鱼,甚至一头大象。但云还是那片云。

读到《量化交易:创建自己的算法交易事业》第 2 章时,我突然意识到一个问题:

市场里最贵的东西,不是策略,而是“判断这个策略是不是幻觉”的能力。

我曾经踩过一个很典型的坑。

当时做 A 股动量策略,疯狂调均线参数:

MA5
MA10
MA20
MA30
...
MA250

一路往后试。试到 MA73 的时候,年化收益突然起飞,Sharpe 漂亮得像 PPT,我当时激动坏了,觉得自己挖到了 Alpha。结果实盘三个月,直接回撤 18%。

后来才明白——不是我找到了规律,而是我把随机噪声调成了规律。

这就是 Chan 在这一章反复提醒的:数据挖掘偏差。

你试得足够多,市场迟早会奖励你一个“假答案”。这有点像买彩票。买一张,中不了。买一万张,总有人中奖。问题是——你以为中奖了的是技术。

这一章让我感触最深的一句话,不是 Alpha 来源,不是动量,也不是因子。

而是:大部分交易想法不是策略。

以前我听别人说:

“AI 还会涨。” “这个票突破平台了。” “MACD 金叉了。”

我会认真记下来。现在我的第一反应变成:

规则呢?能不能写代码?能不能回测?能不能复现?

如果答案是否定的,那它只是观点。量化世界里,观点不值钱,规则才值钱。

我后来给自己定了一个习惯。

任何交易想法,必须在 30 分钟内写成代码,写不出来,就直接扔。

例如一个最简单的动量假设:过去 20 天涨幅靠前的股票,未来继续上涨。

它至少要落地成这样:

import requests
import pandas as pd

# AllTick 行情接口示例(示意)
url = "https://quote.alltick.io/quote/kline"

params = {
    "symbol": "AAPL.US",
    "period": "1d",
    "count": 60,
    "token": "YOUR_API_KEY"
}

res = requests.get(url, params=params)
data = res.json()

df = pd.DataFrame(data["data"])

# 计算20日收益率
df["ret20"] = df["close"].pct_change(20)

latest_ret = df["ret20"].iloc[-1]

if latest_ret > 0.10:
    print("进入候选池")

这段代码很粗糙。
但它已经完成了一件重要的事:把“感觉”翻译成了机器语言。
量化的起点,不是策略,是翻译。
把直觉翻译成规则,把规则翻译成代码,把代码翻译成收益曲线。

这一章里还有一个观点,我特别认同。
Chan 说:个人投资者的优势不是信息,而是灵活。
这句话我做了几年才体会到。

机构管理几十亿资金。很多策略他们不能碰。日成交 500 万的小票?容量太低。盘口套利?放不下仓位。但个人账户十万、二十万,反而能钻进去。

有点像大船和小艇,大船稳,但进不了小河道,小艇反而能找到鱼。所以后来我越来越少研究“大家都在研究什么”。

我更关心:哪些地方资金还没挤满。

现在回头看,第 2 章其实讲的不是“找策略”。
它讲的是另一件事:市场观察 → 提出假设 → 写规则 → 回测 → 去掉幻觉 → 留下真实信号

这条路很长。而且大部分时间,你不是在发现 Alpha,你是在删 Alpha。删掉过拟合,删掉幸存者偏差,
删掉看起来很美的曲线,删到最后剩下那一点点,才是真东西。

我做量化这些年最大的感受是:
赚钱策略不稀缺,市场每天都能制造新的赚钱曲线。
稀缺的是——知道哪条曲线只是运气。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容