В настоящее время я пытаюсь закодировать модель волатильности с квадратом Хестона - root с целью получить от нее выборку с помощью MCM C. Однако я не мог добавить термин запаздывающей волатильности, то есть $ \ sqrt {V_ {t-1}} $ во второе уравнение:
Модель Хестона
Может ли кто-нибудь дать мне ответ / предложение?
Визуализация модели
Таким образом, код:
def make_stochastic_volatility_model(data):
with pm.Model() as model:
# prior distribution of parameters
mu = pm.Normal('mu',mu=1,sigma=25)
alpha = pm.Normal('alpha',0,sd=1) #kappa*theta
beta = pm.Normal('beta',0,sd=1) #1-kappa (!)
varV = pm.InverseGamma('varV',2.5,0.1)
V_t = pm.AR('V_t', [alpha,beta], sigma=varV**.5,constant=True,
shape=len(data["log_returns"]))
r_t = pm.GaussianRandomWalk('r_t',mu=mu,sigma=V_t**0.5,
observed=data["log_returns"])
return model