[R-SIG-Finance] Neural Networks and R

Gero Schwenk gero.schwenk at web.de
Tue Mar 23 23:59:12 CET 2010


Hi Mike!
I don't have experience with neural networks, but with other machine 
learning techniques. Whatever your approach will be, there are some 
important things to know in order to use machine learning in a time 
series context.

1) You need to check the model's potential for generalization by 
calculating out-of-sample error measures. A test sample following the 
training sample in time is usually a harder test than cross-validation. 
That's general machine learning business.

2) You need to calculate your models on the returns (differences) of the 
series rather than on the series itself. The latter is usually 
integrated, has increasing error variance and is therefore not iid 
distributed. My experience is that failing to difference the data series 
will usually result in extremely good in-sample fit and inexistent 
out-of-sample generalization. The literature on ARIMA covers this topic 
and associated tests extensively.

3) Assume that the data-generating process (and therefore model error) 
is not stable over time. You can check this by doing rolling analyses of 
correlations between criterion and predictors, respectively rolling 
model application and error assessment. (Have a look at the 
"rollapply"-function for doing this.) A way to check for this more 
formally is to draw bootstrap samples of your focus quantities for two 
time intervals and test for differences - rolling may be overly time 
consuming here.

Hope this helps!
Regards, Gero



More information about the R-SIG-Finance mailing list