The first aspect to determine is what is the event to predict. Obviously it’s price here, put that is tied to a given timeframe. The algorithm therefore needs to aim at predicting BTC price in that given timeframe (i.e. price in the next 5 minutes, next hour, next week, next day, and so forth). Each of these timeframes constitutes a different objective, and it represents the starting point to derive a set of algorithms that try to predict the value of BTC in that timeframe.
Price depends on many factors. The simplest set of algorithms will work with historical price data; the more granular the better. If there is available information on trading volumes, and order books, all the better. That should be suffice to do something similar to TA. Nevertheless, there are many more elements that conceptually should be thrown-in to the bundle in order to be processed as data inputs. The basis is having that data tabulated in a precise and timely manner in a historical set of data.
We often perceive that market is very much influence by fundamentals; or rather, fundamentals act as catalysts that are then exploited by those who can in the direction that they will (or not …). On top of that there are plenty of minor news that play their role, psychology of numbers, sentiment, fomo, fud, derived products that may trigger a BTC price sway, or are triggered themselves in price and then they trigger BTC price, BTC tenant composition and weight (i.e. whales, institutions, us), and so forth. These factors are very difficult to factor in to the models in their accurate and precise measure. There’s probably a fair share of NLP related in the process of attempting to ponder them into the prediction.
Can all the above be taken into account into a model? To a certain degree for sure, but precision in the output (again, for a given timeframe) requires the inputs to be as precise as possible, and their influence identified in scope and time. I’m sure that there are many attempts at the above, but rather sceptical on the precision of outcome (better chances on the tendency).
I recall reading this some time ago (3 years now):
https://towardsdatascience.com/using-recurrent-neural-networks-to-predict-bitcoin-btc-prices-c4ff70f9f3e4The article concludes the following:
How Reliable Are These Results?
As you can see, it does not look bad at all. However, you need to know that even though the patterns match pretty closely, the results are still dangerously apart from each other if you inspect the results on a day-to-day basis. Therefore, the code must be further developed to get better results
And that was just working on historical data, without attempting to work on all the rest mentioned above.