利用R语言编写量化投资策略Word格式.docx

上传人:b****0 文档编号:13258354 上传时间:2022-10-09 格式:DOCX 页数:10 大小:18.67KB
下载 相关 举报
利用R语言编写量化投资策略Word格式.docx_第1页
第1页 / 共10页
利用R语言编写量化投资策略Word格式.docx_第2页
第2页 / 共10页
利用R语言编写量化投资策略Word格式.docx_第3页
第3页 / 共10页
利用R语言编写量化投资策略Word格式.docx_第4页
第4页 / 共10页
利用R语言编写量化投资策略Word格式.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

利用R语言编写量化投资策略Word格式.docx

《利用R语言编写量化投资策略Word格式.docx》由会员分享,可在线阅读,更多相关《利用R语言编写量化投资策略Word格式.docx(10页珍藏版)》请在冰豆网上搜索。

利用R语言编写量化投资策略Word格式.docx

))getSymbols("

MHXX"

from="

2013-01-01"

to="

2015-09-30"

#显示K线图,如图明显发现股价呈现递增趋势,价格序列是非平稳的。

chartSeries(MHXX)

#考虑对数收益率#获取收盘价

cp=MHXX[,4]

lgcp=log(MHXX[,4])

#tdx=c(1:

456)/365+2014

#计算日收益率

ret=dailyReturn(MHXX)

chartSeries(ret,theme="

white"

TA=NULL)

#plot(tdx,cp,xlab="

year"

ylab="

closeprice"

type=T)

#计算对数收益率,如图课件,股价在15年左右有一个跳跃,15年第二季度的股价增长导

#之后股价有较大的下降,这些特征给后续的分析带来一些较大的异常值

lgret=log(ret+1)

chartSeries(lgret,theme="

#由ACF和PACF图可以看出,该股1股价的日收益率序列即使存在某种相关性,该自相关性也

#很小

par(mfcol=c(2,1))acf(lgret,lag=30)

pacf(lgret,lag=30)

#为了验证该收益率序列有没有序列相关性,使用Ljung-Box检验,结果对应的P值0.024,

#在1%的显著水平下,拒绝该股票日收益率没有显著前后相关性的这一原假设。

#但在5%的显著水平下,无法拒绝该股票日收益率没有显著前后相关性的这一原假设。

Box.test(lgret,lag=20,type='

Ljung'

IfIfIfIfIfIfIfIfIfIfIfIfIfIfffIfIfIfIfIfIfIfIfIfIfIfffIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfffIfIfIfffIfIfIfIfIfIfIfIfIfIfIfIf

IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII

#################

m1<

-auto.arima(lgret,stationary=TRUE,seasonal=FALSE,ic="

aic"

#鉴于该股票对数收益率序列的自相关性并不强,所以建立的ARIMA模型可能适用性不高。

#对于对数收益率序列,单样本的t检验结果的t比为1.0625,p值为0.2884,表明该序

列不是

#显著异于零的,同时此处根据ACF图所示,在4阶有轻微的超越标准差线,

#因此取用AR(5)模型拟合,aic=-2987.43

m2<

-arima(x=lgret,order=c(4,0,0),include.mean=F)

tratio=m2$coef/sqrt(diag(m2$var.coef))

tratio

meacf=eacf(lgret,6,12)

print(meacf$eacf,digits=2)#残差检验并表示改模型可能不是充分的

tsdiag(m2,gof=20)

m3<

-auto.arima(ret,stationary=TRUE,seasonal=FALSE,ic="

m3

IfIfIfIfIfIfIfIfIfIfIfIfIfIfIfffIfIfIfIfIfIfffIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfffIfIfIfIfIfIfIfffIfIfIfIfIfIfIfIfIfIfffIfIf

uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

ffffffffffffffffffffffffffffffffffffff

IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII

#由上述可知,对于价格变化的分析,纯ARMA模型是不充分的,一方面ARMA模型不能

处理

#波动率聚集,另一方面,ARMA-GARCH模型能充分处理这些数据的复杂性,

#并能提高样本外预测

price=ts(cp)

dp=ts(diff(cp))

par(mfcol=c(2,1))

plot(price,xlab='

year'

ylab='

price'

plot(dp,xlab='

changes'

cprice=diff(price)

par(mfcol=c(2,1))acf(cprice)

pacf(cprice)

#aic=-0.37

m.garch1<

-garchFit(~1+garch(1,1),data=cprice,trace=F)

summary(m.garchl)

#aic=-0.62

m.garch2<

-garchFit(~arma(6,0)+garch(1,1),data=cprice,trace=F,ininclude.mean=

F,

cond.dist="

std"

summary(m.garch2)

#aic=-0.60

m.garch3<

-garchFit(~arma(2,0)+garch(1,1),data=cprice,trace=F,ininclude.mean=

summary(m.garch3)

#aic=-0.596

m.garch4<

-garchFit(~arma(1,0)+garch(1,1),data=cprice,trace=F,ininclude.mean=

summary(m.garch4)

#回测检验

source("

backtestGarch.R"

M2F=backtestGarch(cprice,714,2,inc.mean=F,cdist="

sstd"

backtest.R"

M2AF=backtest(m2,cprice,714,2,inc.mean=F)

#ArchTest(coredata(ret))

IfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfffIfIfIfIfIfIfIfIfIfIfffIfIfIfffIfIfffIfffIfIfIfIfIfIfIfIfIfIfIfIfIfIfIfuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

#计算VaR

mgarch1<

-ugarchspec(variance.model=list(garchOrder=c(1,1)),

mean.model=list(armaOrder=c(0,0)))

mgarch1_fit<

-ugarchfit(spec=mgarch1,data=cprice)

mgarch1_fitmgarch1_roll<

-ugarchroll(mgarch1,cprice,n.start=120,refit.every=1,

refit.window="

moving"

solver="

hybrid"

calculate.VaR=TRUE,VaR.alpha=0.01,keep.coef=TRUE)

report(mgarch1_roll,type="

VaR"

VaR.alpha=0.01,conf.level=0.99)

#生成PLOT

cprice_var<

-zoo(mgarch1_roll@forecast$VaR[,1])

index(cprice_var)<

-as.yearmon(rownames(mgarch1_roll@forecast$VaR))

cprice_actual<

-zoo(mgarch1_roll@forecast$VaR[,2])

-as.yearmon(rownames(mgarch1_roll@forecast$VaR))plot(cprice_actual,type="

b"

main="

99%dayVarbacktesting"

xlab="

Date"

ylab="

Return/VaRinpercent"

lines(cprice_var,col="

red"

legend("

topright"

inset=.05,c("

MHXXreturn"

"

),col=c("

black"

),lty=c(1,1))mgarch1_fcst<

-ugarchforecast(mgarch1_fit,n.ahead=6)

mgarch1_fcst

ret.fcst<

--qnorm(0.95)*mgarch1_fcst@forecast$sigmaForret.fcstchartSeries(MHXX,name="

中国民航信息”,TA=NULL)addBBands()

#addMACD()

################################量化投资策略

IfIfIfIfIfffIfIfIfffIfIfIfIfIfIfffIfIfffIfIfffIfIfIfIfIfIfIfffIfIfIfIfIf

IIIIIIIIIIII

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 自然景观

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1