楼主: nandehutu2022
1460 21

[量化金融] 预测建模:一个优化的动态解决方案框架 [推广有奖]

11
可人4 在职认证  发表于 2022-6-1 08:03:11
预测模型可以通过将模型(计算公式)应用于当前股票价格和财务报表数据来实时挑选股票。本文中开发和回溯测试的预测模型方程没有显示,原因有二。首先,本文介绍了预测建模作为一种系统价值投资方法。支持单一模型并非本意,而且会误导预测建模框架的灵活性。其次,建模过程使用一组模型规范周期性地跟踪模型(附录3)。每次重新训练模型时都会使用相同的规范,但结果会产生不同的方程组。没有必要在每个训练实例之后显示每个模型,因为过程设计更多有许多机器学习算法可供选择。本文使用分类树、Logistic回归和随机森林。本文将一个特定的建模规范称为“模型XX”,但如下一篇文章所述,该规范将在每次重新培训时生成不同的模型。比结果模型更重要。本文全面描述了建模过程,使模型和结果得以再现。4、数据结构和准备数据集包含1977年12月31日至2016年12月31日期间的712415个月度观察数据,包括年度财务报表数据、季度财务报表数据和CRSP/Compustat合并数据库(CCM)中的股价数据。由于CCM数据库包括上市公司的财务报表和股票价格数据,因此该数据集不会受到survivorshipbias的影响。

12
nandehutu2022 在职认证  发表于 2022-6-1 08:03:14
每次观察都包括一家公司的月末收盘股价和根据财务报表和其他公开信息计算的财务指标。该数据集通过将财务报表数据的历史可用性延迟180天,避免了前瞻性偏差。由于财务报表和监管环境的单一性,该数据集不包括金融或公用事业公司。图2显示了应用于数据集的其他ComputeStat参数。图2 ComputeStat数据集参数全球行业分类标准代码4010、4020、4030、4040和5510合并级别合并行业格式IndustrialData FormatStandardPopulation SourceDomesticcurrencyUSD使用连续八年的历史财务报表数据计算多个财务指标。由于财务指标计算会因数据不足而产生偏差,因此省略了每个公司前七年的月度观察结果。出于同样的原因,数据集中省略了观察时间少于八年的公司。此外,可用财务报表之间存在差异的公司不被视为连续年份。除了财务报表数据外,每次观察还使用股票价格数据来计算财务指标。所有股票价格均使用收盘价,所有价格均根据股票分割和股息支付进行调整。如果股票收盘价不可用,但买卖数据可用,则收盘价将设置为买卖价差之间的中点。没有收盘价或买卖数据的观察将从数据集中删除。各种财务指标要求至少一年的月度股价。

13
大多数88 在职认证  发表于 2022-6-1 08:03:17
前12个月的观察区域附录5-8包含数据预处理和变量计算的详尽实施说明。当来自多个GVKEY的财务报表(年度或季度)与特定年份中的单个GVKEY关联时,将使用具有较新发布日期的GVKEY,并省略较旧的GVKEY。这确保了PERMNO与每个报告日期的财务报表之间的关系为1:1。例如:假设A公司于1986年4月1日发布了1985年的年度财务报表。直到1986年1月10日,1985年的财务报表才与A公司的股价合并。对于每家公司和股价低于一年的公司,均省略。月度股价之间存在差距的公司也不被视为持续观察。预测模型需要具有完整观测值的数据集。有几种方法用于处理丢失的数据。使用Casey、Gao、Kirschenheiter和Pandit(1993)提供的公式估算留存收益、流动资产、流动负债和调整后净收入的缺失数据。根据Koh&Reeb(2015)的建议,研发成本缺失数据被设置为零。股息缺失数据也设置为零。对于所有其他财务报表数据项,缺失数据是使用每家公司的最新可用观察值来估算的。将从数据集中删除缺少股票价格的观察结果。由于财务回溯测试的有效性依赖于构建历史可交易价格的经验股票价格数据,因此未估算股票价格。5、建模过程所有模型均为二元分类模型。

14
nandehutu2022 在职认证  发表于 2022-6-1 08:03:21
对模型进行培训,以预测(是/否)在相应的未来n年期限(t0+n)内,与T时股价相关的一组财务指标是否会产生超过定义基准的年化月回报率(Fama-French三因素模型回报率或S&P500回报率)。二元分类模型认为,所有的字母都同样令人满意,而所有的否定字母都同样令人不满意。为了节约,排除了回归模型。模型没有针对短期销售机会进行培训,因为价值投资文献面向长期战略。建立预测模型是一个关于响应变量、机器学习算法、预测变量和选择标准的多个决策过程。由于各种模型规范的组合可能性,评估非常可能的模型规范的详尽列表是没有效率的。对于144个独特的模型组合,决策点被限制为六个响应变量、三个二元分类算法、四个预测变量集和两个股票选择阈值。通过使用迭代决策过程,评估的模型总数进一步限制为42个。为决策类别中的每个项目建立预测模型,并为每个类别中的所有项目评估交叉验证预测性能。

15
kedemingshi 在职认证  发表于 2022-6-1 08:03:26
考虑了具有其他最佳缺失数据插补方法的项目(包括计算更密集和更准确的方法,如链方程多元插补),但为了简单和计算效率,使用了“最新可用”方法。当不需要更具体的描述时,各种响应变量有时统称为“alphas”。训练回归模型需要为理想的alpha值设置阈值,并为高估alpha定义惩罚指标。当股票价格随时间下降时,卖空股票是有利可图的。在卖空操作中,投资者借入一只股票,然后在市场上出售,然后在市场上回购股票,然后将其返还给原所有者。如果股票价格在t和t之间上涨,投资者就会亏损。对于每个后续决策类别,都会保持预测性能,并且每个决策类别的过程都会继续。在评估所有类别并生成最终模型后,模型构建过程完成。对六个响应变量中的每一个重复该过程,结果是在不同响应变量上优化的六个预测模型。

16
nandehutu2022 在职认证  发表于 2022-6-1 08:03:29
图3总结了迭代模型构建顺序;建模过程中使用的默认值带有下划线。图3预测模型的迭代开发决策类别项目(默认值下划线)数据评估标准二进制分类算法  对数几率回归  分类树  随机ForestTraining(10倍交叉验证)预测性能预测变量集  QV基本  QV已满  自助餐学  QV全功能和自助餐厅选择  50%概率  > 90%概率响应变量  1年阿尔法(Fama French 3因子)  5年阿尔法(Fama French 3因子)  10年阿尔法(Fama French 3因子)  1年阿尔法指数(标准普尔500指数)17  5年阿尔法(标准普尔500指数)  10年阿尔法(标准普尔500指数)测试财务表现和统计比较在开发六个预测模型后,进行财务回溯测试。每个模型根据样本外测试观察结果生成预测,并根据每个模型预测的股票构建股票组合,以获得相应的响应变量。使用所有可用的历史数据,每年6月30日对模型进行培训,预计6月30日将购买库存。使用所有可用的历史观测值,每年(6月30日)对模型进行滚动重新训练,每个模型的规格在回测期间保持不变。回溯测试设计还结合了格雷和卡莱尔提供的实施指南。图4总结了关键细节。只有截至当日在历史交易日活跃的股票才可购买。

17
mingdashike22 在职认证  发表于 2022-6-1 08:03:32
股票的总市值也必须在第40个百分点以上。尽管预测变量和响应变量的每一个组合都是一个独特的优化问题,但模型是通过响应变量进行相对分组和评估的,因为相对于定义的响应变量的表现最终对实际用途至关重要。“n年期标准普尔500指数”是一个“是/否”的指标变量,用于衡量一只股票在n年期内是否产生了超过标准普尔500指数的复合月度回报。二元分类算法、预测变量、股票选择标准、响应变量纽约证券交易所所有股票的市场权益。总市值低于40%断点的股票在回测期间不可购买,以确保足够的流动性。投资组合采用一年期买入并持有策略构建,投资组合采用市值(价值)加权。图4回溯测试实施详细信息StopicDescription投资组合权重市场资本化加权一年买入和持有购买频率每年(6月30日)模型培训频率每年(6月30日)形成日期每年6月30日tMarket capitalization NYSE 40%断点(French(2016))回报数据根据股息、分割和公司行动调整的价格每年1.5%,每月支付交易成本交易金额的1.0%,每次购买时支付。使用CCMdatabase中的历史CRSP股票定价数据计算每个月的投资组合价值。在购买日后退市的股票将被指定为零价格,直到发生以下事件之一。退市股票价格在柜台价格或买卖信息可用的日期设置为CRSP项目“DLPRC”。DLPRC仅用于单日,不结转。

18
何人来此 在职认证  发表于 2022-6-1 08:03:35
由于DLAMT代表转移给所有者的现金付款,因此在发生分配付款的日期,价格设置为CRSP项目“DLAMT”,并结转DLMT金额。如果退市股票未发生DLPRC或DLAMT事件,则退市后所有交易日的价格均为零。月度投资组合回报根据月度投资组合值计算。所有投资组合回报均为过账费和税前回报。在计算月度回报之前,对投资组合价值应用1.5%的年化管理费和1.0%的年交易成本。无需对投资组合价值进行纳税评估,以便在不同的纳税情况下进行标准比较。所有财务回报都是由后期管理费和交易成本计算得出的。使用各种财务指标评估每个预测模型产生的月度回报。财务绩效作为实证证据,用于调查使用预测建模方法优化系统价值投资是否会产生持续高于平均水平的投资策略。使用历史时间点断点计算每月百分位数。

19
mingdashike22 在职认证  发表于 2022-6-1 08:03:39
纽约证券交易所股票断点历史数据检索自法语(2017)。由于流动性为零,且假设股票的经验值仅限于提供价格,因此假设为零值。财务回溯测试中的过度拟合预测模型和前瞻偏差预测建模过程必须确保结果在样本外预测中保持不变。当预测模型在样本内训练数据上表现良好时,会出现过度拟合问题,但当模型部署在样本外数据上时,性能会恶化。通过将数据集拆分为训练观测值和测试观测值来解决过度拟合问题。培训观察用于建立模型和评估样本外预测性能。然后,使用之前未使用的样本外测试观察值,对具有最佳样本外预测性能的模型进行财务回溯测试。通过使用James、Witten、Hastie和Tibshirani(2013)提出的10倍交叉验证技术,利用训练数据生成样本外预测。数据集是时间序列数据,将数据集拆分为相对于模型训练日期的滚动基础上的训练和测试观测值。在模型培训日期之前发生的观察被标记为“培训”,在模型培训日期当天或之后发生的观察被标记为“测试”。对培训数据的最低要求是1000次观察,以确保使用10倍交叉验证方法有足够的数据。因此,建模过程从1978年6月的观察开始(包括利用1971年6月金融数据的趋势变量)。在训练观察和测试观察之间还添加了基于响应变量的时滞,以避免财务回溯测试期间的前瞻性偏差。

20
大多数88 在职认证  发表于 2022-6-1 08:03:42
例如,假设一元分类模型在90年6月30日进行训练,以预测一只股票是否会产生5年的Fama-French 3因子α。最终培训观察必须注明日期为1985年6月30日,因为在1985年7月1日至2015年6月29日之间的观察还没有过去五年,而且还不知道这些观察是否达到了预期的五年阿尔法。每个模型迭代的时间滞后取决于响应变量(例如,十年响应变量需要十年滞后)。概念图见附录2。6、模型性能评估预测建模过程分两步进行。首先,迭代开发模型并评估样本外预测性能。这一过程针对六个不同的响应变量进行,从而生成六个独特的模型。其次,通过使用六个模型中的每一个进行财务回溯测试,根据每个模型的年度股票预测构建股票组合。财务业绩是通过评估每个股票组合的月度回报来衡量的。例如,给定一个90年6月30日的模型培训日期,使用90年6月30日之前的观察结果构建预测模型并评估预测性能。然后使用该模型对90年6月30日开始的观察结果进行预测,从而评估财务绩效。所有模型每年都会接受一次再培训(见图6),该过程会在1991年6月30日重复。预测性能指标预测模型是二元分类模型,它们简单地预测(是/否)在给定一组财务指标的情况下,在预定的时间段t0+n内,以p价交易的股票是否会实现预定的财务结果。预测性能使用三个分类指标进行评估:精确度、假阴性率和接收机工作特性曲线下面积(AUC)。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2026-1-11 19:31