问题描述:
几何布朗运动(Geometric Brownian Motion,GBM)是一种常常用于模拟股票价格或汇率等金融资产价格的随机过程。
MATLAB代码:
clear all;clc;close all;
% 设置参数
T = 1; % 时间总长
N = 1000; % 时间步数
dt = T/N; % 时间步长
mu = 0.1; % 均值
sigma = 0.2; % 标准差
S0 = 100; % 初始价格
% 初始化向量
S = zeros(1,N); % 价格
t = zeros(1,N); % 时间
S(1) = S0; % 设置初始价格
t(1) = 0; % 设置初始时间
% 循环生成几何布朗运动
for i = 2:N
dW = sqrt(dt)*randn; % 布朗运动的增量
S(i) = S(i-1)*(1 + mu*dt + sigma*dW);
t(i) = t(i-1) + dt;
end
% 绘制图像
figure;
plot(t, S);
title('股价模拟');
xlabel('时间');
ylabel('股价');
程序结果: