python代写使用LASSO回归预测股票收益

原文连接:http://tecdat.cn/?p=4228

使用LASSO预测收益

1.示例

一个热门目标。只要有金融经济学家,金融经济学家一直在寻找可以预测股票回报的变量。对于最近的一些例子,想一想Jegadeesh和Titman(1993),它代表股票的当前收益是由前几个月的股票收益预测的,侯(2007),这代表一个行业中最小股票的当前回报是经过行业中最大股票的滞后回报预测,以及Cohen和Frazzini(2008),这代表股票的当前回报是由其主要客户的滞后回报预测的。微信

两步流程。当你考虑它时,找到这些变量实际上包括两个独立的问题,识别和估计。首先,你必须使用你的直觉来识别一个新的预测器,而后你必须使用统计来估计这个新的预测器的质量,oracle

不能老是使用直觉。可是,现代金融市场庞大,快速,密集。可预测性并不老是发生在易于人们直觉的尺度上,使得解决第一个问题的标准方法成为问题。例如,联邦信号公司的滞后收益率是2010 年10月一小时内全部纽约证券交易所上市电信股票的重要预测指标。你真的能够从虚假的预测指标中捕获这个特定的变量吗?单凭直觉?并且,你究竟应该在几分钟内完成这项工做?app

2.使用LASSO

LASSO定义。LASSO是一种惩罚回归技术,在Tibshirani(1996)中引入。它经过投注稀疏性来同时识别和估计最重要的系数,使用更短的采样周期 - 也就是说,假设在任什么时候间点只有少数变量实际上很重要。正式使用LASSO意味着解决下面的问题, 事实上,若是你忽略了最右边的术语 - 惩罚函数,那么这个优化问题就只是一个OLS回归。函数

惩罚功能。可是,这个惩罚函数是LASSO成功的秘诀,容许估算器对最大系数给予优先处理,彻底忽略较小系数。为了更好地理解LASSO如何作到这一点,当右侧变量不相关且具备单位方差时 。一方面,这个解决方案意味着,若是OLS估计一个大系数,那么LASSO将提供相似的估计,。另外一方面,解决方案意味着,若是OLS估计了足够小的系数,那么LASSO将会选择。由于LASSO能够将除少数系数以外的全部系数设置为零,即便样本长度比可能的预测变量的数量短得多,它也可用于识别最重要的预测变量。从道德上讲,若是只有预测变量非零,那么你应该只须要几个 观察选择而后估计这几个重要系数的大小。post

3.模拟分析

我运行模拟来展现如何使用LASSO来预测将来的回报。您能够在此处找到全部相关代码。测试

数据模拟。每次模拟都涉及为期间的股票产生回报。每一个时期,全部股票的回报都受到一部分股票的回报,以及特殊冲击的影响大数据

使模型适合数据。用于从每一个周期到,我估计在第一库存LASSO,如(公式定义2使用先前的)数据的时间段,其中可能预测是股票。这意味着使用时间段来估计具备潜在右侧变量的模型。做为有用的基准,我还从方程(1)和oracle回归估计自回归模型。在本规范中,我估计了一个OLS回归真正的预测因子是右侧变量。显然,在现实世界中,你不知道真正的预测器是什么,可是这个规范给出了你能够达到的最佳拟合的估计。在将每一个模型拟合到先前的数据周期以后,而后我在st期间进行样本外预测。优化

预测回归。而后,我经过分析一系列预测回归分析调整后的统计数据,检查这些预测与第一个资产的实现回报的紧密程度。例如,我将LASSO的回报预测用于估算下面的回归ui

4.调整参数

惩罚参数选择。使LASSO适合数据涉及选择惩罚参数,。我这样作是经过选择在数据的第一个时段期间具备最高样本外预测的惩罚参数。这就是为何上面的预测回归仅使用从而不是使用数据开始的缘由。下图显示了模拟中惩罚参数选择的分布。离散跳转来自我在运行代码时考虑的可能s 的离散网格。spa

预测数量。最后,若是你看一下调整后数字中标有“Oracle”的面板,你会发现LASSO的样本外预测能力大约是真实模型预测能力的三分之一。这是由于LASSO没有完美地选择稀疏信号。下图的右侧面板显示LASSO一般只选出这些信号中最重要的信号。更重要的是,左侧面板显示LASSO还锁定了大量的虚假信号。这一结果代表,您能够经过选择更高的惩罚参数来提升LASSO的预测能力。

5.何时失败?

安慰剂测试。我经过研究两个替代模拟来结束这篇文章,其中LASSO不该该增长任何预测能力。在第一个替代设置中,没有冲击。也就是说,使用下面的模型模拟股票的收益,

(7)

在第二种状况下,有太多的冲击:。下图显示,在这两种状况下,LASSO都不会增长任何预测能力。所以,运行这些模拟提供了一对不错的安慰剂测试,显示LASSO确实在返回的横截面中拾取稀疏信号。

若是您有任何疑问,请在下面发表评论。 

 

大数据部落 -中国专业的第三方数据服务提供商,提供定制化的一站式数据挖掘和统计分析咨询服务

统计分析和数据挖掘咨询服务:y0.cn/teradat(咨询服务请联系官网客服

点击这里给我发消息QQ:3025393450

 

​QQ交流群:186388004 

【服务场景】  

科研项目; 公司项目外包;线上线下一对一培训;数据爬虫采集;学术研究;报告撰写;市场调查。

【大数据部落】提供定制化的一站式数据挖掘和统计分析咨询

欢迎选修咱们的R语言数据分析挖掘必知必会课程!

 

 
欢迎关注 微信公众号,了解更多数据干货资讯!
 
相关文章
相关标签/搜索