Update README.md

This commit is contained in:
Peter Newell
2018-05-22 20:20:23 +08:00
committed by GitHub
parent 4b1e53e252
commit 0c4dec54fe
+8 -6
View File
@@ -1,20 +1,20 @@
# V20pyPro # Introduction
This project provides several examples of common machine learning models applied to financial market predictions using TensorFlow, Keras, and Sci-kit Learn. All these models use the past 500 days of data for a given forex pairs, with a number of technical indicators added to the DataFrame. All of these models are standard, i.e. there hasn't been a major effort to optimize them and they could all be improved up in one way or another.
Ideally, this project would help make these tools more accessible for those learning to apply machine learning to financial markets.
# Machine Learning Examples
Exploring pricing data using a variety of machine learning libraries and algorithms. All examples use data from the AUD_JPY csv that contains OHLC and technical indicators' data.
## Ensemble Research ## Ensemble Research
Using a basic list of six standard Sci-kit Learn ensemble methods, we can explore the effectiveness of these off-the-shelf models. Out of the box, these models can achieve 65-75% accuracy but could be improved by manipulating learning rates, increasing the number of estimators, or for some models, including a base estimator; i.e. another predictive model that improves the Booster's reliability. Using a basic list of six standard Sci-kit Learn ensemble methods, we can explore the effectiveness of these off-the-shelf models. Out of the box, these models can achieve 65-75% accuracy but could be improved by manipulating learning rates, increasing the number of estimators, or for some models, including a base estimator; i.e. another predictive model that improves the Booster's reliability.
*AdaBoostRegressor* *AdaBoostRegressor*
![AdaBoost png](/graphs/model1.png) ![AdaBoost png](/graphs/model1.png)
*BaggingRegressor* *BaggingRegressor*
![BaggingRegressor png][/graphs/model2.png)
![BaggingRegressor png](/graphs/model2.png)
## LSTM with Multiple Inputs ## LSTM with Multiple Inputs
@@ -30,9 +30,11 @@ This model could be improved in a number of ways. Increasing the number of layer
Linear regression models are natural candidates for time series analysis. Using the standard Sci-kit learn Ridge and Linear Regression models, we can achieve roughly 80% accuracy on a single currency pair before manipulating any of the parameters. Linear regression models are natural candidates for time series analysis. Using the standard Sci-kit learn Ridge and Linear Regression models, we can achieve roughly 80% accuracy on a single currency pair before manipulating any of the parameters.
*Ridge* *Ridge*
![Ridge png](/graphs/Ridge 0.80991178871757.png) ![Ridge png](/graphs/Ridge 0.80991178871757.png)
*LinearRegression* *LinearRegression*
![LinearRegression png](/graphs/LinearRegression 0.8099495670315746.png) ![LinearRegression png](/graphs/LinearRegression 0.8099495670315746.png)
The Autoregressive Integrated Moving Average (ARIMA) is not exactly a machine learning algorithm, but a linear model used in econometric analysis that can be applied to financial markets to make predictions. A quick build of this model can also produce 78% accurate predictions on the test data. The Autoregressive Integrated Moving Average (ARIMA) is not exactly a machine learning algorithm, but a linear model used in econometric analysis that can be applied to financial markets to make predictions. A quick build of this model can also produce 78% accurate predictions on the test data.