Numpy Exercise 3

Imports


In [2]:
import numpy as np
%matplotlib inline
import matplotlib.pyplot as plt
import seaborn as sns

In [3]:
import antipackage
import github.ellisonbg.misc.vizarray as va


Downloading:  https://raw.githubusercontent.com/ellisonbg/misc/master/vizarray.py
Using existing version:  github.ellisonbg.misc.vizarray

Geometric Brownian motion

Here is a function that produces standard Brownian motion using NumPy. This is also known as a Wiener Process.


In [4]:
def brownian(maxt, n):
    """Return one realization of a Brownian (Wiener) process with n steps and a max time of t."""
    t = np.linspace(0.0,maxt,n)
    h = t[1]-t[0]
    Z = np.random.normal(0.0,1.0,n-1)
    dW = np.sqrt(h)*Z
    W = np.zeros(n)
    W[1:] = dW.cumsum()
    return t, W

Call the brownian function to simulate a Wiener process with 1000 steps and max time of 1.0. Save the results as two arrays t and W.


In [5]:
# YOUR CODE HERE
t, W = brownian(1.0, 1000)

In [6]:
assert isinstance(t, np.ndarray)
assert isinstance(W, np.ndarray)
assert t.dtype==np.dtype(float)
assert W.dtype==np.dtype(float)
assert len(t)==len(W)==1000

Visualize the process using plt.plot with t on the x-axis and W(t) on the y-axis. Label your x and y axes.


In [7]:
# YOUR CODE HERE
plt.plot(t,W)
plt.xlabel("W")
plt.ylabel("t")


Out[7]:
<matplotlib.text.Text at 0x7f94d3813d50>

In [8]:
assert True # this is for grading

Use np.diff to compute the changes at each step of the motion, dW, and then compute the mean and standard deviation of those differences.


In [11]:
# YOUR CODE HERE
dW = np.diff(W)
print dW
print np.mean(dW)
print np.std(dW)


[ -2.83956311e-02  -5.69123099e-03   4.21276658e-02  -7.11969256e-02
   2.38947651e-02  -3.31756276e-02  -3.67707994e-02   1.44417396e-02
  -4.59119653e-02  -1.65076986e-02   2.77194025e-02  -2.15156212e-02
   5.60156241e-02  -6.93662486e-02   3.67413936e-02  -4.15701619e-02
   3.21977593e-02   1.88965810e-02  -4.48343415e-02  -5.98980722e-05
  -3.12699917e-02  -3.79210693e-02   1.28774056e-02   8.13273642e-02
   5.22898387e-02  -3.16237266e-02   1.96717163e-02  -3.65081514e-03
   3.55174624e-02   1.30973866e-02  -3.69267170e-02   2.30978676e-04
  -1.41637713e-02   4.33613795e-02   8.36483643e-03   1.83908324e-02
  -2.08322968e-02   8.45125365e-03   6.08616049e-03  -4.95101809e-03
   3.89121074e-02  -3.72397507e-02   3.21436416e-02  -2.17710532e-02
  -2.64966058e-02   2.29956718e-02   6.13230543e-02  -1.48679969e-03
  -1.05836201e-02  -1.69270399e-05   1.59954074e-03  -2.29929251e-02
  -2.89097468e-03  -5.44779200e-02  -3.09596645e-02  -3.53409505e-02
  -3.98305340e-02   2.77375320e-02   2.17791355e-02   4.05083351e-02
  -1.99623705e-02   4.09817239e-03  -1.79069645e-02  -2.75074291e-02
  -1.80495932e-02   3.85805675e-02   2.61984556e-02   9.45078338e-03
  -6.10775495e-02   4.69897449e-02   7.39458043e-03  -9.29490682e-03
  -1.08003251e-02   3.26463932e-02  -9.77851236e-03  -2.23227237e-02
   1.28460811e-02   3.60973302e-02  -1.81037136e-02  -7.78375192e-03
  -1.45521838e-02   6.70608999e-03  -2.20729285e-02   1.38820374e-02
   4.72284967e-02   2.01172583e-02  -7.34350098e-03   3.88790123e-03
   9.35476542e-03   3.59908490e-02  -3.20132045e-02   3.24931978e-02
   1.61559242e-02   2.74348941e-03   4.13358462e-03  -4.65286649e-02
  -1.72685847e-02  -2.81933963e-02   2.33982806e-02  -3.05772825e-03
  -1.23984806e-02  -2.67090649e-02   1.68686247e-02  -8.10249281e-02
   2.66260904e-02  -2.68156883e-02   3.07856199e-02  -2.87420191e-02
   3.57586783e-02   4.15445622e-02   2.39511382e-02   8.31438758e-03
  -2.83061217e-02   7.93228715e-03  -2.07158796e-02   7.24932919e-02
  -6.97403637e-03  -6.68350833e-02   2.43946160e-02   3.27159466e-02
  -3.80404301e-02  -4.65032019e-02   3.62894792e-03   5.97400499e-02
   2.96488551e-02  -3.60621443e-02  -7.40368024e-02  -4.20116286e-03
  -1.92568135e-02  -5.53058760e-02  -1.23648145e-02   2.72429853e-02
  -8.46205720e-02   1.32555889e-03   4.59540704e-02   8.20370483e-02
  -2.60350653e-03  -2.14906349e-02  -2.89774205e-03   2.50523890e-02
  -4.52943230e-02   4.28855837e-02  -7.79544395e-03  -3.06976052e-02
  -1.44099702e-02  -7.00521555e-03  -7.18996632e-02  -1.90807550e-02
   4.48643516e-02  -4.05447363e-03  -1.56800395e-02   6.06201038e-02
   2.41297098e-02   3.75956494e-03  -3.17630834e-02  -5.35805126e-03
   3.67950782e-02   5.97743453e-03   4.12721712e-03   2.12337155e-02
   2.15293358e-03  -2.61290295e-03   4.54626516e-03  -2.47047119e-02
  -4.14371073e-03  -7.85100930e-03  -2.51347126e-02  -2.53405619e-02
   1.97898474e-02   1.16169090e-02  -3.26872251e-02   2.07728678e-02
  -4.35298962e-02   1.32516202e-02  -5.77544898e-03   2.24666396e-02
  -3.91590958e-03   1.99861806e-02  -6.69886370e-02   2.38788782e-03
  -4.62172950e-02   1.79977833e-02   4.56339661e-03   1.31667354e-03
  -2.86583402e-02   1.64489175e-03   4.74774515e-02  -4.68481399e-02
  -2.68355205e-02  -2.23420312e-02   1.43672486e-02   2.43972991e-03
   9.89089276e-03   8.66420034e-03   1.75695126e-02  -3.15881711e-02
  -3.71972935e-03   3.89081657e-02  -7.59382648e-03  -1.05911270e-02
   2.91013282e-02  -1.90702854e-02  -2.02592337e-02  -8.30095055e-02
  -1.25865994e-02  -4.58156352e-02   9.41855787e-03  -2.80440805e-03
   1.42865360e-02  -8.79758771e-03   1.10218449e-02   2.80353479e-02
  -6.36764336e-03   4.27461213e-02  -3.38649934e-02   3.24214110e-02
   4.19299381e-02  -6.18270620e-03   7.32321735e-02   7.22811453e-02
   3.44636011e-02  -4.53568016e-03   1.02917406e-02  -4.23085713e-02
  -9.11931347e-03   2.10396997e-02   4.98508802e-02  -1.59643441e-02
  -4.31242984e-03  -2.75328195e-02  -3.08295118e-02   4.42558389e-02
   4.58494068e-02  -3.75458853e-02  -3.57950937e-02  -4.59700994e-03
  -1.05036233e-02  -9.91255571e-03   8.43592581e-02   5.02593958e-02
   4.25342714e-02   1.00540278e-02  -1.24895429e-02  -5.86407413e-02
  -5.83946037e-03  -4.79653586e-02   6.84210375e-02   1.36879613e-02
   4.37723957e-02  -1.13399928e-02  -5.46626041e-02  -5.90816787e-02
  -6.17169503e-02   1.07459529e-02  -2.59656030e-04   7.41989079e-02
   4.33816133e-02  -1.27460453e-02   2.86036278e-02   2.93146140e-02
   2.63036652e-02   1.99029018e-02  -3.39970746e-03  -2.81361524e-02
  -2.55338133e-02   2.24457535e-02   6.60860033e-02  -4.08236123e-02
  -2.39959972e-02   2.09472074e-02  -5.23767238e-02  -2.86125957e-02
   6.92818652e-02  -4.32169385e-02   2.81509802e-03   2.36943562e-02
  -1.02023245e-02   8.44463664e-02  -7.34424457e-02   9.78320096e-03
   9.48641872e-02  -3.55265301e-03   2.64228908e-02  -2.56386469e-02
   5.01077534e-04   4.98593204e-02   4.15181049e-03  -4.04683160e-02
  -1.94889414e-02  -2.34275306e-02   2.25609018e-02  -3.14669720e-02
   3.39630821e-02  -9.03561480e-03   3.15352568e-02  -3.94468423e-02
   1.55382646e-02   3.62150906e-03  -7.92494017e-04   5.12353136e-02
   5.35374376e-02   5.56440867e-03  -4.40586193e-02  -2.66137658e-02
  -7.62733729e-03  -2.71265021e-02   2.35026039e-02  -3.24712197e-02
  -3.69798713e-02  -2.15951934e-02   1.81741222e-04   1.16460866e-02
   2.07956423e-02  -3.24843843e-02   1.60047701e-02   4.24394491e-03
  -2.94616260e-02  -2.58250468e-02   6.65687155e-02  -1.46982635e-02
   3.96554399e-02  -8.75090653e-03  -1.04863449e-02  -4.37478227e-02
   1.57615333e-02   5.94256054e-04  -2.44243544e-03  -2.41789077e-02
   7.42545622e-03   4.17255042e-02  -4.29729589e-02   1.44093526e-02
   6.79532816e-03  -2.11222837e-02   1.23450296e-02   7.05783897e-02
   9.91058432e-03  -4.35245611e-02  -2.70180252e-03  -2.16205780e-02
   2.37270768e-03   1.85345093e-02   4.72562165e-02  -4.96294195e-03
  -8.04977380e-02   1.92040900e-02   1.81585746e-03  -6.17793822e-03
  -2.62130477e-02  -3.97673584e-02  -5.72212447e-02   3.49700815e-02
  -5.78076119e-02   2.72533019e-02   2.08443267e-02   2.51379140e-02
  -1.91301524e-02   2.11750784e-02  -2.92845269e-02  -3.70864705e-02
   3.63364378e-02  -5.40602503e-02  -1.14236307e-03   1.27218512e-02
  -4.54927950e-03  -1.61200338e-02  -4.39581988e-02   1.80946695e-02
   1.42292833e-02  -9.86796599e-02  -2.92012757e-02  -7.09592192e-02
  -2.45031127e-03   2.65293657e-02  -3.13808356e-02   3.54807046e-02
  -7.67300719e-03   2.24022883e-02  -5.59396246e-02  -1.00894623e-02
  -3.23402688e-02   1.37980679e-02   1.09362069e-02   1.27272415e-02
  -3.83698038e-02  -1.22818934e-02  -4.50533901e-02   1.61423359e-02
   3.27747301e-02   4.70325635e-02   1.13804044e-02   1.17246984e-02
  -1.72821253e-02  -7.77559818e-03  -1.38291646e-02  -7.37797377e-03
  -4.74342202e-03   1.19456254e-02  -4.04129316e-02  -3.17911254e-02
  -2.40771138e-02  -1.27331618e-02  -4.86137385e-03   1.78108640e-02
  -8.48499224e-03  -2.95131395e-02   7.51678265e-02   7.30841489e-02
   2.82810779e-02   4.58176516e-02  -2.27035025e-03   6.81247601e-03
   4.27686705e-02   4.56169976e-02  -2.95885771e-02  -2.15429488e-02
   1.55122798e-02   4.51949158e-02  -6.48485527e-02  -1.26589026e-02
   9.44591921e-03   9.37699369e-04  -5.69986410e-03  -2.33685323e-02
   4.71836190e-02  -5.75285363e-03   3.24499504e-02   1.36583657e-03
   5.33280690e-02  -1.33497036e-02  -2.12395949e-02  -1.80999996e-02
  -9.21270897e-03   1.44434009e-02  -2.70489225e-02   8.49896586e-02
   1.67007073e-02   4.51397619e-02  -3.83092259e-02  -1.50389594e-02
   6.12973898e-02   2.29182199e-02  -1.65603237e-02   2.09426253e-02
  -1.86275400e-02  -2.94500624e-02   5.96306239e-03  -1.28236574e-03
  -5.71153890e-03  -3.12248832e-03  -4.18089634e-02   2.07891383e-02
  -5.02959615e-02   3.00850829e-02   2.68969149e-02  -5.83334949e-03
  -4.75912452e-02   3.99536305e-02  -3.64355561e-02  -3.49736833e-02
   4.18169862e-02   1.85375413e-02  -2.17776423e-03  -6.62460388e-03
   2.71627241e-02  -1.31562187e-02  -2.43578767e-02  -1.82497434e-02
   3.58724763e-02   4.62146211e-03   5.05037737e-03  -2.13355918e-02
   8.19992358e-03  -8.00830504e-03  -4.89995457e-02  -2.56633925e-03
  -1.29998834e-02  -9.83914961e-03   3.32712800e-02  -1.05978987e-02
  -3.99840989e-02  -5.13603442e-03  -2.01553700e-02  -4.89266735e-02
   5.03147378e-02   1.38777054e-02  -6.05413390e-03   8.85513153e-03
   3.90028248e-02   2.40298883e-02   4.12416891e-02  -2.11064639e-02
   5.30821964e-02   3.35285899e-02  -1.36147369e-02   3.87589164e-02
   1.82501106e-02   9.52166560e-03   4.95209888e-02   1.90492992e-02
  -1.10824509e-02   9.32560477e-02  -4.68874601e-03  -3.95583149e-03
  -2.98198745e-02  -1.99129737e-02  -1.13389282e-02  -3.11104090e-02
   2.73270972e-02   1.76524820e-03  -7.78285014e-03   1.30084385e-02
   1.93564712e-02   3.19100165e-02  -6.93520922e-03  -5.21252812e-03
  -3.46276539e-03  -1.45397271e-02  -1.28414415e-02   4.20924749e-02
   1.03924392e-02  -5.07406040e-02  -6.56909033e-03   5.55816988e-02
  -1.08238615e-02  -3.18761533e-02  -5.44172340e-02   4.79904280e-02
  -2.85630380e-02  -1.22574248e-02  -1.94888334e-02   3.32394150e-02
  -8.05715297e-03  -1.53411636e-02  -4.07502428e-02  -7.21086674e-04
   6.37118296e-02   4.39291091e-03   1.93582008e-02  -3.43278315e-02
   6.82126728e-03  -4.41315226e-02  -2.75485059e-02   1.03000550e-02
   1.70065236e-02  -1.18855226e-02   4.92303617e-03   2.05786679e-02
  -2.15793556e-02   2.62844429e-02  -5.43421951e-03   1.25909775e-02
  -1.05061334e-03  -1.57432162e-02  -2.79695454e-02   7.49833422e-03
   1.59497131e-02  -7.17864580e-02   1.38643999e-02   2.64597092e-02
  -5.27426615e-02  -2.77495669e-02   2.72679552e-02  -3.69643235e-02
  -1.58382514e-03  -2.11625236e-02   1.95216991e-02  -3.96543317e-02
   7.28670439e-03  -3.91838979e-02   1.84534696e-02  -3.71784462e-02
  -2.19731916e-02   8.12801871e-02   8.20968217e-03  -1.46485957e-02
   3.51455773e-02   1.46133725e-02  -4.20465736e-02  -3.81078661e-02
   2.92454373e-02   7.19915194e-02   3.00419330e-02  -6.82233578e-03
  -8.60144016e-02  -2.45596549e-03   6.52839556e-02  -4.84311476e-03
   4.01897654e-02  -2.53867983e-02   3.83350540e-03   4.18864362e-02
   1.90843180e-02  -5.86434895e-03  -2.34854018e-02  -6.22093847e-03
   8.37705082e-03  -8.76359362e-03  -6.21074743e-02  -2.68412538e-02
  -2.32964188e-02   2.44951990e-02  -1.44606431e-02   1.50594011e-02
   4.52075543e-02   2.27795126e-02   3.60796652e-02  -1.45475933e-02
  -3.71383981e-02   1.73988273e-02  -8.58416767e-02  -2.55058223e-02
   4.05305457e-03  -3.22915488e-02  -4.64113144e-02   1.41082412e-02
   1.46986860e-02  -2.21947167e-02  -2.49361816e-02  -3.23728508e-02
  -2.45032673e-02  -4.41478310e-02  -1.92760730e-03   1.66349241e-02
   1.46631053e-02  -4.44246445e-04   1.36415083e-02   8.92696619e-03
  -8.72438809e-03  -8.57339531e-03   1.04025528e-02   1.41679678e-02
  -3.03140847e-02   2.01938142e-03   1.77311016e-03  -4.00909248e-03
   1.47316983e-02  -2.11613914e-02   1.23198992e-03   2.59684694e-02
  -8.55636835e-03  -2.33664523e-02  -1.10960756e-02  -2.77204216e-02
   3.70947645e-02   2.81168606e-02  -8.39520808e-04  -1.97726592e-02
  -1.15931371e-02  -5.05151919e-04   3.46929100e-03   2.95664063e-03
   1.92961651e-02  -5.28608433e-03  -3.41529826e-02  -1.22749442e-02
  -3.23065268e-04   4.96933511e-02  -4.53567359e-02  -1.87298784e-02
   1.77965121e-02  -2.57136073e-02   1.18509506e-02   5.40275579e-02
  -1.22866523e-02   2.37856111e-02   9.19423260e-03  -7.11340743e-02
  -9.36999453e-03   1.55250640e-02   3.65839645e-02  -2.88922263e-02
   3.17960316e-02   2.77845414e-02  -9.65838868e-03   7.04331072e-03
   1.27247908e-02   2.86996839e-02   1.76291591e-02  -4.12744649e-02
  -1.47262373e-02   2.31961116e-03  -2.62908918e-03   4.00610295e-03
  -1.07812887e-02   2.47652793e-02   2.85374648e-02  -8.20766152e-02
   5.32507899e-02   1.27449555e-03  -1.27493216e-02   2.50373117e-02
   1.62120999e-02  -6.58877233e-04   1.58466992e-02  -3.19912485e-02
   5.54077251e-02   2.45454765e-04   6.86064343e-02  -1.19250796e-02
  -1.49065475e-02   7.25826677e-03   5.52552529e-02   6.71022420e-02
  -1.74416661e-02   1.54054860e-03  -9.77862614e-03   3.83863442e-02
  -4.52635943e-03  -1.87938119e-02   4.85534114e-02   1.65861208e-02
   4.70079524e-02  -1.77356497e-02  -1.69831542e-02  -4.79830972e-04
  -1.57167300e-02   1.96762931e-02  -2.01040330e-02  -4.42149545e-02
   9.32408046e-03  -1.49554924e-02   1.73816566e-02  -2.53970188e-02
   3.66442782e-02   5.91537027e-02  -4.54881801e-02  -3.71961854e-02
  -3.95337914e-03  -1.14714522e-02   6.35667385e-03   3.82738620e-02
   4.50520084e-02  -4.46919894e-03  -4.96517399e-03   3.12338278e-02
   2.85095328e-02   2.24060079e-03  -3.43808672e-03   8.49637307e-03
  -4.94623399e-03  -9.09156718e-03   2.37295939e-02   7.10570385e-02
   5.02528001e-03  -8.58846609e-04  -1.23803418e-02  -6.33341223e-02
   1.88378786e-02   6.21301422e-02  -4.58288128e-02   4.78909827e-02
   2.07791894e-02   1.93412014e-02  -2.41269752e-02  -8.94471207e-02
   5.77857819e-02  -5.59879155e-02   8.16280696e-02  -3.09660979e-02
  -4.21868071e-02  -1.31693905e-02  -5.20381743e-03   4.44227316e-02
  -3.53729027e-02  -4.65253845e-02   7.64541940e-03  -3.39477940e-03
  -2.78399986e-02  -3.48349635e-02   4.83267678e-02  -2.35132369e-02
  -5.43048953e-03  -7.23237882e-02   8.06619565e-03  -3.14477833e-02
   4.94810299e-02  -2.74728606e-02  -5.09456969e-02   4.77342495e-02
   1.50400705e-02  -1.02280226e-02  -2.84767387e-02  -3.41679848e-02
   1.47059938e-02   6.08712238e-03   4.98191674e-02  -1.13223304e-02
   4.21524331e-02   7.49315288e-02   9.45883349e-03   5.70313117e-03
   1.33124095e-03   6.65418780e-02   4.13092855e-02  -3.71635554e-03
   4.66091811e-02   3.49937371e-02   5.74061084e-02   3.49960738e-02
  -9.44774169e-03   4.19771161e-02  -3.20154671e-02  -5.34990715e-02
  -3.96578715e-04  -1.60504566e-02  -1.29360154e-02   4.00395753e-02
  -4.67873368e-02   3.23116304e-02  -8.74936480e-03   2.70822661e-02
  -2.52845563e-02   2.12134886e-02  -5.30249926e-02   2.31616468e-02
  -1.01646147e-02   1.66253148e-02  -3.17661106e-02   4.33265024e-03
   4.29628334e-02  -8.84976193e-02  -2.23886620e-02   5.76329370e-02
  -2.63249789e-03   1.62977335e-02   2.43661861e-02   4.38814694e-02
  -2.30426773e-02  -3.10917507e-02  -9.28314615e-02   2.26530638e-02
   5.00824397e-02   5.57373740e-02   2.51156791e-03  -9.80222754e-03
  -6.44660818e-02  -4.36558137e-02   8.44384463e-03  -1.24890971e-02
   7.32748598e-02  -4.27822120e-02   4.37516852e-03  -2.48230546e-02
  -2.75160122e-02  -7.76372871e-02   1.24982445e-02  -2.09611608e-02
   2.54450103e-02  -1.69414776e-02  -1.13850945e-02   7.36871974e-03
  -2.83498283e-02  -5.79357020e-02  -5.56176316e-03   7.48057331e-04
   1.80757614e-02  -4.49383020e-02  -5.28232798e-02  -8.81605136e-02
   5.41228476e-03  -3.61675962e-03  -7.45569305e-03   4.19267002e-02
   2.30273765e-02   8.15704543e-02   1.25120264e-02   3.09640519e-02
  -3.63296975e-02   5.14423202e-02  -2.81612236e-03   7.26872511e-03
  -3.00600856e-02  -4.23495972e-02   1.39031571e-03  -3.70989386e-02
   2.31308169e-02   3.60529423e-02   3.70840357e-02  -2.66808038e-02
  -4.67389703e-02   2.35896674e-02   4.27330373e-02  -4.06370458e-02
   3.27148725e-02  -5.11529084e-04   2.44480158e-04   3.02050773e-02
  -3.22105824e-02  -4.98674148e-02  -9.36650784e-03  -9.68480076e-02
   4.53087429e-02  -1.56619930e-02   2.41139875e-02  -2.10534551e-02
  -4.10660792e-02  -1.94369736e-02   3.86328328e-02  -4.32623118e-02
   9.13365361e-03   4.84035812e-02   3.02714008e-03   1.98309110e-02
   3.58114347e-02   1.60932345e-03  -1.01396823e-02   1.33731545e-02
  -4.99957563e-02   1.10005498e-02   4.85914640e-02  -2.23282737e-02
   1.16851295e-02  -4.14206182e-02  -5.95352421e-02   3.29690443e-02
   2.27758854e-03  -4.53615013e-02   4.05886697e-02  -3.39550487e-03
   1.00773504e-02  -2.84572726e-02   5.33668210e-02   8.89468775e-03
   4.91346830e-03   4.26145885e-02  -1.05131235e-02   4.46400329e-03
   7.22580317e-03  -3.56363902e-02   2.03861097e-03   1.54339812e-02
   1.68856827e-02   1.65731938e-02   1.22881262e-02   2.66499145e-03
   1.88319952e-02  -1.53115012e-03   2.97980508e-02  -1.06865072e-02
  -3.47111899e-02  -5.00922280e-02  -3.82250683e-02   1.14699146e-02
  -3.49174785e-02   2.52777860e-02  -2.06572727e-02  -1.38807997e-02
  -3.98758638e-02  -4.55927548e-02   5.69473942e-02   2.65921585e-02
   6.28563039e-02   4.71362163e-03  -1.54830274e-02   2.48553747e-02
   3.99024340e-02  -3.16600492e-02  -2.79442461e-02   3.00140982e-02
  -2.42159782e-02   9.76375078e-03   1.72352567e-02   2.55077741e-03
  -8.84495676e-03  -9.15942830e-03   2.89166715e-02   2.22345907e-02
  -1.75930758e-02   3.69581478e-02   3.82721431e-02  -2.98308704e-02
   2.98044720e-02  -8.53550379e-04  -9.26566966e-03   1.89668563e-03
  -2.95252747e-02   5.93067242e-03  -1.15055754e-02  -1.44385938e-02
   2.04133601e-02   9.28047367e-03  -1.49676332e-03   3.50813967e-02
   7.56609597e-03  -1.05919155e-02   3.49257678e-02  -1.73601551e-02
   5.46428490e-02   9.69842721e-02   1.03629039e-02   2.12329871e-02
   2.37955518e-02  -2.81291909e-02   1.69440492e-02   3.66153474e-02
  -6.56555797e-02   1.35340655e-02   3.70453934e-03]
0.000188893987903
0.0328858732709

In [ ]:
assert len(dW)==len(W)-1
assert dW.dtype==np.dtype(float)

Write a function that takes $W(t)$ and converts it to geometric Brownian motion using the equation:

$$ X(t) = X_0 e^{((\mu - \sigma^2/2)t + \sigma W(t))} $$

Use Numpy ufuncs and no loops in your function.


In [27]:
def geo_brownian(t, W, X0, mu, sigma):
    X = X0*np.exp(((mu - sigma**2)/2.0)*t + sigma*W)
    return X

In [28]:
assert True # leave this for grading

Use your function to simulate geometric brownian motion, $X(t)$ for $X_0=1.0$, $\mu=0.5$ and $\sigma=0.3$ with the Wiener process you computed above.

Visualize the process using plt.plot with t on the x-axis and X(t) on the y-axis. Label your x and y axes.


In [29]:
# YOUR CODE HERE
plt.plot(t,geo_brownian(t, W, 1.0, 0.5, 0.3))
plt.xlabel("X")
plt.ylabel("t")


Out[29]:
<matplotlib.text.Text at 0x7f94d375c050>

In [30]:
assert True # leave this for grading

In [ ]: