⭐️ 小鹿在乱撞
小伙伴们肯定看过股票的走势,真是上蹿下跳啊,最近小编学了一丢丢关于随机过程和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)
代码执行结果如下,是不是有种股票价格走势的感觉啊!!
笔者水平有限,若有不对的地方欢迎评论指正!
时间有限,更多内容尽情期待!!