GHADAkupfer

Download: GHADAkupfer.xpl
Code:
library("smoother")
library("plot")

path = "D:\WIAS talk\XploRe program\"
setsize(800,400)
fx = read("kupfer.dat")
fxreturn = diff(log(fx)) ; DEM/USD return
kupfer = rows(fxreturn)|0|fxreturn

v = read(path+"vol_kupfer.txt")
dvreturn = v[,5] ; 2-length, 3-return, 4-vola, 5-devreturn
t = v[,1]
vola = v[,4]
leng = v[,2]
mean(leng)
rr = rows(dvreturn)

fxplot1 = createdisplay(2,1)
fxl = setmask(1:rows(fxreturn)~fxreturn,"line", "blue")
volal = setmask(t~vola, "line", "blue")
show(fxplot1,1,1, fxl)
setgopt(fxplot1,1,1,"title","Daily returns of a German bank", "border",0)
show(fxplot1,2,1, volal)
setgopt(fxplot1,2,1,"title","Adaptive local constant volatility estimators (bank portfolio)", "border",0)


mu = mean(dvreturn)
si = sqrt(var(dvreturn))
x = si*normal(rr)+mu ; generate data

h=2.78*si*(rr^(-0.2))
fh = denest(dvreturn, h, "qua") ; estimate density
f = denest(x, h, "qua") ; estimate density
lfh = fh[,1]~log(fh[,2])
lf = f[,1]~log(f[,2])

fh1 = setmask(fh,"line","red")
f1 = setmask(f ,"line","blue")

fh2 = setmask(lfh,"line","red")
f2 = setmask(lf ,"line","blue")

dep = createdisplay(1,2)
show(dep,1,1,fh1,f1)
show(dep,1,2,fh2,f2)
setgopt(dep,1,1,"title","Estimated density (nonparametric)","border",0)
setgopt(dep,1,2,"title","Estimated log density (nonparametric)","border",0)

forecast = read(path+"forecast_hyp_kupfer.txt")
alpha=forecast[,1]
beta=forecast[,2]
delta=forecast[,3]
mu = forecast[,4]
library("distribs")
hyp = pdfhyp(sort(dvreturn), alpha, beta, delta, mu)
fhyp = setmask(sort(dvreturn)~hyp ,"line","blue")
fhyp2 = setmask(sort(dvreturn)~log(hyp) ,"line","blue")
dep2 = createdisplay(1,2)
show(dep2,1,1,fhyp,fh1)
show(dep2,1,2,fhyp2,fh2)
setgopt(dep2,1,1,"title","Estimated bank portfolio density (HYP)","border",0)
setgopt(dep2,1,2,"title","Estimated bank portfolio log density (HYP)","border",0)

forecast = read(path+"forecast_nig_kupfer.txt")
alpha=forecast[,1]
beta=forecast[,2]
delta=forecast[,3]
mu = forecast[,4]
nig = pdfnig(sort(dvreturn), alpha, beta, delta, mu)
fnig = setmask(sort(dvreturn)~nig ,"line","blue")
fnig2 = setmask(sort(dvreturn)~log(nig) ,"line","blue")
dep3 = createdisplay(1,2)
show(dep3,1,1,fnig,fh1)
show(dep3,1,2,fnig2,fh2)
setgopt(dep3,1,1,"title","Estimated bank portfolio density (NIG)","border",0)
setgopt(dep3,1,2,"title","Estimated bank portfolio log density (NIG)","border",0)






05.11.2004