下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
蒙特卡洛模拟+贝叶斯优化案例:投资组合配置问题背景:某投资公司需优化股票、债券、基金的配置比例(总资金1000万元),目标是年收益率最高且风险(波动率)<10%。市场存在不确定性(如股票收益率波动大),需平衡收益与风险。数据:过去5年的资产收益率数据:股票(年均收益15%,波动率20%)、债券(年均收益5%,波动率5%)、基金(年均收益10%,波动率12%)。要求:用贝叶斯优化搜索最优配置比例,用蒙特卡洛模拟10000次市场情景,输出最优比例(如股票30%、债券50%、基金20%)及对应的收益分布(均值、95%置信区间),说明如何控制风险。15.蒙特卡洛模拟+贝叶斯优化代码:投资组合配置importnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltfromscipy.optimizeimportminimizefromskoptimportgp_minimize#需安装:pipinstallscikit-optimizefromskopt.spaceimportRealfromskopt.plotsimportplot_convergence#1.数据准备(资产历史收益率)np.random.seed(42)#三种资产:股票、债券、基金n_years=5n_samples=10000#蒙特卡洛模拟次数#历史收益率特征(均值、标准差、相关性)mean_returns=np.array([0.15,0.05,0.10])#年均收益率std_dev=np.array([0.20,0.05,0.12])#波动率corr_matrix=np.array([[1.0,0.3,0.7],#股票与其他资产的相关性[0.3,1.0,0.4],#债券与其他资产的相关性[0.7,0.4,1.0]#基金与其他资产的相关性])cov_matrix=np.outer(std_dev,std_dev)*corr_matrix#协方差矩阵#2.蒙特卡洛模拟函数defmonte_carlo_simulation(weights,mean_returns,cov_matrix,n_samples=10000,n_years=1):"""模拟投资组合的年收益率分布"""weights=np.array(weights)#计算组合的预期收益率和波动率port_mean=np.dot(weights,mean_returns)port_std=np.sqrt(np.dot(weights.T,np.dot(cov_matrix,weights)))#生成模拟收益率(假设服从正态分布)yearly_returns=np.random.multivariate_normal(mean_returns,cov_matrix,size=(n_samples,n_years))#计算累积收益率port_returns=d(1+np.dot(yearly_returns,weights),axis=1)-1returnport_returns#3.贝叶斯优化目标函数(最小化风险调整后的损失)defobjective_function(weights):"""目标:最大化夏普比率(收益率/波动率),转化为最小化负夏普比率"""weights=np.array(weights)weights=weights/np.sum(weights)#归一化权重#计算组合的预期收益率和波动率port_mean=np.dot(weights,mean_returns)port_std=np.sqrt(np.dot(weights.T,np.dot(cov_matrix,weights)))#风险约束:波动率必须<10%ifport_std>0.10:return1000#惩罚项#最大化夏普比率(假设无风险利率为0)sharpe_ratio=port_mean/port_stdifport_std!=0else-1000return-sharpe_ratio#转为最小化问题#4.运行贝叶斯优化space=[Real(0.01,0.98,name='股票权重'),#股票权重范围Real(0.01,0.98,name='债券权重')#债券权重范围(基金权重=1-股票-债券)]defconstraint_wrapper(weights):"""包装器:将二维权重转为三维(股票、债券、基金)"""stock_w,bond_w=weightsfund_w=1-stock_w-bond_wiffund_w<0.01:#基金权重下限return1000returnobjective_function([stock_w,bond_w,fund_w])#优化搜索result=gp_minimize(constraint_wrapper,space,n_calls=50,random_state=42)#提取最优权重stock_w,bond_w=result.xfund_w=1-stock_w-bond_wbest_weights=np.array([stock_w,bond_w,fund_w])print(f"最优投资组合权重:")print(f"股票:{stock_w:.2%}")print(f"债券:{bond_w:.2%}")print(f"基金:{fund_w:.2%}")#5.蒙特卡洛模拟评估最优组合port_returns=monte_carlo_simulation(best_weights,mean_returns,cov_matrix,n_samples,n_years=1)expected_return=np.mean(port_returns)risk=np.std(port_returns)print(f"\n预期年收益率:{expected_return:.2%}")print(f"收益率波动率:{risk:.2%}")print(f"夏普比率:{expected_return/risk:.2f}")print(f"亏损概率(收益率<0):{sum(port_returns<0)/n_samples:.2%}")#6.可视化结果#优化过程收敛图plot_convergence(result)plt.title('贝叶斯优化收敛曲线')plt.show()#收益率分布直方图plt.figure(figsize=(10,6))plt.hist(port_returns,bins=50,alpha=0.7,color='blue')plt.axvline(expected_return,color='red',li
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物探工岗中工作规范考核试卷含答案
- 2025银行招聘笔试试题及答案
- 医疗岗2026结构化面试自测卷附答案及解析
- 湖南财会岗2026事业单位面试自测卷模拟练习含答案
- 事业编教育管理岗2026必刷题试卷
- 财会岗2026模拟练习含答案配套答题思路自测卷
- Unit 4 Information Technology Viewing Workshop 教案-高一英语新北师大版必修第二册
- 2026年辽宁省部编版小学四年级科学第7课声音课件
- 2026消毒方面的试题及答案
- 2026年山西省政府采购评审专家考试试题及答案
- AQ 3026-2026《化工企业设备检修作业安全规范》解读课件
- 2026年上海市闵行区高三二模英语卷(含答案及解析)
- 经营服务费合同范本
- 早期维新思想课件
- 《电气工程及其自动化专业导论 第2版》课件 -第2章 电机电器及其控制
- 外墙外保温系统应用技术标准(岩棉) DG-TJ08-2126-2023
- 死亡病例讨论病例汇报
- 汽车和解协议书范本
- 第十八届“振兴杯”全国青年职业技能大赛(钳工赛项)决赛试题库-下(判断题)
- 《工程造价指标分类及编制指南》附录A 房屋建筑工程
- UL1977标准中文版-2019连接器UL中文版标准
评论
0/150
提交评论