楼主: 能者818
3321 70

[量化金融] 基于凸优化的多周期交易 [推广有奖]

51
mingdashike22 在职认证  发表于 2022-5-31 10:46:47
求解(5.1)或(5.2)是基于计划期内关键数量的预测和一些简化假设,形成一个交易计划。除第一笔交易外,我们不打算执行这一系列交易。我们有理由问,为什么我们要在未来的贸易中进行优化,zt+H-1,因为我们不打算执行它们。答案很简单:作为规划工作的一部分,我们对其进行优化,只是为了确保我们现在不会进行任何将使我们在未来处于abad地位的交易(即zt)。执行计划练习,但仅执行当前操作的想法出现并被用于许多领域,如自动控制(称为模型预测控制、MPC或滚动地平线控制)[40、45]、供应链优化[14]等。MPC在金融领域的应用包括[33、9、6、54]。关于动力学简化。在继续之前,让我们讨论动力学方程的简化,在这里,我们替换exactweight updatewt+1=1+Rpt(1+rt)o (wt+zt),通过假设rt=0,简化版本wt+1=wt+zt。乍一看,这似乎是一个粗略的简化,但这种假设只是为了在我们的规划过程中宣传投资组合的前瞻性;在我们的目标框架内,我们确实考虑了回报。因此,我们忽略了二阶条件,如果每个周期的回报率与一个周期的回报率相比很小,我们就不能做得太远。以类似的方式,为τ=t+1添加约束1Tzτ=0,t+H- 1表明我们忽略了交易和持有成本,因为如果zτ是已实现的交易,我们将有1Tzτ=-φtradeτ(zτ)- φholdτ(wτ+zτ)。

52
kedemingshi 在职认证  发表于 2022-5-31 10:46:50
如上所述,该假设仅用于在我们的规划工作中传播我们的投资组合;我们在目标中确实考虑了成本。50个多周期优化终端约束。在MPO中,有一个相当长的范围,我们可以添加一个终端(相等)约束,它要求最终计划权重取一些特定值,wt+H=wterm。终端投资组合权重的合理选择是(我们对)t+H期间的基准权重WB。为了优化绝对或超额回报,终端权重将是现金,即wterm=en+1。这意味着我们的规划工作应该以全部现金完成投资组合。这并不意味着我们打算在H期内清算投资组合;相反,这意味着我们应该像这样执行我们的计划。这将防止Pus犯下错误,进入我们的回报预测似乎是一个有吸引力的位置,然而,放松代价很高。对于相对于基准的优化,自然终端约束应位于(预测的)基准中。请注意,添加端子约束会减少变量的数量。我们解决了问题(5.1),但wt+Ha给定常数,而不是变量。初始权重wt也是一个给定常数;中间权重wt+1,重量+小时-1是变量。5.3计算MPO问题(5.2)有Hn变量。一般来说,凸优化的复杂性随着变量数量的立方而增加,但在这种情况下,可以利用问题的特殊结构,使计算效果在H(地平线)中线性增长。因此,解决MPO问题(5.2)应该比解决SPO问题(4.5)慢一个因素H。对于一般的H(比如几十个),这不是一个问题。但是对于H=100(比如说),解决MPO问题可能是一个巨大的挑战。

53
何人来此 在职认证  发表于 2022-5-31 10:46:53
基于ADMM[8,9]的分布式方法可用于解决使用多个处理器的MPO问题。在大多数情况下,我们可以解决生产中的MPO问题。问题是回测,因为我们必须多次解决这个问题,而且参数有很多变化。5.4。如何使用MPO 515.4如何使用MPO关于如何使用SPO的一般想法也适用于MPO;例如,我们将MPO问题中的参数视为我们调整的旋钮,以便在回测和压力测试下获得良好的性能。在MPO中,我们必须提供未来H期内每个时期的每个数量预测。这可以使用复杂的预测来完成,每个时期的预测可能不同,或者以非常简单的方式,使用恒定的预测。5.5多尺度优化MPO交易需要估计未来H个交易周期内的所有相关数量,如回报、交易成本和风险。在本节中,我们描述了MPO的简化,该简化需要更少的预测,以及更少的计算来执行每个阶段所需的优化。我们仍然为未来H期的交易和权重制定了一个计划,但我们假设交易只在短期内发生了几次;在其他时间段,计划的portfoliois保持不交易。这保留了我们有追索权的想法;但这大大简化了问题(5.1)。

54
kedemingshi 在职认证  发表于 2022-5-31 10:46:57
我们描述了短期、中期和长期三种交易的想法,以及最终满足终端约束的额外交易TWT+H=wb。具体地说,我们在(5.1)中增加了一个约束条件,即对于τ=t,τ=t+Tmed,τ=t+Tlong,τ=t+H,交易(即zτ6=0)仅在未来的特定时期发生- 1,其中1<Tmed<Tlong<H- 1、在我们的交易计划中,我们将zshort=zt视为我们的短期交易,zmed=zt+Tmedasour中期交易,zlong=zt+tlong视为我们的长期交易。最终非零贸易zt+H-1由Terminal约束确定。例如,我们可以取Tmed=5,Tlong=21,H=100。如果周期代表天,我们计划现在(短期)、a52多周期优化周(中期)和月份(长期)进行交易;在99天内,我们达到了基准。我们仅有的变量是短期、中期和长期交易以及相关权重,由wshort=wt+zshort、wmed=wshort+zmed、wlong=wmed+zlong给出。为了确定要进行的交易,我们求解(5.1),将所有其他zτ设置为零,并使用上面给出的权重。这导致了一个与(5.1)形式相同的优化问题,但交易和权重只有三个变量,目标中有三个术语,加上一个额外的术语,表示与t+H时基准的最终交易相关的交易成本- 1.实现我们开发了一个开源Python包CVXPortfolio[11],它实现了本文讨论的投资组合模拟和优化概念。该软件包依靠Pandas[46]来管理数据。Pandas实现了memorydatabases中的结构化数据类型(类似于R数据帧),并为访问和操作它们提供了丰富的API。通过Pandas,很容易将我们的包与数据库后端连接起来。

55
可人4 在职认证  发表于 2022-5-31 10:47:00
该软件包使用凸优化建模框架CVXPY【21】来构建和解决投资组合优化问题。该软件包提供了一个面向对象的框架,其中包含类别代表回报、风险度量、交易成本、持有约束、交易约束等。单周期和多周期优化模型是从这些类别的实例构建的。Eachinstance为任何给定的周期t生成CVXPY表达式和约束,从而可以轻松地将实例组合到单个convexmodel中。在第7章中,我们给出了一些使用cvxportfolio的简单数值例子。54实现6.1组件我们简要回顾软件包中的主要类。实现额外的类,例如新的策略或风险度量,是一个很好的解决方案。回报估算。AlphaSource类的实例仅使用时段t的可用信息生成时段t的返回估计值^rtt。最简单的AlphaSource实例将Pandas dataframe包装为每个期间的返回估计数:alpha\\u source=AlphaSource(return\\u estimates\\u dataframe)多个AlphaSource实例可以混合成线性组合。风险度量。RiskMeasure类的实例生成一个convexcost,表示给定时期t的风险度量。例如,FullSigma子类生成成本(wt+zt)t∑t(wt+zt),其中∑t∈R(n+1)×(n+1)是一个显式矩阵,而FactorModel子类使用∑t的因子模型生成成本。任何风险度量都可以切换为绝对风险或主动风险,并使用风险规避参数进行加权。该包提供了第4.2节讨论的所有风险措施。成本。TcostModel和HcostModel类的实例分别生成交易和持有成本估算。同样的类别既适用于投资组合优化问题中的成本建模,也适用于交易模拟中的已实现成本计算。

56
能者818 在职认证  发表于 2022-5-31 10:47:04
成本对象也可以用来表示其他客观条件,如软约束。约束条件。该包提供了代表第4.4节和第4.5节中讨论的每个约束的类。例如,LeverageLimit类的实例会生成一个杠杆限制约束,该约束可以随时间段而变化。约束对象可以转换为软约束,软约束是成本对象。6.1。组件55策略。Policy类的实例使用时段t中可用的信息获取holdings wtandvalue VT和output trades ZT。使用SinglePeriodopt子类构建单时段优化策略。构造函数采用AlphaSource、成本列表,包括风险模型(乘以其系数)和约束。例如,以下代码段构造了一个SPOpolicy:spo\\u policy=SinglePeriodOpt(alpha\\u source,[gamma\\u risk*factor\\u risk,gamma\\u trade*tcost\\u model,gamma\\u hold*hcost\\u model],[leverage\\u limit])多周期优化策略的构造类似。该包还为简单的策略(如定期重新平衡)提供子类。模拟器。MarketSimulator类用于运行交易模拟或反向测试。实例是用历史回报和其他市场数据以及交易和持有成本模型构建的。给定MarketSimulator实例market\\u sim,通过调用run\\u backtest方法运行backtest,方法包括初始投资组合、策略以及开始和结束期间:backtest\\u results=market\\u sim。run\\u backtest(init\\u公文包、策略、start\\u t、end\\t)可以在不同的条件下并行运行多个back测试。

57
可人4 在职认证  发表于 2022-5-31 10:47:07
背面测试结果包括第3章中讨论的所有指标。示例在本节中,我们提供了简单的数字示例,说明了以上开发的想法,所有这些想法都是使用CVXPortfolio和开源市场数据(以及一些没有开源数据的近似值)执行的。这些代码可用athttps://github.com/cvxgrp/cvxportfolio/examples.Given我们的近似值,以及我们将在下面提到的模拟的其他不足之处,我们展示的特定数值结果不应该太认真。但这些模拟足以说明真实现象,例如交易成本可以发挥的关键作用,或者超参数搜索的重要性。7.1模拟数据从2012年1月到2016年12月,我们对截至2016年12月的标准普尔500指数的组成部分进行了为期5年的研究。我们选择在此期间持续交易的股票。(通过这样做,我们引入了生存偏差,这并不是一个问题,因为这些例子只是为了说教。)我们从Quandl7.2中收集开源市场数据。投资组合模拟57【56】。数据包括实现的每日市场回报率rt(使用收盘价计算)和交易量Vt。我们使用美联储的隔夜利率作为现金回报。在[1]之后,我们用一个简单的估计量(σt)i=| log(popent)i近似每日波动率- log(pcloset)i |,其中(popent)i和(pcloset)i是t期资产i的开盘价和收盘价。我们无法找到买卖价差的开源数据,因此我们使用了所有资产和期间的价值=0.05%(5个基点)。对于所有资产和期间,我们使用st=0.01%(1个基点)作为持有成本。

58
大多数88 在职认证  发表于 2022-5-31 10:47:10
我们为交易和持有成本模型的其他参数选择了标准值:所有资产和期间的bt=1、ct=0、dt=0。7.2投资组合模拟为了说明回测投资组合模拟,我们考虑一个旨在跟踪统一投资组合基准的投资组合,该投资组合的权重wb=(1/n,0),即所有非现金资产的价值分数相等。这不是一个特别有趣或很好的基准投资组合;我们仅将其作为一个简单的示例来说明交易成本的影响。投资组合从w=wb开始,由于资产回报率偏离此权重向量。我们定期重新平衡,这意味着使用tradevector zt=wb-wt.对于t的其他值(即wedo not re balance的周期),我们的zt=0。我们对两个初始投资组合价值(1亿美元和100亿美元)分别进行了六次回测模拟。这六种模拟的重新平衡频率各不相同:每日、每周、每月、每季度、每年或从不(也称为“持有”或“买入并持有”)。对于每个模拟,我们给出了投资组合的主动回报率Ra和主动风险σa(在第3.2节中定义),年度平均交易成本Tptt=1φtradet(zt),年度平均营业额Tpt=1k(zt)1:nk/2。表7.1显示了结果。(出于完整性考虑,包括主动回报,但没有特殊意义;它是交易成本加上一个小的随机成分的负值。)我们观察到,正如预期的那样,交易成本取决于投资组合的总价值,重新平衡频率的选择会影响交易成本和ac58示例重新平衡主动主动主动交易。总营业额。

59
mingdashike22 在职认证  发表于 2022-5-31 10:47:13
频率回报风险成本每天1亿美元-每周0.07%0.00%0.07%220.53%-每月0.07%0.09%0.04%105.67%-每季度0.12%0.21%0.02%52.71%-每年0.11%0.35%0.01%29.98%-每年0.10%0.63%0.01%12.54%持有-每天0.36%1.53%0.00%100亿美元-每周0.25%0.01%0.25%220.53%-每周0.19%0.09%0.16%每月105.67%-每季度0.20%0.21%0.10%52.71%-每年0.17%0.35%0.07%29.99%-每年0.13%0.63%0.04%12.54%持有-0.36%1.53%0.00%0.00%表7.1:不同初始值和不同平衡频率的投资组合模拟结果。所有值均为年化值。积极风险。(每日重新平衡时,主动风险并非完全为零,因为交易成本的可变性包含在投资组合回报中。)图7.1分别显示了两种组合的主动风险与交易成本。7.3单周期优化在本节中,我们展示了第4章中开发的单周期优化模型的一个简单示例。投资组合从总价值V=1亿美元开始,分配等于统一投资组合w=(1/n,0)。我们施加了Lmax=3的杠杆约束。该模拟使用第7.1节中定义的市场数据。SPO中使用的预测和风险模型如下所述。风险模型。所有权风险模型,例如MSCI(前巴里巴)的模型,被广泛使用。这里我们使用一个简单的因素风险模型es7.3。单期优化59图7.1:两种初始投资组合规模的主动风险与交易成本。线上的点对应于重新平衡频率。使用与[1]类似的程序,根据过去实现的回报进行估值。我们在每个月的第一天进行估算,并将其用于本月的其余时间。设t为估计时间段,t-Mr是两年前的时间段。

60
何人来此 在职认证  发表于 2022-5-31 10:47:16
考虑已实现收益窗口的二阶矩∑exp=MriskPt-1τ=t-MriskrτrTτ,其特征分解∑exp=Pni=1λiqiqTi,其中特征值λ为独立阶。我们的因子风险模型isF=[q···qk],∑f=diag(λ,…,λk),D=nXi=k+1λidiag(qi)diag(qi),其中k=15。(选择对角矩阵D,使因子模型F∑fFT+D和经验二阶矩∑Exp具有相同的对角元素。)返回预测。无风险利率是准确已知的,(rt)n+1=(rt)n+1,对于所有t。非现金资产的回报预测是60个示例。它们是使用多种方法生成的,从分析预测到复杂的机器学习技术,都是基于各种数据馈送和来源。对于这些例子,我们通过将零平均噪声添加到实际收益中,然后重新缩放,来生成模拟收益预测,以获得(大约)最小化均方误差的收益估计。当然,这不是一个真实的回报预测,因为它使用的是实际实现的回报;但我们在这里的目的只是为了说明想法和方法。对于所有t,非现金资产的回报估计为(^rt)1:n=α((rt)1:n+t) ,(7.1)其中t型~ N(0,σ一) 都是独立的。我们使用噪声方差σ=0.02,因此噪声分量的标准偏差约为14%,约为比已实现回转式的标准偏差大10倍的系数。选择比例因子α以最小化均方误差((^rt)1:n-(rt)1:n),如果我们认为RTA是方差为σr的随机变量,即α=σr/(σr+σ). 我们使用典型值σr=0.0005,即实现的回报标准偏差约为2%,因此α=0.024。我们的典型回报预测约为±0.3%。

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

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