Jestem całkiem nowy w Pythonie, ale na papierze na uniwersytecie muszę zastosować kilka modeli, najlepiej Python. Spędziłem kilka dni z kodem, który dołączyłem, ale nie mogę naprawdę pomóc, co jest nie tak, to nie tworzy losowego procesu, który wygląda jak standardowe ruchy brwińskie z dryfem. Moje parametry, takie jak mu i sigma (oczekiwany zwrot lub dryf i zmienność), nie zmieniają nic poza nachyleniem procesu szumu. To mój problem, wszystko wygląda jak hałas. Nadzieję, że mój problem jest na tyle specyficzny, tu jest mój Coode:Kod Pythona: Geometryczne ruchy Browna - co jest nie tak?
import math
from matplotlib.pyplot import *
from numpy import *
from numpy.random import standard_normal
'''
geometric brownian motion with drift!
Spezifikationen:
mu=drift factor [Annahme von Risikoneutralitaet]
sigma: volatility in %
T: time span
dt: lenght of steps
S0: Stock Price in t=0
W: Brownian Motion with Drift N[0,1]
'''
T=1
mu=0.025
sigma=0.1
S0=20
dt=0.01
Steps=round(T/dt)
t=(arange(0, Steps))
x=arange(0, Steps)
W=(standard_normal(size=Steps)+mu*t)### standard brownian motion###
X=(mu-0.5*sigma**2)*dt+(sigma*sqrt(dt)*W) ###geometric brownian motion####
y=S0*math.e**(X)
plot(t,y)
show()
Postaraj się, aby kod był czytelny. – Mikhail
dziękuję za edycję @RocketDonkey –
Żaden mężczyzna problem :) – RocketDonkey