1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
TODO / Ideas see ---> ./Done for things finished
------------ ~~~~~~
1. Now have class, but not yet residuals() & fitted(); predict()
1a. In any case, we want $residuals (as "arima"): ``the fitted innovations''
1c. fracdiff.sim(): think about making it an *generalization* of arima.sim,
maybe call the new function arfima.sim() and keep the old one as is.
2. call R's gammafn() and minimizers (Brent is there!), instead of "our own"
4. Consider the diverse filters, e.g. (0,d,0) --> (p,d,q)
Now started implementing and testing in *R* :
--> ./filters.R
~~~~~~~~~~~
5. fracdiff() and fracdiff.var() share much code, including warning
message generation. Clean up! See 'FIXME' in R/fracdiff.R !
6. fracdiff.sim(): This really is a *filter* of the innovations.
in C: 1) eps_t --> fARIMA(0, d, 0) =: Y_t
2) Y_t --> fARIMA(p, d, q) =: Z_t i.e. a simple ARMA() filter
--> we should provide the "filter 1)" as a *separate* R function
8. Long-standing "Bug" / Problem:
set.seed(1); (fdc <- fracdiff(X <- fracdiff.sim(n=100,d=0.25)$series))$covariance.dpq
# d
# d 1.901027e-12
This is *clearly* too small: At least now added warning
Hessian --> covariance
======================
3. For the hessian / covariance { src/fdhess.c } :
Think about trying several step-sizes and use stable ("optimal"?) one.
6. Currently C/Fortran uses old Linpack SVD and its own inverse, and
just returns warnings if things "fail" there.
Possibly rather do these in R, and possibly use
using chol() and chol2inv() rather than svd.
7. We should return \hat{\sigma_\epsilon} or
\hat{\sigma^2_\epsilon}
---> is the new "wnv" (= white noise variance) ???
|