Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

Prediction the direction of stock market prices using Random Forest
#11

Would you mind recommending me a paper or any information for developing a program with ML to predict Binary Option?
Reply
#12

The lowest timeframe available on MT4 is 1 minute. In the past some years back, 1 second was available as the lowest timeframe. Below 1 minute we can download the tick data. Tick data is irregularly spaced and presents new challenges which will distract you from your main work. I think I had written in the previous replies that 1 second data is available with Oanda and Dukascopy. You can check. Oanda has got a nice Python API that you can use to develop algorithmic trading strategies and use it in live trading. You should read this github post in which you can find the python code as well in Jupyter. Read this post:

http://ahmedas91.github.io/blog/2016/07/...m-forests/

I cam across a paper explaining how to predict stock direction on Tehran Stock Exchange. You can find that also online. Keep this in mind that different stock markets have different characteristics. US stock markets are very efficient and difficult to predict whereas stock markets like India and other emerging economies are still easy to predict. So a strategy that doesn't work on US stock market can work on Mumbai stock market. But you will have to first check it with real data. I was reading a paper in which the Chinese authors claim that their high frequency trading strategies  have stopped worked on Chinese stock market as those markets have become more efficient over time. So things keep on changing. This the law of life and this is the law of the markets. This happens due to arbitrage. This is another github page that has tried to implement the Random Forest Stock Price Prediction Algorithm that we have been discussing. They have tried to predict Bitcoin and Ethereum price direction:

https://github.com/amicks/Speculator

This is another github page that is claiming above 96% success:

https://github.com/perfectyayra/PHBSTQFML

This is another github page that you should read:

https://github.com/chinuy/stock-price-prediction

This github page is claiming 94% winrate:

https://github.com/wzchen/stock_market_prediction

Subscribe My YouTube Channel:
https://www.youtube.com/channel/UCUE7VPo...F_BCoxFXIw

Join Our Million Dollar Trading Challenge:
https://www.doubledoji.com/million-dolla...challenge/
Reply
#13

Binary options have got a fixed Reward/Risk something like 0.8 (meaning you only get 80% return depends on broker on your investment. This return is fixed). So you need a high winrate if you want to make a consistent return with binary options. In forex trading we can achieve much higher Reward/Risk sometimes as high as 10:1. It is easy to achieve Reward/Risk of 5:1 on average. This paper on Stock Price Prediction using XGBoost is also worth going through:

https://www.kaggle.com/shreyams/stock-pr...94-xgboost

This paper discusses how to use LSTM in stock price prediction:

https://zhuanlan.zhihu.com/p/31783805

This github page tried to implement the paper that we were discussing and claims to have failed to achieve good results:

https://github.com/jmartinezheras/reprod...n_RF.ipynb

This is another implementation Random Forest Stock Prediction based on based on the results of Khaidem, Saha, & Dey (2016):

https://github.com/johnberroa/RandomFore...kPredictor

You should go through it also. It contains full python code implementation in Jupyter. This is the PDF on Tehran Stock Exchange prediction:

https://pdfs.semanticscholar.org/2fe9/cd...874f3c.pdf

You should read this paper on using Random Forests in predicting Stock Price Trends:

http://datascience.uconn.edu/index.php/p...-forecasts

This github page claims achieving very high winrate of 96%, you should read it:

https://github.com/perfectyayra/PHBSTQFML

This stock price indicator on github is also worth look at:

https://github.com/Tomcli/Stock-Price-Indicator

You should go through these papers and if you have questions, I will happily answer them here. Regarding 1 second data, I told you about Oanda and Dukascopy. You need to check them. You can easily open a demo account and check these two brokers. Oanda has got a Python API that is worth checking. This is another professional data streaming service that you can check:

https://1forge.com/forex-data-api

You can check the FREE package. Other packages are a bit expensive. A Python API is also available which can help you in develop algorithmic trading strategies and trade them in real time. You can check the github page:


https://github.com/1forge/python-forex-quotes

When trading 1 minute binary options, you need to be pretty fast. You will need an automated trading system that can do the trading for you. Getting good 1 second data is also not easy. It is expensive. Check Oanda, I think you will get the data free from there. As I said, binary options have a fixed Reward/Risk depending on the broker. Most of the time it is 70-80%. So if you lose you need to win more to recover the loss. In forex trading, you can choose only those trades that have a high expected Reward/Risk like 5:1 and sometime you can get Reward/Risk like 10:1. You can focus on trading 5 minutes binary options. Download the 1 minute data from MT4. Its FREE. Make the prediction and then enter the trade. You will have ample of time to enter the trade manually. Another thing that you should keep in mind. Forecasting far ahead in the future something like 60 bars can be highly inaccurate. Forecasting 5-10 bars in the future is much more accurate. Short term forecasting is more accurate as compared to long term forecasting.

Subscribe My YouTube Channel:
https://www.youtube.com/channel/UCUE7VPo...F_BCoxFXIw

Join Our Million Dollar Trading Challenge:
https://www.doubledoji.com/million-dolla...challenge/
Reply
#14

Thank you so much. You are the only one who help me a lot.
I tested again the paper "Predicting with Random Forest" . It seems it only works when we use
Code:
train_test_split
with
Code:
shuffle=True
. It does not work If we use two separate CSV file for training and testing.
I tested this Python Code.
It only works If we use `train_test_split` again. So I think their result somehow fake.
The links you post in the previous reply were so helpful. One of them achieve real result, I should work more on his code and the model. One of them was fantastic to build an EA to trade based on Trend. And a very helpful link which demonstrate how to use LSTM.
And also,thank you so much for mentioned data sources. MT4 1sec data is really unreliable due to different timestamp I saw in the bars of 1Sec chart. Now, due to your links I know how to test with more reliable data.


Kind Regards
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)