0} sa nazýva Wienerov proces, ak
) - W(t)
majú normálne rozdelenie s nulovou strednou hodnotou a s disperziou
,
t1
...
tn sú prírastky
Wti+1 - Wti nezávislé náhodné premenné s parametrami podľa predchádzajúceho bodu,
,2
, . . ., kde
je dostatočne malý časový krok.
, (k + 1)
] je náhodná premenná s nulovou strednou hodnotou
a varianciou
.
(* budeme potrebovat nahodne cisla z normalneho rozdelenia *)
<< Statistics`ContinuousDistributions`
(* pre skratenie zapisu definujme : *)
randn[] := Random[NormalDistribution[0, 1]];
(* SIMULACIA WIENEROVHO PROCESU *)
dt = 0.001; (* casovy krok *)
n = 1000; (* pocet krokov *)
t = Table[i*dt, {i, 0, n}]; (* vektor casov *)
w = {0}; (* Wienerov proces startuje z nuly *)
For [i = 1, i <= n, i++,
dw = Sqrt[dt]*randn[];
w = AppendTo[w, w[[i]] + dw];
];
ListPlot[Table[{t[[i]], w[[i]]}, {i, 1, n + 1}],
PlotJoined -> True, Frame -> True]
Ak je parameter
nulový, grafom je priamka. Pre nenulovú hodnotu
sa k tomuto lineárnemu trendu pridávajú náhodné fluktuácie.
SetDirectory["/home/stehlikova/fd2012svf"]; s = ReadList["goog.txt"]; dt = 1/252; (* denne data, cas sa v modeli pocita v rokoch *)Priebeh ceny je nasledovný:
n = Length[s];
v = {};
For[i = 1, i <= n - 1, i++,
v = AppendTo[v, Log[s[[i + 1]]/s[[i]]]];
];
a
miDelta = Mean[v]; (* odhad mi*dt *) s2Delta = Variance[v]; (* odhad (sigma^2)*dt *)
a
:
mi = miDelta/dt (* odhad parametra mi *) sigma = Sqrt[s2Delta/dt] (* odhad parametra sigma *)
.
= 0.30,
= 0.25
a že dnešná cena akcie je 150 USD.