投资组合优化策略:凸优化与凹优化详解(CPPI与OBPI)
创作时间:
作者:
@小白创作中心
投资组合优化策略:凸优化与凹优化详解(CPPI与OBPI)
引用
CSDN
1.
https://blog.csdn.net/Ke_Yan_She/article/details/139040365
本文介绍了投资组合中的凸优化与凹优化策略,包括CPPI(恒定比例投资组合保险)和OBPI(基于期权的投资组合保险)等动态配置风险投资组合和无风险策略。通过Matlab代码实现这些策略,并提供了运行结果和参考文献。
1. 概述
我们回顾了在风险组合和无风险账户之间动态重新配置资金的主要方法:预期效用最大化;基于期权的投资组合保险(OBPI);以及与恒定比例投资组合保险(CPPI)密切相关的回撤控制。我们在一般假设下对理论进行了简要复习。我们讨论了不同方法之间的联系,以及它们与凸优化和凹优化策略的关系。我们提供了明确的、可行的解决方案,包括所有计算以及数值示例。
本文提供了动态配置风险投资组合和无风险账户之间资金的主要策略的快速概述。本文的结构如下。在第1节中,我们介绍了两种投资工具的动态特性;在第2节中,我们讨论了构建策略的一般规则。
在第3节中,我们讨论了最大化投资期望效用的策略。在一般情况下解决这种类型问题需要先进技术,但特殊的显著案例可以很容易地得到解决。在第4节中,我们讨论了实现期望的策略,其收益是根据风险资产在投资期限内的随机结果设计成函数的。这些策略也被错误地称为基于期权的投资组合保险。在第5节中,我们涵盖了回撤控制和恒定比例投资组合保险。在第6节中,我们讨论了上述各种方法之间的联系以及它们与凸优化和凹优化策略的关系。
2. 运行结果
部分代码:
NumSimul=30000;
%%%%%%%%%%%%%%%%%%%%%%%%%%
if Strategy==1 % Constant exposures
% amount to be invested in the underlying? e.g.: 50
Prct = 50 ;
end
if Strategy==2 % Buy&Hold
% proportion of underlying you want to hold in the beginning, e.g.: 50
Prct = 50 ;
end
if Strategy==3 % CPPI
% floor today (will evolve at the risk-free rate), e.g.: 950
Floor = 980;
% leverage on the cushion between your money and the floor, e.g. 3
Multiple_CPPI = 5;
end
if Strategy==4 % Delta Hedging
% level of aggressivness bw 0 and 1
Aggressivness = .2;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% initialize values
Underlying_Index=Initial_Investment; % value of the underlyting at starting time, normalzed to equal investment
Start=Underlying_Index;
Elapsed_Time=0;
Portfolio_Value=Initial_Investment;
if Strategy==1 % Constant Weights
Underlying_in_Portfolio_Percent = Prct/100;
end
if Strategy==2 % Constant Weights
Underlying_in_Portfolio_Percent = Prct/100;
end
if Strategy==3 % CPPI
Cushion=max(0,Portfolio_Value-Floor);
Underlyings_in_Portfolio=min(Portfolio_Value,max(0,Multiple_CPPI*Cushion));
Cash_in_Portfolio=Portfolio_Value-Underlyings_in_Portfolio;
Underlying_in_Portfolio_Percent = Underlyings_in_Portfolio./Portfolio_Value;
end
if Strategy==4 % Delta Hedging
options=[];
Strike = fsolve('Solve4Strike',Start,options,Time_Horizon,Underlying_Index,s,r,Initial_Investment,Aggressivness*Initial_Investment/3);
Underlying_in_Portfolio_Percent = Delta(Time_Horizon-Elapsed_Time,Underlying_Index,s,Strike,r);
end
3. 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
4. Matlab代码、文章
热门推荐
如何应对感情中的冷暴力?
碳酸锂2024年回顾:价格波动剧烈,供需格局持续过剩
什么是遗产税收
优质文化资源直达基层!《人民日报》头版聚焦东城公共文化服务
医院合规与风险管理
‘一眼万年’的意思是什么?探索成语背后的深意
不起眼的小检查,能及时发现肠癌!3类人群建议每年进行一次!
肘管综合征怎么治疗
风寒风热感冒用药指南
清咽利喉颗粒是什么药
冯唐:真正成大事的男人,能力不是唯一,还需练就五大成事方法
GAL游戏是什么?一探虚拟恋爱的魅力
布伦轻机枪
多元化服务“一老一小”,苏州工业园区娄葑街道推出社区公益课
优化应考学习环境的建议
95年前的今天,黑色星期四
尿潜血阳性是什么意思
八大网络安全策略:如何防范物联网(IoT)设备带来的安全风险
桥本甲减能否吃雷替斯?医生的专业解答
深圳政企联动共管共治 “0530”渐成共享单车行业新标准
火锅底料新手炒制要怎样避免雷区
侦查实验在司法实践中的应用与规范
碳化硅陶瓷射频功率器件载体性能优势
精确曝气系统在污水处理中的效果如何量化?
肝癌介入治疗全解析:方法、时机与效果
越是会正确表达攻击性的人,越强大
早期倾倒综合征处理方法
智能手环运动数据全解析:从心率到睡眠,科学解读你的健康数据
修家谱前需要做哪些准备工作
悬空寺:千年不倒的建筑奇迹