financial data mining talk
DESCRIPTION
I presented these slides at a meeting of ACM data mining group. I discuss using data mining to improve performance of an existing trading system. The presentation was video taped. You can see the video at:http://fora.tv/2009/05/13/Michael_Bowles_Neural_Nets_and_Rule-Based_Trading_Systemsif you have any questions or comments contact me: [email protected] orhttp://www.linkedin.com/in/mikebowlesTRANSCRIPT
![Page 1: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/1.jpg)
Can We Upgrade a Trading System with a Neural Net?
Dr Michael Bowleshttp://www.linkedin.com/in/mikebowles
![Page 2: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/2.jpg)
Program
Produce a Simple Trading System Try 2 neural nets for culling trades One works the other doesn't Test whether model selection techniques
would have chosen correctly.
![Page 3: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/3.jpg)
1230
1235
1240
1245
1250
1255
1260
1265
1270
1275
1280
1285
1290
1230123512401245125012551260126512701275128012851290
6 :0 0 6 :3 0 7 :0 0 7 :3 0 8 :0 0 8 :3 0
E-Mini Nasdaq 100 (Continuous) (NQ #F)
2 0 0 9
Clos e Las t T op P ric e(High,10) Las t B ottom P ric e(Low,11)
T rading S trategy #2
Simple Trading System
Buy when price crosses above last high Sell when price crosses below last low
*Charts are Drawn with NeuroShell Trading Software Package
![Page 4: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/4.jpg)
Simple System Performance
1120
1140
1160
1180
1200
1220
1240
1260
1280
1300
0
100
200
300
400
500
D e c 2 8 J a n 4 J a n 1 1 J a n 1 8 J a n 2 5 F e b 1 F e b 8 F e b 1 5
E-Mini Nasdaq 100 (Continuous) (NQ #F)
2 0 0 8
T rading S tra tegy #2
S y s tem E quity (T rading S tra tegy #2)
Optimize over 6 weeks. Trade for 2 weeks
![Page 5: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/5.jpg)
Q1 Performance
Period # Return1 7.10%2 -5.20%3 6.70%4 -3.10%5 9.90%6 -3.00%7 5.10%
*In this table a “Period” is 2 weeks
Per 2 WeeksAvg Rtn: 2.50%
Rtn s.d.: 6.07%
YearlySharpe's: 2.06
![Page 6: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/6.jpg)
Can Statistical Learning Discard Some Losing Trades?
Give a NN some traditional indicators Train it to reject losing trades 1st try:
2 input (traditional momentum indicators) 1 to 3 hidden neurons Compare >0 or <0 for accept reject
![Page 7: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/7.jpg)
How does it work?
1170
1175
1180
1185
1190
1195
1200
1205
1170
1175
1180
1185
1190
1195
1200
1205
4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 6 1 7 1 9 2 1 F e b 1 9 1
E-Mini Nasdaq 100 (Continuous) (NQ #F)
2 0 0 9
T rading S trategy #2
T rading S trategy
![Page 8: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/8.jpg)
Q1 Performance (Basically the Same)
Period # Return1 4.90%2 -3.40%3 4.00%4 -5.10%5 5.50%6 4.10%7 2.40%
Per 2 WeeksAvg Rtn: 1.77%
Rtn s.d.: 4.25%
YearlySharpe's: 2.08
*Period = 2 weeks
![Page 9: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/9.jpg)
Try Something Else
4 inputs (traditional momentum indicators) 2 hidden neurons Selectable tanh or Gaussian activation
functions for hiddens GA for weights and activation function
selection
![Page 10: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/10.jpg)
Q1 Performance (Good News / Bad News)
Period # Return1 7.80%2 -4.30%3 5.90%4 -0.50%5 7.10%6 7.30%7 5.30%
Per 2 WeeksAvg Rtn: 4.09%
Rtn s.d.: 4.64%
YearlySharpe's: 4.40
*Period = 2 weeks
![Page 11: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/11.jpg)
Predict the Better Performing Model?
How to judge models BEFORE looking at the OOS data
Have a look at linear regression
![Page 12: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/12.jpg)
2-Input Model Results(Linear Terms)
Estimate Std.Error t value Pr(>|t|)(Intercept) -0.78735 1.54228 -0.511 0.610x1 -0.14016 1.86259 -0.075 0.940x2 0.03526 0.10061 0.350 0.726
Multiple R-squared: 0.0004033AIC = 2910.813
![Page 13: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/13.jpg)
2-Input Model Results(Polynomial Terms)
Estimate Std. Error t value Pr(>|t|)(Intercept) -0.787343 1.549424 -0.508 0.612x1 -0.160997 2.283883 -0.070 0.944x2 0.035802 0.103914 0.345 0.731x3 0.132438 0.850780 0.156 0.876x4 0.042197 0.157572 0.268 0.789x5 0.001034 0.004287 0.241 0.810
Multiple R-squared: 0.001049AIC = 2916.614
![Page 14: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/14.jpg)
4-Input Model Results(Linear Terms)
Estimate StdError t value Pr(>|t|) (Intercept) -0.7929 1.5289 -0.519 0.60438 x1BB.MACD -3.1617 2.4588 -1.286 0.19948 x1BB.Price 0.7592 0.7233 1.050 0.29472 x1TT.MACD 6.8499 2.5562 2.680 0.00777 **x1TT.Price -0.9122 0.5645 -1.616 0.10712 Multiple R-squared: 0.02418AIC = 2907.399
![Page 15: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/15.jpg)
4-Input Model Results(Polynomial Terms)
Estimate StdError t value Pr(>|t|) (Intercept) -0.7896 1.5283 -0.517 0.60581 x1BB.MACD -2.8592 2.8054 -1.019 0.30896 x1BB.Price 0.4084 0.7980 0.512 0.60920 x1TT.MACD 6.8554 2.8108 2.439 0.01532 * x1TT.Price -1.0843 0.7179 -1.511 0.13199 x2X1x1 -3.3184 2.1810 -1.521 0.12921 x2X1x2 1.5070 1.1713 1.287 0.19927 x2X1x3 11.1495 4.1630 2.678 0.00782 **x2X1x4 -2.0146 0.8542 -2.358 0.01901 * x2X2x2 -0.1230 0.1511 -0.814 0.41623 x2X2x3 -2.6644 1.1330 -2.352 0.01935 * x2X2x4 0.4220 0.2220 1.901 0.05825 . x2X3x3 -7.5425 2.6674 -2.828 0.00501 **x2X3x4 2.9110 1.0361 2.810 0.00529 **x2X4x4 -0.2644 0.1136 -2.327 0.02066 * Multiple R-squared: 0.05708AIC = 2916.835
![Page 16: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/16.jpg)
Conclusion
Demonstrated NN Successfully Upgrades Trade System Statistics
Demonstrated Criteria for Model / Input Selection
![Page 17: Financial Data Mining Talk](https://reader033.vdocuments.us/reader033/viewer/2022061219/548285b15906b599158b458b/html5/thumbnails/17.jpg)
Some References
Dunis C., Laws J., Naim P, Applied Quantitative methods for trading and investment John Wiley & Sons, 2003 Ch 4. Forecasting and Trading Currency Volatility:An Application of Recurrent
Neural RegressionCh5. Implementing Neural Networks, Classification Trees, and Rule Induction
Classification Techniques: An Application to Credit Risk
Franses P.H., van Dijk D, Non-linear time series models in empirical finance, CambridgeUniversity Press, 2000Ch 5. Artificial neural networks for returns