zoukankan      html  css  js  c++  java
  • QuantLib 金融计算——比较几种生成 Sobol 序列的方向数

    QuantLib 金融计算——比较几种生成 Sobol 序列的方向数

    概述

    Sobol 序列因方向数的选取而不同,下面比较一下 QuantLib 中 10 种方向数配置所产生的 Sobol 序列。

    QuantLib 提供 10 种方向数配置,分别是:

    • Jaeckel:理论支持的最大维度为 32,来源于文献 Monte Carlo Methods in Finance(by Peter Jäckel)
    • SobolLevitan:理论支持的最大维度为 40,来源于文献 Algorithm 659: Implementing Sobol's quasirandom sequence generator
    • SobolLevitanLemieux:理论支持的最大维度为 360,来源于文献 RandQMC user's guide - A package for randomized quasi-Monte Carlo methods in C
    • JoeKuoD5:理论支持的最大维度为 2000,来源于文献 Constructing Sobol sequences with better two-dimensional projections
    • JoeKuoD6:理论支持的最大维度为 21201,来源于文献 Constructing Sobol sequences with better two-dimensional projections
    • JoeKuoD7:理论支持的最大维度为 1900,来源于文献 Constructing Sobol sequences with better two-dimensional projections
    • Kuo:理论支持的最大维度为 4926,来源于文献 Constructing Sobol sequences with better two-dimensional projections
    • Kuo2:理论支持的最大维度为 3947,来源于文献 Constructing Sobol sequences with better two-dimensional projections
    • Kuo3:理论支持的最大维度为 4587,来源于文献 Constructing Sobol sequences with better two-dimensional projections
    • Unit:来源于文献 Monte Carlo Methods in Finance(by Peter Jäckel)

    如果序列的维度超过了理论支持的最大维度,剩余维度上的方向数由伪随机数(Mersenne twister)填充。

    更多关于 JoeKuoD5JoeKuoD6JoeKuoD7KuoKuo2Kuo3 的细节请查看:http://web.maths.unsw.edu.au/~fkuo/sobol/

    数值实验

    实验案例:算术平均亚式看涨期权。

    随机过程和期权参数配置:

    • \(s\):100.0
    • \(q\):0.0
    • \(r\):0.09
    • \(v\):0.2
    • 执行价:95.0
    • 时间长度:365 天、30 天

    实验路径数:1000、2000、3000、4000、5000、10000、20000、50000、100000

    长期期权实验结果

    • 不使用布朗桥

    JaeckelSobolLevitanSobolLevitanLemieux 三个低维度算法的表现明显好于其他。

    Unit 的表现非常糟糕,尽管表现出收敛的态势,但 100000 路径模拟结果是 18.16,而准确值则是 9.997(文献【1】)。

    注:NAG,SciPy 和 Julia 中的 Sobol 序列使用了 JoeKuoD6 的方向数配置:

    JoeKuoD6 的表现居然不及三个需要随机初始化的低维算法。

    • 使用布朗桥

    使用布朗桥之后,几种配置没有明显差别,Unit 的表现也有很大改善。

    短期期权实验结果

    • 不使用布朗桥

    • 使用布朗桥

    对于短期期权,无论是否使用布朗桥,各个方法没有明显差别。

    结论

    尽管其他知名软件包选择使用了 JeoKuoD6 的配置,但 QuantLib 当前的默认选项 Jaeckel 可能已然是最好的选择。(欢迎加入讨论:https://github.com/lballabio/QuantLib/issues/1219

    此外,布朗桥的使用真可谓“化腐朽为神奇”。

    扩展阅读

    参考文献

    1. Lo, Chien-Ling, Kenneth J. Palmer, and Min-Teh Yu. "Moment-matching approximations for Asian options." The Journal of Derivatives 21.4 (2014): 103-122.
    2. Sobol', Ilya M., et al. "Construction and comparison of high‐dimensional Sobol'generators." Wilmott 2011.56 (2011): 64-79.
    ★ 持续学习 ★ 坚持创作 ★
  • 相关阅读:
    js异步编程
    gitreset
    js数据类型
    vuex报错
    个人管理系统综述
    ffmpeg第7篇:数据流选择神器map指令
    eltable多选框根据条件隐藏显示
    [域渗透内网渗透] 从 web 到域控,你未曾设想的攻击链
    宽字节第二期线下培训开始招生啦!!!
    cve20212394 weblogic反序列化漏洞分析
  • 原文地址:https://www.cnblogs.com/xuruilong100/p/15643569.html
Copyright © 2011-2022 走看看