python garch模型 forecast_python - 使用GARCH模型进行滚动预测 - 堆栈内存溢出

我正在尝试对给定股票未来30天的波动性进行滚动预测(即预测时间t + 1,然后在预测t + 2时使用此预测,依此类推...)

我这样做是使用R的rugarch软件包,该软件包是我使用rpy2软件包在Python中实现的。 (我发现Python软件包的文档记录不清,更难使用。这些软件包中的大多数在R中也已经成熟得多)。

到目前为止,这是我的代码,该模型适用于直到我拥有的最后30天数据的股票回报的整个时间序列。 然后,我对我拥有的未见数据的最后30天进行滚动预测(我认为)。

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

from rpy2.robjects.packages import importr

import rpy2.robjects as robjects

from rpy2.robjects import numpy2ri

ticker = 'AAPL'

forecast_horizon = 30

prices = utils.dw.get(filename=ticker, source='iex', iex_range='5y')

df = prices[['date', 'close']]

df['daily_returns'] = np.log(df['close']).diff() # Daily log returns

df['monthly_std'] = df['daily_returns'].rolling

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
variance.model = list(model = "sGARCH", garchOrder = c(1, 1),submodel = NULL, external.regressors = NULL, variance.targeting = FALSE) distribution.model = "norm" ugarchfit(spec, datax, out.sample = 0, solver = "solnp", solver.control = list(),fit.control = list(stationarity = 1, fixed.se = 0, scale = 0)) myspec=ugarchspec(variance.model = list(model = "sGARCH", garchOrder = c(1, 1), submodel = NULL, external.regressors = NULL, variance.targeting = FALSE), mean.model = list(armaOrder = c(1, 1), include.mean = TRUE, archm = FALSE, archpow = 1, arfima = FALSE, external.regressors = NULL, archex = FALSE), distribution.model = "norm") myfit=ugarchfit(myspec,data=datax,solver="solnp") #rugarch包中模型结果的提取要依靠as.data.frame函数。比如提取模型的拟合值 as.data.frame(myfit,which="fitted") #提取残差序列: as.data.frame(myfit,which=" residuals") #提取方差序列: as.data.frame(myfit,which="sigma") #当然,也可以同时查看所有: as.data.frame(myfit,which=all) #通过plot(myfit)可以对模型结果进行图形诊断: plot(myfit) #如果模型通过检验,可以用ugarchforcast函数对未来进行预测: for<-ugarchforcast(myfit,n.ahead=20) library(zoo) #时间格式预处理 library(xts) #同上 library(timeSeires) #同上 library(urca) #进行单位根检验 library(tseries) #arma模型 library(fUnitRoots) #进行单位根检验 library(FinTS) #调用其中的自回归检验函数 library(fGarch) #GARCH模型 library(nlme) #调用其中的gls函数 library(fArma) #进行拟合和检验
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值