关于数据挖掘:Python金融应用编程衍生品定价和套期保值的随机过程附代码数据

8次阅读

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

全文链接: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 条门路


点击题目查阅往期内容

Matlab 马尔可夫链蒙特卡罗法(MCMC)预计随机稳定率(SV,Stochastic Volatility)模型

左右滑动查看更多

01

02

03

04

应用布朗运动随机过程模仿资产价格: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 等法规要求银行,对冲基金和保险公司预留更多资金来反对其投资组合。储备通常保留在高流动性证券中,预期收益很低,如国库券。

论断

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

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

点击文末 “浏览原文”

获取全文残缺代码数据资料。

本文选自《Python 金融利用编程: 衍生品定价和套期保值的随机过程》。

点击题目查阅往期内容

R 语言计算资本资产定价模型 (CAPM) 中的 Beta 值和可视化 \
R 语言中进行期权定价的 Heston 随机稳定率模型 \
R 语言基于线性回归的资本资产定价模型(CAPM)\
R 语言对巨灾危险下的再保险合同定价钻研案例:狭义线性模型和帕累托散布 Pareto distributions 剖析 \
R 语言 Black Scholes 和 Cox-Ross-Rubinstein 期权定价模型案例 \
R 语言用多元 ARMA,GARCH ,EWMA, ETS, 随机稳定率 SV 模型对金融工夫序列数据建模 \
R 语言 HAR 和 HEAVY 模型剖析高频金融数据稳定率 \
R 语言 ARMA-GARCH-COPULA 模型和金融工夫序列案例 \
R 语言剖析负利率下金融市场:负利率和年金价值的变动 \
应用 R 语言随机稳定模型 SV 解决工夫序列中的随机稳定率 \
Python 随机稳定率 (SV) 模型对标普 500 指数工夫序列波动性预测 \
R 语言预测稳定率的实现:ARCH 模型与 HAR-RV 模型 \
R 语言工夫序列 GARCH 模型剖析股市稳定率 \
R 语言 ARMA-EGARCH 模型、集成预测算法对 SPX 理论稳定率进行预测

正文完
 0