- # h :: only for endo in this variation
- h_best = optimize(errorOnLastNdays, c(0,10), kernel=kernel)$minimum
- return (private$.predictShapeAux(data,fdays,today,horizon,h_best,kernel,TRUE))
+ if (simtype != "endo")
+ {
+ h_best_exo = optimize(
+ errorOnLastNdays, c(0,10), kernel=kernel, simtype="exo")$minimum
+ }
+ if (simtype != "exo")
+ {
+ h_best_endo = optimize(
+ errorOnLastNdays, c(0,10), kernel=kernel, simtype="endo")$minimum
+ }
+
+ if (simtype == "endo")
+ {
+ return (private$.predictShapeAux(data,
+ fdays, today, horizon, h_best_endo, kernel, "endo", TRUE))
+ }
+ if (simtype == "exo")
+ {
+ return (private$.predictShapeAux(data,
+ fdays, today, horizon, h_best_exo, kernel, "exo", TRUE))
+ }
+ if (simtype == "mix")
+ {
+ h_best_mix = c(h_best_endo,h_best_exo)
+ return(private$.predictShapeAux(data,
+ fdays, today, horizon, h_best_mix, kernel, "mix", TRUE))
+ }