球队和硬币因子最初来自于耶鲁大学 Tobias Moskowitz 的发表于 2021 年 9 月的一篇论文,发布以来,得到了超过 14 次以上的引用。这篇论文名为《Asset Pricing and Sports Betting》。
Moskowitz 从这样一个现象开始:当人们抛一枚硬币时,如果上次抛出了正面,人们倾向于猜测下次是反面;而当球赛的一个新赛季开始时,人们更倾向于猜测上赛季的冠军,依旧会在本赛季夺冠。为什么会出现这种差别呢?
这里就涉及到行为金融学的可知性理论了。人们对抛硬币这件活动本身比较了解,对于其发生的概率比较确定,因此,倾向于利用自己掌握的理论和可知性,从而得出下一次抛硬币时,就会发生反转这一期望。
而当一个新赛季开始时,如果让人们猜测哪只球队会夺冠,由于人们对新赛季的球队、球队的成员和团队磨合等不是很了解,即“冠军是谁”这件事的“可知性”较低,因此只能以这些球队的历史成绩来考察它们,此时人们更倾向于猜测上赛季的冠军。
Moskowitz 认为,如果一个标的信息是可知的,则处于硬币模式 – 接下来可能发生趋势反转;而如果信息是未知的,则会处在球队模式,即动量延续。
如何评判标的信息可知呢?Moskowitz 认为,可以依据公司是否发布了业绩预告:发布了业绩预告的公司,其 “可知性”就会提高,投资者对于其未来走势就有了清晰的判断。
看到这里,有经验的投资者会立即与 A 股对上号:**这不就是 A 股的利好出尽是利空;利空出尽是利好,或者说利好见光死吗?**事实就是如此,只不过 Moskowitz 对此现象进行了理论总结。
如何将其构建成因子以供投资呢?按照 Moskowitz 的原始定义来生成因子,需要提取业绩预告信息。我们可以利用免费的 akshare 来获取这部分信息。
import akshare as ak
stock_yjyg_em_df = ak.stock_yjyg_em(date="20230930")
print(stock_yjyg_em_df[["股票简称","预测指标","业绩变动幅度"]])
这里要注意的是,日期参数是有规律的,你只能使用季度末的日期,即 0331,0630,0930 和 1231(前面加上年份)。如果输入其它日期,则将抛出异常。
最后我们得到如下示例结果:
可以看出,公告自带有日期,因此可以认为这是 PIT 合格的数据。
要构建因子,可以以公告发布次日起,分别取 1,3, 5, 8, 10, 13 等周期的收益率,对因子进行评估。因子评估是通用方法,可以使用 quantpian 的 Alphalens 库,我们在第 15 课中有专门介绍,并提供了使用示例,这里就不赘述了。
本篇笔记提到了 PIT 合格这个词,你知道这是什么意思吗?PIT数据是我们从数据源头避免未来数据的重要手段。如果想知道,请留言评论吧。