Plotting graphs over each other for N iterations

조회 수: 1 (최근 30일)
Katie Brewer
Katie Brewer 2019년 2월 21일
댓글: Rena Berman 2019년 4월 2일
I have the follow code to model a brownian motion (from http://ac.aua.am/tigran_bunarjyan/Public/NA_Monte%20Carlo%20Presentation.pdf) but I want to plot for all the steps, ie have step=500; lines of brownian motions plotted on the same graph. I have read and watched so many tutorials but everything I have tried crashed matlab.
clear all
clc
S=100;
sigma=0.3;
T=1.2;
r=0.05;
step=500;
dt=T/step;
sqdt=sqrt(dt);
rr=randn(1, step);
St=S;
stockPrices=[];
ts=[];
stockPrices(1)=S;
ts(1)=0;
for st=1:step
St=St*(1+r*dt+sigma*sqdt*rr(1,st));
stockPrices(st+1)=St;
ts(st+1)=st;
end
%plot(ts,stockPrices)
title("Stock Price for Day =0...500");
xlabel=("Day");
ylabel=("Price");
  댓글 수: 3
Jan
Jan 2019년 3월 21일
편집: Jan 2019년 3월 21일
Katie Brewer has removed the contents of the question twice. She has removed the contents of her other 3 questions also. It seems, like she is not interested in a cooperative usage of the forum. What a pity.
Rena Berman
Rena Berman 2019년 4월 2일
(Answers Dev) Restored edit

댓글을 달려면 로그인하십시오.

답변 (1개)

Gani
Gani 2019년 2월 21일
편집: Gani 2019년 2월 21일
Check this.
clear all
clc
S=100;
sigma=0.3;
T=1.2;
r=0.05;
step=500;
dt=T/step;
sqdt=sqrt(dt);
rr=randn(1, step);
St=S;
stockPrices(1)=S;
ts= 1:step+1;
for st=1:step
St=St*(1+r*dt+sigma*sqdt*rr(1,st));
stockPrices(st+1)=St;
end
plot(ts,stockPrices)
title('Stock Price for Day =0...500');
xlabel('Day');
ylabel('Price');
  댓글 수: 2
Katie Brewer
Katie Brewer 2019년 2월 21일
This doesn't work, it just prints what I had before.
where each random path is printed over the top of the old one?
Gani
Gani 2019년 2월 22일
In Mathworks File Exchange there are some Brownian Motion functions uploaded. You can use them. The graphs are in 3-D. You can modify it to 2D if necessary.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by