Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #/////////////////////////////////////////////////////////////////
- #
- # PairTrading
- #
- #/////////////////////////////////////////////////////////////////
- ##--richiamiamo le librerie
- require(quantmod)
- require(PerformanceAnalytics)
- ##--download storici strumenti finanziari
- getSymbols("^GSPC;^VIX", from="1990-01-01")
- ##--trasformiamo i dati weekly e sincronizziamoli
- xx <- na.omit(merge(to.weekly(GSPC),to.weekly(VIX)))
- ##--rapporto tra i prezzi degli strumenti finanziari
- rap <- xx[,6]/xx[,12]
- ##--indaghiamo se il rapporto ha remota possibilità di essere mean-reverting
- table.Autocorrelation(diff(rap))
- ##--il primo termine dell'ACF è negativo, incrociamo le dita calcoliamo i return
- retGSPC <- log(xx[,6]/lag(xx[,6]))
- retVIX <- log(xx[,12]/lag(xx[,12]))
- ##--vettore dei rendimenti pairtrading
- ret <- ifelse(lag(rap)>lag(rap,2),0.5*(retVIX-retGSPC),0)
- ret <- ifelse(lag(rap)<lag(rap,2),0.5*(retGSPC-retVIX),ret)
- ##--performance
- charts.PerformanceSummary(ret,ylog=TRUE,main="PairTrading",colorset="red")
- table.AnnualizedReturns(ret)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement