QuantLib学习笔记——看看几何布朗运动有没有股票走势的感觉

news2025/1/19 16:18:08

⭐️ 小鹿在乱撞

小伙伴们肯定看过股票的走势,真是上蹿下跳啊,最近小编学了一丢丢关于随机过程和QuantLib的知识,想利用随机过程生成一个类似股票价格走势的图,安排!!!

在这里插入图片描述

⭐️ 随机过程

随机过程网上的资料很多啊,这里就不再赘述了,这里说明一下本文使用的随机过程是几何布朗运动。

在这里插入图片描述

⭐️ 随机数产生器

随机数生成器是随机模拟的关键,它能不断产生随机的数值,进而驱动随机过程的进行。

在这里插入图片描述

⭐️ 代码

import numpy as np
import QuantLib as ql
import matplotlib.pyplot as plt


if __name__ == "__main__":
    # 几何布朗运动初始化
    initialValue = 100
    mu = 0.01
    sigma = 0.2
    process = ql.GeometricBrownianMotionProcess(initialValue, mu, sigma)
    # 随机数生成器
    uni_rng = ql.MersenneTwisterUniformRng()
    rng = ql.BoxMullerMersenneTwisterGaussianRng(uni_rng) 
    # 开始时间
    t = 0.0
    # 时间间隔
    dt = 0.1
    # 初始值,例如股票价格初始值
    x = initialValue
    # 绘图坐标值
    x_ = [t]
    y_ = [x]
    # 填充绘图坐标值
    for i in np.arange(0, 1000):
        dw = rng.next().value()
        x = process.evolve(t, x, dt, dw)
        t += dt
        x_.append(t)
        y_.append(x)        
            
    plt.plot(x_, y_)
    # plt.show()
    plt.savefig('process.png', dpi=800)

代码执行结果如下,是不是有种股票价格走势的感觉啊!!

在这里插入图片描述

笔者水平有限,若有不对的地方欢迎评论指正!
时间有限,更多内容尽情期待!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/997367.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于seata实现分布式事务实现订单服务 + 账户服务 + 商品库存服务之间的分布式事务

概述 实现订单服务 账户服务 商品库存服务之间的分布式事务. 订单服务生成订单,同时调用账户服务扣减金额, 调用库存服务扣减库存. 服务采用seata的刚性事务, 保证数据一致性. 详细 1.需求(要做什么) 模仿一个购物流程. 利用seata的分布式事务实现 …

【数据结构】栈、队列和数组

栈、队列和数组 栈队列数组数组的顺序表示和实现顺序表中查找和修改数组元素 矩阵的压缩存储特殊矩阵稀疏矩阵 栈 初始化 #define MaxSize 50//栈中元素的最大个数 typedef char ElemType;//数据结构 typedef struct{int top;//栈顶指针ElemType data[MaxSize];//存放栈中的元…

MySQL无法查看系统默认字符集以及校验规则

show variables like character_set_database; show variables like collation_database;这个错误信息表示MySQL在尝试访问performance_schema.session_variables表时,发现该表不存在。这个问题可能是由于MySQL的版本升级导致的。解决这个问题的一种方法是运行mysql…

[管理与领导-81]:IT基层管理者 - 核心技能 - 高效执行力 - 6- 两大思维:服务思维、重点思维、高效与快速的区别?

目录 前言: 一、服务思维 二、重点思维 三、高效与快速的区别 补充:执行人才的表现 前言: 在某种程度上,高效与完美是相互制约的,要想高效,大多数时候,会牺牲一部分完美,而要达…

Pandas 掉包侠刷题实战--条件筛选

本博文内容为力扣刷题过程的记录,所有题目来源于力扣。 题目链接:https://leetcode.cn/studyplan/30-days-of-pandas/ 文章目录 准备工作1. isin(values) 和 ~2. df.drop_duplicates()3. df.sort_values()4. df.rename()5. pd.merge() 题目-条件筛选1. 大…

postgresql-窗口函数种类

postgresql-聚合窗口函数 聚合函数排名窗口函数案例1案例2 取值窗口函数环比增长率同比增长率 聚合函数 常用的聚合函数,例如 AVG、SUM、COUNT 等,也可以作为窗口函数使用 --计算移动平均值 select saledate, amount, avg(amount) over (order by sale…

Leetcode - 361周赛

一&#xff0c;2843. 统计对称整数的数目 这道题直接暴力&#xff0c;要注意的一点是这个数字必须是由 2 * N 位数字组成。 代码如下&#xff1a; class Solution {public int countSymmetricIntegers(int low, int high) {int ans 0;for(int ilow; i<high; i){if(i>1…

threejs的dat.gui辅助工具的使用

threejs的dat.gui辅助工具的使用 安装使用 安装 npm i dat.gui -S 使用 import dat from dat.gui const controlData {rotationSpeed: 0.01,color: #66ccff,wireframe: false } const gui new dat.GUI() const f gui.addFolder(配置) f.add(controlData, rotationSpeed, …

【Proteus仿真】【STM32单片机】血压心率血氧体温蓝牙

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 系统运行后&#xff0c;LCD1604液晶显示心率、血氧、血压和体温&#xff0c;及其阈值&#xff1b;可通过K3键进入阈值设置模式&#xff0c;K1和K2加减调节&#xff0c;K4确定&#xff1b;当检测心率、血氧…

Java JUC 并发编程(笔记)

文章目录 再谈多线程并发与并行顺序执行并发执行并行执行 再谈锁机制重量级锁轻量级锁偏向锁锁消除和锁粗化 JMM内存模型Java内存模型重排序volatile关键字happens-before原则 多线程编程核心锁框架Lock和Condition接口可重入锁公平锁与非公平锁 读写锁锁降级和锁升级 队列同步…

ARMv7-A 那些事 - 2.通用寄存器与流水线

By: Ailson Jack Date: 2023.09.10 个人博客&#xff1a;http://www.only2fire.com/ 本文在我博客的地址是&#xff1a;http://www.only2fire.com/archives/154.html&#xff0c;排版更好&#xff0c;便于学习&#xff0c;也可以去我博客逛逛&#xff0c;兴许有你想要的内容呢。…

Visual Studio 2019 简单安装教程

思路 官方页面下载 – 安装Visual Studio Installer – 安装Visual Studio 2019 下载 打开页面&#xff1a;Visual Studio 2019 生成号和发布日期 | Microsoft Learn 点击需要的版本&#xff0c;跳转后会开始下载在线安装包&#xff0c;这里选择第一个Community版本 安装 …

SpringBoot【基础篇】

一、快速上手 按照要求&#xff0c;左侧选择web&#xff0c;然后在中间选择Spring Web即可&#xff0c;选完右侧就出现了新的内容项&#xff0c;这就表示勾选成功了 关注&#xff1a;此处选择的SpringBoot的版本使用默认的就可以了&#xff0c;需要说一点&#xff0c;SpringBo…

PatchMatchNet 学习笔记 译文 深度学习三维重建

9 PatchMatchNet CVPR-2021 patchmatchnet源码下载 PatchMatchNet 代码注释版 下载链接(注释非常详细,较源码结构有调整,使用起来更方便) PatchMatchNet-CVPR-2021(源码、原文+注释+译文+批注) 9.0 主要特点 金字塔,基于传统的PatchMatch算法,精度高,速度快 Pa…

Redis带你深入学习数据类型set

目录 1、set 2、set相关命令 2.1、添加元素 sadd 2.2、获取元素 smembers 2.3、判断元素是否存在 sismember 2.4、获取set中元素数量 scard 2.5、删除元素spop、srem 2.6、移动元素smove 2.7、集合中相关命令&#xff1a;sinter、sinterstore、sunion、sunionstore、s…

基于SSM的在线购物系统

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

nrf52832 GPIO输入输出设置

LED_GPIO #define LED_START 17 #define LED_0 17 #define LED_1 18 #define LED_2 19 #define LED_3 20 #define LED_STOP 20设置位输出模式&#xff1a; nrf_gpio_cfg_output(LED_0); 输出高电平:nrf_gpio_pin_set(LED_0); 输…

sqli-labs关卡之一(两种做法)

目录 一、布尔盲注(bool注入) 二、时间盲注(sleep注入) 一、布尔盲注(bool注入) 页面没有报错和回显信息&#xff0c;只会返回正常或者不正常的信息&#xff0c;这时候就可以用布尔盲注 布尔盲注原理是先将你查询结果的第一个字符转换为ascii码&#xff0c;再与后面的数字比较…

[EROOR] SpringMVC之500 回调函数报错

首先&#xff0c;检查一下idea里面的报错的原因&#xff0c;我的是jdk的版本的问题。所以更换一下就可以了。

操作系统:四大特征(并发,共享,虚拟,异步)

1.并发 1.并发的定义 并发:指两个或多个事件在同一时间间隔内发生。 这些事件宏观上是同时发生的&#xff0c;但微观上是交替发生的。 值得注意的是&#xff0c;与并行&#xff08;指两个或多个事件在同一时刻同时发生&#xff09;区分开来。 2.操作系统的并发性 指计算机…