估值定价类函数

由于篇幅所限,上述指标的概念详解、业务场景、使用算法、函数说明与使用范例等细节请参考阅读原文~
风险管理类函数


首先我们测试了 DolphinDB 估值定价与风控类函数,在实际大数据量业务场景下的计算效率:
业务场景:给定债券 ID,结算日,到期日,票息率,贴现率,付息频率,债券类型和收益率等数据,计算全价,应付利息,久期,凸度,在险价值(VaR)和条件在险价值(CVaR)等量价指标。 CPU 核数:估值定价与风控类函数使用内存表进行测试,只分配了一个线程运行。
耗时如下:

可以看到,在大数据量的情况下,DolphinDB 估值定价函数与风控函数可以将计算耗时控制在毫秒级。
曲线拟合与插值函数
DolphinDB 提供的曲线拟合与插值相关函数如下:

接下来,通过三个与 python 的性能对比测试,我们来了解一下 DolphinDB 拟合插值函数的性能。
分段回归性能测试
piecewiseLinFit对一天共400+标的的利率曲线数据进行测试,其中分别测试了 3段、4段、5段、10段回归的性能,每一种情况,都测试了1只标的和多只标的下的性能。
CPU 核数:多个标的计算,使用单线程进行计算。
注意点:
对比分段回归拟合函数和预测函数,耗时集中在模型拟合上,预测耗时可以忽略不计。因此,测试仅展示回归拟合的耗时结果。
python 中有 pwlf 包,效果类似于 DolphinDB 的
piecewiseLinFit
函数因此加入 python 耗时作为对比。该函数由于受 openblas 的线程数影响较大,所以将这个线程数统一设置为1,观察性能对比情况。

赫尔米特函数性能测试
kroghInterpolate对一天共400+标的的利率曲线数据进行测试,同时增大数据量以测试不同数据量下的性能差异。
CPU 核数:多个标的计算,但只用到了单个核,DolphinDB 可以使用向量化处理,结合 SQL 使用。 注意点:python 使用 scipy.interpolate.KroghInterpolator
函数实现。
测试性能结果如下:

Nelson-Siegel-Svensson(NSS) 函数性能测试
nss函数对一天共400+标的的利率曲线数据进行测试,同时增大数据量以测试不同数据量下的性能差异。
CPU 核数:多个标的计算,但只用到了单个核计算。 注意点:python 由于没有可以直接使用的函数,参照模型的公式,使用 fmin 和 numpy 相关函数实现。
测试性能结果如下:

可以看到,由于 DolphinDB 强大的向量化计算能力,固收函数的计算性能要比 python 快一个数量级以上。
实时曲线拟合引擎 & 估值定价引擎


总的来说,DolphinDB 在 FICC 固收领域开发的一系列函数覆盖了估值定价、曲线拟合、风险指标计算等多种不同类型的业务场景,函数的具体介绍与性能测试脚本可点击阅读原文详细了解。
未来随着版本更新,我们也会推出更多更丰富的 FICC 固收系列内置函数,欢迎大家留言或联系小助手(dolphindb1)提出宝贵建议~

扫描二维码,添加 DolphinDB 小助手
文章转载自DolphinDB智臾科技,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




