炼数成金 门户 量化投资 查看内容

使用 TensorFlow Probability 对金融模型中的误差进行介绍性分析

2018-9-30 12:40| 发布者: 炼数成金_小数| 查看: 28766| 评论: 0|来自: TensorFlow

摘要: 亚当·斯密是公认的现代经济学之父,他对牛顿的力学和万有引力定律心存敬畏 。自那时起,经济学家们一直致力于将经济学变成类似物理学的学科。他们渴望建立理论,在微观和宏观层面准确解释及预测人类的经济活动。在 ...

模型 金融 数学 学术 量化投资

文 / Deepak Kanungo,Hedged Capital LLC 创始人兼首席执行官

作为采用 “AI 先行” 战略的金融交易和咨询公司,Hedged Capital 使用概率模型在金融市场中进行交易。我们将在本文中探讨所有金融模型中固有的三类误差,并会以 Tensorflow Probability (TFP) 中的简单模型作为例子来进行说明。
注:Tensorflow Probability 链接
https://www.tensorflow.org/probability/

金融学并非物理学
亚当·斯密是公认的现代经济学之父,他对牛顿的力学和万有引力定律心存敬畏 [1]。自那时起,经济学家们一直致力于将经济学变成类似物理学的学科。他们渴望建立理论,在微观和宏观层面准确解释及预测人类的经济活动。在 20 世纪初期,欧文·费雪等经济学家的成就使这种渴望愈发强烈,并在 20 世纪后期的经济物理学运动中达到顶峰。


尽管现代金融学包含各种复杂的数学运算,但其理论严重不足,与物理学相比时,这一点尤为明显。例如,物理学能够以惊人的较精确度预测月球和计算机中电子的运动。而任何物理学家均可随时在世界上的任何地方计算出这些预测结果。相比之下,市场参与者难以解释每日市场走势的原因,也无法在世界上任何地方随时预测股票价格。

这或许是因为金融学比物理学更难。与原子和钟摆不同,人类是富有情感的复杂生物,并拥有自由意志和潜在的认知偏差。他们的行为往往不一致,并会不断对他人的行为作出反应。此外,市场参与者通过利用或操纵规管他们的体系来获利。

牛顿在投资南海公司损失不菲后,感慨道:“我可以计算出天体运行的轨迹,却无法计算人类的疯狂。” 请注意,牛顿颇具投资眼光。他在英国铸币局任职近 31 年,帮助英镑在金本位制上持续了两个多世纪。

所有金融模型都是错误的?
我们使用模型来简化现实世界的复杂性,从而使我们能够关注自己感兴趣的现象有何特点。显然,地图无法捕捉到其用于建模的地形的丰富性。统计学家 George Box 有一句著名的妙语:“所有模型都是错误的,但有些是有用的。”

这一观点特别适用于金融学。有一些学者甚至认为,金融模型不仅是错误的,而且极其危险;物理科学的表象使经济模型的拥护者对其预测能力的准确性产生错误的肯定。而这种盲目信仰给其拥护者和整个社会带来了许多灾难性的后果 [1]、[2]。作为史上最成功的对冲基金公司,Renaissance Technologies 已将其对金融理论的批判观点付诸实践。他们偏向于聘请物理学家、数学家、统计学家和计算机科学家,而不是拥有金融或华尔街背景的人士。他们使用基于非金融理论(如信息理论、数据科学和机器学习)的定量模型来进行市场交易。

无论金融模型是基于学术理论还是经验性的数据挖掘策略,都会受到下文所述的三种建模误差的影响。 因此,所有模型都需要量化其预测中固有的不确定性。 分析和预测中的误差可能来自以下任何建模问题 [1]、[2]、[3]、[4]:使用不恰当的函数形式、输入不准确的参数或无法适应市场的结构性变化。

三种建模误差
1. 模型规格中的误差:
几乎所有金融理论都在其模型中使用正态分布。例如,正态分布是 Markowitz 现代投资组合理论和 Black-Scholes-Merton 期权定价理论的构建基础 [1]、[2]、[3]。然而,有充分的事实表明,股票、债券、货币和大宗商品均存在肥尾分布 [1]、[2]、[3]。换句话说,极端事件发生的频率远远高于正态分布预测的频率。

如果资产价格收益呈现正态分布,则世界上绝不会发生以下金融灾难:黑色星期一、墨西哥比索危机、亚洲货币危机、长期资本管理公司破产(顺便提一下,这家公司由两位获得诺贝尔奖的经济学家领导)或闪电崩盘。个别股票发生 “小型闪电崩盘” 的频率甚至高于这些大型事件。

然而,由于正态分布的简单性和易于分析性,金融教材、课程和专业人士继续将其用于资产估值和风险模型。鉴于如今先进的算法和计算资源,这些原因不再合理。这种不愿舍弃正态分布的行为正是 “醉汉寻物” 的典型事例:这个原则源于一个笑话,有一个醉汉在漆黑的公园丢了钥匙,却疯狂地在路灯柱下寻找,仅仅因为灯柱下有光线。

2. 模型参数估计中的误差:
出现这类误差的原因可能是市场参与者能够访问传递速度不同的各种级别信息。他们的处理能力水平各有不同,认知偏差也不尽相同。这些因素导致他们对模型参数的认知存在极大的不确定性。

我们看一个有关利率的具体示例。作为所有金融资产的估值基础,利率用于对资产的不确定未来现金流进行贴现并评估其当前的价值。例如,在消费者层面,信用卡的可变利率与称为最优惠利率的基准挂钩。这一利率通常与联邦基金利率(一种对美国和全球经济具有重要意义的利率)同步变化。

假设您想估算从现在起一年后的信用卡利率。假设当前的最优惠利率为 2%,而您的信用卡公司向您收取 10% 以上的优惠利率。鉴于当前经济发展的强劲势头,您认为美联储很有可能提高利率而非降低利率。美联储将在未来 12 个月内召开 8 次会议,并会将联邦基金利率上调 0.25% 或使其维持之前的水平。

在以下 TFP 代码示例中(前往 Colab 查看完整代码),我们使用二项分布对您在 12 个月结束时的信用卡利率进行建模。具体来说,我们将使用 TensorFlow Probability 二项分布类,其中包含以下参数:total_count = 8(试验或会议次数),probs = {0.6, 0.7, 0.8, 0.9},表示我们对美联储在每次会议上将联邦基金利率上调 0.25% 的概率估计范围。
注:Colab 链接
https://github.com/tensorflow/probability/blob/master/tensorflow_probability/examples/jupyter_notebooks/Credit_Card_Interest.ipynb
TensorFlow Probability 二项分布 链接
https://www.tensorflow.org/probability/api_docs/python/tfp/distributions/Binomial

# First we encode our assumptions.
num_times_fed_meets_per_year = 8.
possible_fed_increases = tf.range(
   start=0.,
   limit=num_times_fed_meets_per_year + 1)
possible_cc_interest_rates = 2. + 10. + 0.25 * possible_fed_increases 
prob_fed_raises_rates = tf.constant([0.6, 0.7, 0.8, 0.9])# Now we use TFP to compute probabilities in a vectorized manner.
# Pad a dim so we broadcast fed probs against CC interest rates.
prob_fed_raises_rates = prob_fed_raises_rates[…, tf.newaxis]
prob_cc_interest_rate = tfd.Binomial(
   total_count=num_times_fed_meets_per_year,
   probs=prob_fed_raises_rates).prob(possible_fed_increases)

在以下图表中,请留意您的信用卡利率在 12 个月内的概率分布如何主要取决于您对美联储在 8 次会议中每次提高利率的概率估计。您可以看到,对美联储在每次会议上提高利率的估计值每增加 0.1%,您的信用卡在 12 个月内的预期利率将增加 0.3% 左右。


即使所有市场参与者都在他们的模型中使用二项分布,也很容易看出他们对未来的最优利率有何分歧,因为他们对 probs 的估计各有不同。而这个参数确实很难估计。许多机构拥有专门的分析师(包括美联储的前雇员),他们会分析美联储的每个文件、演讲和活动,以试图估计这个参数。

回想一下,我们假设模型中的参数 probs 在接下来的 8 次美联储会议中均保持不变的情况。这有多大的可能性?作为设定利率的主体,联邦公开市场委员会 (FOMC) 成员不会只设定一个值。他们可能且确实会根据随时间变化的经济情况而改变个人偏差。假设参数 probs 在未来 12 个月内保持不变,不仅不切实际,而且存在风险。

3. 因模型无法适应结构性变化而导致的误差:
底层数据生成的随机过程会随时间而变化,也就是说这并非固定的遍历过程。我们生活在动态的资本主义经济环境中,其特征是各种技术创新和不断变化的货币和财政政策。资产价值和风险的时变分布是常态,而非例外。对于此类分布,基于历史数据的参数值必然会在预测中产生误差。

在上述示例中,如果经济呈现衰退迹象,美联储可能会在第 4 次会议上采取更为中立的立场,这会让您将之后的 probs 参数从 70% 改为 50%。对 probs 参数作出的这项更改反过来会改变您对信用卡利率的预测。

有时,时变分布及其参数会像墨西哥比索危机一样不断或突然改变。对于持续或突然的改变,所使用的模型需要适应不断变化的市场情况。我们可能需要拥有不同参数的新函数形式来解释和预测新体制中的资产价值和风险。

假设在上述示例中的第 5 次会议之后,美国经济遭受外部冲击,例如希腊的新民粹主义政府决定拖欠债务。在这种情况下,美联储更有可能降低利率,而非提高利率。鉴于美联储态度的这种结构性变化,我们必须将模型中的二项概率分布改为拥有适当参数的三项分布。

结论
与物理学不同,金融学不是一门较精确的预测学科。二者相差甚远。因此,我们不应将学术理论和金融模型当作量子力学来看待。

所有金融模型,无论是基于学术理论,或是数据挖掘策略,都会受三种建模误差的影响。虽然我们可以通过适当的建模工具降低这三种误差,却无法将其彻底消除。信息不对称和认知偏差始终会存在。由于资本主义、人类行为和技术创新的动态性质,资产价值和风险模型会随着时间而变化。

金融模型需要一个框架来量化时变随机过程预测中固有的不确定性。同样重要的是,此框架需要根据实质上的新数据集不断更新模型或其参数(或两者)。由于底层环境可能变化过快,因而无法收集大量相关数据,所以此类模型必须使用小型数据集进行训练。

致谢
我们衷心感谢 TensorFlow Probability 团队,尤其是 Mike Shwe 和 Josh Dillon 对此文章的早期草稿给予的帮助。

参考文献
[1] The Money Formula,David Orrell 及 Paul Wilmott 著,Wiley 出版,2017 年
[2] Nobels For Nonsense,J.R. Thompson、L.S. Baggett、W.C. Wojciechowski 及 E.E. Williams 著,Journal of Post Keynesian Economics 出版,2006 年秋
[3] Model Error,Katerina Simons 著,New England Economic Review 出版,1997 年 11 月
[4] Bayesian Risk Management,Matt Sekerke 著,Wiley 出版,2015 年

声明:文章收集于网络,如有侵权,请联系小编及时处理,谢谢!

欢迎加入本站公开兴趣群
量化投资群
兴趣范围包括:量化投资,算法交易,金融建模,统计套利等等
QQ群 697033743
如果大家不明白什么是量化投资,在百度谷歌搜索一下“西蒙斯”就知道了,最近这哥们火极了!这套东西在国外的金融机构已经大量使用,随着中国金融市场规模日益扩大和趋于成熟,这套玩法最终肯定也能在国内转起来,我们一起学习切磋,寻求项目机会做一下,提升自己在这方面的技能,将来一起发财
1

鲜花

握手

雷人

路过

鸡蛋

刚表态过的朋友 (1 人)

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

热门文章

     

    GMT+8, 2018-12-11 16:54 , Processed in 0.244112 second(s), 26 queries .