关于算法:Python金融应用编程衍生品定价和套期保值的随机过程

141次阅读

共计 3653 个字符,预计需要花费 10 分钟才能阅读完成。

原文链接:http://tecdat.cn/?p=5620

原文出处:拓端数据部落公众号

随机过程对定量融资的许多方面都很有用,包含但不限于衍生品定价,风险管理和投资治理。这些应用程序将在本文前面进一步具体探讨。本节介绍了量化融资中应用的一些风行的随机过程及其在 Python 中的实现。

模型参数

模型参数类蕴含以下随机过程应用的所有参数。为了便于了解,这些参数的前缀是它们所用的随机过程的名称。随机过程的校准将波及寻找与某些历史数据相符的参数值。

绘制后果图

上面的代码应用 Matplotlib 来绘制一组随机过程。

布朗运动随机过程

布朗运动 是由悬浮在气体或液体中的颗粒体现出的随机静止。这种随机静止是由颗粒与液体或气体中的原子或分子碰撞引起的。布朗运动以植物学家罗伯特·布朗的名字命名,他察看了 1827 年的随机静止。

在实践中,布朗运动不用于模仿资产价格。我将其蕴含在内,因为它是本文中探讨的每个其余随机过程的根底。

def plot\_stochastic\_processes(processes, title):
    """
此办法绘制具备指定题目的随机过程列表:return:绘制两个图
    """plt.style.use(\['bmh'\])
    fig, ax = plt.subplots(1)
    fig.suptitle(title, fontsize=16)
    ax.set_xlabel('Time, t')
    ax.set_ylabel('Simulated Asset Price')
    x_axis = numpy.arange(0, len(processes\[0\]), 1)
    for i in range(len(processes)):
        plt.plot(x_axis, processes\[i\])
    plt.show()

以下是此办法生成的输入示例。

def brownian\_motion\_log_returns(param):
 
    sqrt\_delta\_sigma = math.sqrt(param.all\_delta) * param.all\_sigma
    return nrand.normal(loc=0, scale=sqrt\_delta\_sigma, size=param.all_time)


def brownian\_motion\_levels(param):
   
    return convert\_to\_prices(param, brownian\_motion\_log_returns(param))

应用布朗运动随机过程模仿资产价格:5 条门路

应用布朗运动随机过程模仿资产价格:500 条门路

几何布朗运动随机过程

几何布朗运动(GBM)由费舍尔布莱克和迈伦斯科尔斯推广,他们在 1973 年的论文“期权定价和公司负债”中应用它来推导出 Black Scholes 方程。几何布朗运动基本上是布朗运动,具备漂移重量和稳定率重量。公式如下

其中是资产价格 S 在工夫 t 的变动 ; μ 是每年预期的百分比漂移,dt 代表工夫,σ 是资产价格中预期的每日稳定率,Wt 是 Wiener 过程,也称为布朗运动。如下所示,布朗运动代码用于几何布朗运动办法以结构 Wt 的序列。

以下是此办法生成的输入示例。请留神,均匀而言,生成的门路随着工夫的推移而向上漂移,并且可能的 收盘价格 变动较大。在这个例子中,门路以每年 14%的均匀速率增长,因而预期 收益率 等于 14%,别离为三年和一年(800 天)。

应用几何布朗运动随机过程模仿资产价格。

Merton 跳跃扩散随机过程

Robert C. Merton 是最早解决 Fisher Black 和 Myron Scholes 提出的几何布朗随机过程中一些局限性的学者之一。1997 年,默顿和斯科尔斯因其工作取得了诺贝尔经济学奖。

其中是具备速率泊松过程 λ 和ÿ是对数正态分布的随机变量。

请留神,因为跳跃扩散过程引入了向下的不间断或跳跃,因而资产的均匀预期收益率略低。

应用默顿跳跃扩散几何布朗运动随机过程模仿资产价格。

Heston 随机稳定率过程

原始的几何布朗运动随机过程假如随工夫的稳定是恒定的。在 1990 年代晚期,Steven Heston 放宽了这个假如,并将几何布朗运动模型扩大到包含随机稳定率。

请留神,随着工夫的推移,资产价格会变得更加不稳固,从而导致潜在资产价格在预测完结时飙升。呈现这种景象是因为我将长期均匀稳定率设定为远高于起始稳定率的数字。

应用 Heston 随机稳定率几何布朗运动随机过程模仿资产价格。

COX INGERSOLL ROSS 随机过程

在 COX INGERSOLL ROSS(CIR)随机过程是用来形容一段时间的利率变动。

 其中是 Wiener 过程,a 是过程 均值回复的 速率(较大的数字导致更快的均值回复过程),b 是长期均匀利率,σ 是过程的稳定率。CIR 随机过程如下。

利用 Cox Ingersoll Ross 均值回归随机过程模仿利率。

ORNSTEIN-UHLENBECK 随机过程

Ornstein Uhlenbeck 过程以 Leonard Ornstein 和 George Eugene Uhlenbeck 命名。Ornstein Uhlenbeck 随机过程与 CIR 过程之间的区别在于 CIR 过程将随机重量乘以前一个利率值的平方根。

 其中是 Wiener 过程,a 是过程 均值回复 的速率(较大的数字导致更快的均值回复过程),b 是长期均匀利率,σ 是过程的稳定率。

利用 Ornstein Uhlenbeck 均值回归随机过程模仿利率。

衍生品定价和套期保值的随机过程

随机过程在量化金融中的最大利用是衍生品定价。

当对衍生品进行定价时,大多数量子将应用两种办法中的一种。要么为他们定价 建设Black Scholes 模型,要么他们将应用模仿办法来预计导数的值。这两种技术都重大依赖于应用随机过程来模仿底层证券。

===

衍生定价办法一 Black Schole

Black Scholes 模型用于在一组假如下对特定类型的衍生品合约进行定价。这些 假如 包含:(1)存在无风险利率,任何金额能够借入或借出,(2)根底价格依据几何布朗运动随机过程,(3)进化根底不领取股息,(4)市场上没有套利机会,(5)市场交易成本为零,(6)能够买入或卖出任何数量。

在这些假如下,能够导出着名的 Black Scholes 偏微分方程。

Black Scholes 公式以及各种模式期权定价公式的推导,是过来三十年中衍生品交易所大量增长的次要起因。

导数定价 办法二 – 模仿办法

鉴于 Black Scholes 公式隐含的局限性和假如,通常采纳蒙特卡罗办法(模仿)来为更少的简化假如。

这两个选项在计算复杂性和工夫之间进行衡量。每次想要对导数进行定价时,应用模仿办法计算复杂度更高,然而为代替随机过程推导 Black Scholes 偏微分方程的“等价”更加耗时,而后依然找到关闭模式的衍生品定价式。因而,大多应用模仿办法

想要这样做的起因如下图所示。事实上,你如何抉择和校准你的随机过程将对期权的预期收益产生 重大影响

红色椭圆形显示市场跳跃的地位。

===

应用衍生工具进行套期保值

套期保值 是风险管理策略。可对冲危险包含股票危险,利率危险,货币危险,信用风险,稳定危险和商品危险。套期保值是通过投资与投资组合中的根底负相关的资产来实现的。最简略的例子是在股票上买入看跌期权。当股票体现不佳时,看跌期权体现良好,而整体投资组合并没有像没有对冲时那样蹩脚。净效应是 收益 降落。

公司和基金将尝试确定投资组合所面临的危险因素并对冲这些危险因素。

除了我下面提到的问题之外,还有一些额定的“事实世界”问题。一个例子是个别老本和套期保值程序的复杂性(套期保值可能十分低廉)。对于组织而言,问题在于,在呈现不利损失的状况下,对冲危险或仅仅保留更多资本是否更 正当。近年来,诸如 Solvency II 和 Basel III 等法规要求银行,对冲基金和保险公司预留更多资金来反对其投资组合。储备通常保留在高流动性证券中,预期收益很低,如国库券。

论断

随机过程对于形容咱们世界中的 随机过程 十分有用。它们用于工程,遗传学,物理学和定量金融。数量应用随机过程来预测市场可能的回报和利率随工夫的变动。随机过程通常与蒙特卡罗办法联合应用。

十分感谢您浏览本文,有任何问题请在上面留言!


最受欢迎的见解

1.用 R 语言模仿混合制排队随机服务排队零碎

2. R 语言中应用排队论预测等待时间

3. R 语言中实现马尔可夫链蒙特卡罗 MCMC 模型

4. R 语言中的马尔科夫机制转换 (Markov regime switching) 模型

5.matlab 贝叶斯隐马尔可夫 hmm 模型

6.用 R 语言模仿混合制排队随机服务排队零碎

7.Python 基于粒子群优化的投资组合优化

8. R 语言马尔可夫转换模型钻研交通伤亡人数事变预测

9.用机器学习辨认一直变动的股市情况——隐马尔可夫模型的利用

正文完
 0