# -*- coding: utf-8 -*- """ Created on Mon Oct 17 16:18:35 2016 @author: florent In this program, we set f(t)=sin(pi t) and compute the Ito processes X,Y,Z starting at zero such that (for B a Browian motion) dX=f(t)dt+tdB dY=XdB dZ=Y^2dB We plot f,B,X,Y,Z """ import numpy as np import numpy.random as npr import scipy.stats as sps import matplotlib.pyplot as plt T=4 N=int(1e4) deltat=T/float(N) dB=np.sqrt(deltat)*npr.randn(N) B=np.cumsum(dB) t=np.linspace(start=0,stop=T,num=N) dd=np.sin(np.pi*t) dX=dd*deltat+t*dB X=np.cumsum(dX) dY=X*dB Y=np.cumsum(dY) dZ=(Y**2)*dB Z=np.cumsum(dZ) plt.plot(t,dd,color="m",label="f(t)") plt.plot(t,B,color="r",label="B") plt.plot(t,X,color="g",label="X") plt.plot(t,Y,color="b",label="Y") plt.plot(t,Z,color="y",label="Z") plt.legend(loc="best")