用户故事

PZU集团开发偿付能力II指令合规市场风险模型

挑战

在改善市场风险管理的同时,确保遵守欧洲偿付能力II指令的资本要求

解决方案

使用MATLAB汇总和清理来自多个来源的金融数据,开发一个全面的市场风险模型,运行蒙特卡洛模拟,并量化VaR

结果

  • 加快市场风险模型建设
  • 由非程序员交付的生产系统
  • 计算时间减少了85%

“尽管我几乎没有接受过编程教育,但MATLAB让我能够轻松地自己尝试想法,从而使我成为一名程序员。MATLAB不仅是一个数学工具;它处理数据文件处理、错误检查和开发财务模型时需要完成的其他繁琐任务。”

Adam Nowicki, PZU SA
图显示如何最小化真实和预期概率密度之间的差异,帮助PZU识别风险中性密度函数。

图显示如何最小化真实和预期概率密度之间的差异,帮助PZU识别风险中性密度函数。


欧盟的偿付能力II指令包括偿付能力资本要求(SCR),定义了保险公司必须持有多少资本。《偿付能力II》的推出是为了降低保险公司无法完全偿付索赔的风险,它要求保险公司对其面临的市场风险以及风险价值(VaR)。

作为波兰最大的金融机构之一和中东欧最大的保险集团,PZU集团在MATLAB中开发了一个市场风险模型®以达到偿付能力II的要求,并更有效地管理风险。

“我们需要知道我们的风险在哪里,而偿付能力资本要求的标准公式并不能给我们所有的答案,”PZU风险管理部门的专家协调员亚当•诺维奇(Adam Nowicki)表示。“我们在MATLAB中开发的内部市场风险模型不仅支持遵守偿付能力II指令的原则,还为我们的市场风险状况提供了有价值的见解。”

挑战

为了计算市场风险,PZU需要处理来自十几个内部会计和交易系统的不同格式的数据。由于无法找到能够满足其需求的商业上可用的市场风险解决方案,PZU风险建模小组考虑了开发自己的几个选项。一个选择是一个用于符号数学计算的软件包,但该软件缺乏该小组所需的文件处理和错误检查功能。

该小组此前使用Visual Basic for Applications (VBA)开发了风险模型,但发现这种方法有几个缺点。VBA的困难从令人厌烦的(例如,日期处理中的月和日的切换)到更严重的对优化求解器结果的担忧。

团队需要一个开发环境,非程序员可以使用它来开发一个完整的、可用于生产的市场风险解决方案——从数据收集和清理到风险建模、蒙特卡洛模拟和VaR计算。他们希望利用多核处理器进行并行计算,从而加快计算速度。

解决方案

PZU利用MATLAB建立了一个全面的市场风险模型。

在MATLAB中使用统计和机器学习工具箱™,Nowicki开发了从各种来源导入和清理数据的算法,包括来自内部PZU系统的会计和交易数据,以及来自彭博社的时间序列市场数据。在检查数据的异常值和错误之后,算法将来自所有来源的数据连接起来,并将其转换为标准格式。

Nowicki基于GARCH过程在MATLAB中开发了时间序列市场风险模型,并使用清理后的数据进行了校正。对于每个时间序列(包括利率、股票、货币和指数),模型评估PZU的当前位置。对于带息票的债券,该模型使用Financial Toolbox™计算现金流日期。

Nowicki使用MATLAB非线性优化函数fminsearch拟合市场风险模型中的概率密度函数,使真实概率密度与期望概率密度之间的差异最小化。

为了加速这些优化,Nowicki使用并行计算工具箱™在八核处理器上并发执行这些优化。

在使用该模型在MATLAB中运行蒙特卡洛模拟之后,Nowicki的算法为PZU仪器定价,评估公司的头寸,并计算VaR。

作为最后一步,Nowicki创建了一个界面,其他分析师可以使用该界面运行模型并可视化结果,即使他们没有MATLAB的经验。这个接口和底层模型现在在PZU的生产中使用。

结果

  • 加快市场风险模型建设。诺维奇说:“使用多种工具来开发一个金融模型可能很耗时,还会造成沟通困难。”“用MATLAB开发更快,因为我可以在一个屋檐下做所有事情,包括收集数据、与外部系统和提供商连接、清理数据、执行数学计算和优化,以及报告结果。”
  • 由非程序员交付的生产系统。“我的专业是经济学,不是编程,”诺维奇说。“尽管我不认为自己是一个伟大的程序员,但MATLAB使我能够应用我在金融方面的专业知识,开发一个专有的市场风险模型,这是任何供应商都无法提供给我们的。”
  • 计算时间减少了85%。“当我开始用并行计算工具箱同时优化多个时间序列时,处理时间从一分钟多降到不到10秒,”Nowicki说。“我惊讶地发现,现在复杂的优化比数据收集和清理所需的时间更短。”

2022世界杯八强谁会赢?产品使用

展示你的成功

加入客户参考计划

Baidu
map