import csv import numpy as np import matplotlib.pyplot as plt from matplotlib import rc rc('mathtext', default='regular') from smc.models import stochastic_volatility scale = 2 with open(sys.argv[1], 'rb') as f: f.readline() m = np.genfromtxt(f, delimiter=',', dtype=float) m = m[::scale] model = stochastic_volatility(alpha=0.86, sigma=1, beta=0.005) T = m.shape[0] print('T =', T) N = 10000 X = np.zeros((T, N)) W = np.zeros((T, N)) for t in range(T): if t == 0: y = 0 X[t, :] = model.p_initial.rvs(N) W[t, :] = model.p_emission(t, X[t, :]).pdf(y) else:
import matplotlib.pyplot as plt from smc.models import stochastic_volatility with open(sys.argv[1], 'rb') as f: f.seek(0, os.SEEK_END) f.seek(f.tell() - (1 << 23)) f.readline() m = np.genfromtxt(f, delimiter=',', dtype=float) m = m[::8, :] m[:, 0] -= m[0, 0] m[:, 1] -= m[:, 1].mean() #m[:, print(m) model = stochastic_volatility(alpha=0.99, sigma=1, beta=0.5) scale = 3600 T = int(m[-1, 0] / scale) print('T =', T) N = 1000 X = np.zeros((T, N)) W = np.zeros((T, N)) for t in range(T): if t == 0: y = 0 X[t, :] = model.p_initial.rvs(N) W[t, :] = model.p_emission(t, X[t, :]).pdf(y)
import matplotlib.pyplot as plt from smc.models import stochastic_volatility with open(sys.argv[1], 'rb') as f: f.seek(0, os.SEEK_END) f.seek(f.tell() - (1<<23)) f.readline() m = np.genfromtxt(f, delimiter=',', dtype=float) m = m[::8, :] m[:, 0] -= m[0, 0] m[:, 1] -= m[:, 1].mean() #m[:, print(m) model = stochastic_volatility(alpha=0.99, sigma=1, beta=0.5) scale = 3600 T = int(m[-1, 0]/scale) print('T =', T) N = 1000 X = np.zeros((T, N)) W = np.zeros((T, N)) for t in range(T): if t == 0: y = 0 X[t, :] = model.p_initial.rvs(N) W[t, :] = model.p_emission(t, X[t, :]).pdf(y)