MarketRaker’s Alpha Launch on Nov 26th: AI Trading Enters a New Era!
Hey traders! Get ready for a game-changing day in trading — MarketRaker’s AI models are launching on November 26th, 2023!
We’re excited to announce the initial phase of MarketRaker’s launch! While we’re fine-tuning some features to ensure the best experience, we’re rolling out key components of our platform for you to start exploring. This phased approach allows us to gather your valuable feedback and make continuous improvements. Stay tuned as we unveil more features and enhancements in the near future!
Here’s the lowdown:
- Crypto First, Stocks Next: We’re kicking off with historical crypto indicators, and the Nasdaq ones will roll out by week’s end.
- Stocks Need Extra TLC: Our stock AI is learning on the fly, so expect those indicators soon.
- Your Thoughts Matter: Dive in, play around, and tell us what rocks and what doesn’t.
- Trade Smart: The first indicators are fresh off the AI’s ‘brain’, so trade cautiously and watch how they perform.
- Peek at 2024: Check out our AI model’s roadmap for 2024 — exciting stuff ahead!
- Grab Your Lifetime Pass: Be one of the 500 to use our Discord bot and snag lifetime free access.
- Insightful AI: Our AI is still getting the hang of things, but it’s got some neat insights. It’s a bit cautious, but when it predicts a move — expect it might be bigger!
This is just the start for MarketRaker. Our AI might still be finding its feet, but it’s already showing some serious smarts. Let’s make trading history together! 🚀💡📈
Model Release Report — Introduction
This report details the evolution of the model currently in production: the data set used, the model architecture, optimisation process, and performance on the evaluation set. The purpose of this document is to provide an overview of the core mechanism behind Market Raker’s recommendation system for its users.
Data Set
We collected 12-hour resolution data for 95 stock (NASDAQ) and 30 crypto (BINANCE) symbols from TradingView, for a maximum of 20 000 points per symbol (assuming that the symbol had that many data points to begin with, if not, we got all data points for that symbol). The goal of our model is, using a certain time-window of input data, predict the change in price in the next twelve hours (direction and magnitude). The input data consists of 13 features — 12 technical indicators and the historical change in price.
This data set was split into a training ( points), validation ( points) and evaluation set ( points) based on time — meaning that there is no random shuffling of data points between data sets and that the evaluation set is in the “far future” compared to the training and validation set.
We opted to use a conservative time-window size of 24 data points, which, with a 12-hour resolution, is equivalent of 12 days of history being fed to the model at each point. We noted during preliminary experiments that this is a sufficient time-window for the model to be able to learn patterns in the data, and this conservative window has the added benefit of saving GPU memory during training, meaning that several models can be optimised at once.
Architecture
The model architecture used is a TCN (temporal convolutional network) with a simple feed-forward network attached to it. The TCN serves as an “encoder” that learns associations in the provided time-window of data, and the encoded features are then served to the feed-forward network (a Multi-layer perceptron or MLP) that makes the prediction itself. The TCN is much like a CNN (convolutional neural network), except that convolutions are only done in the time-dimension over each feature individually, meaning that features are not muddied together before being fed to the MLP. This helps the model learn temporal relationships in the data and from the features individually.
The receptive field size of the TCN, or the amount of ‘history’ it is able to see, is determined by the number of layers (residual blocks) it is made up of, as well as the size of the convolutional kernel in each block. We would have been able to get away with a layer depth of at least 3 residual blocks and a kernel size of 3, 4, or 5, but we found that a greater depth of 4 residual blocks and a kernel size of 5 worked the best for this data set.
Optimisation
We used Weights and Biases to help manage our optimization process. We set up a bayesian optimization process to search over various values of learning rate, dropout, weight decay, kernel size, layer configuration etc. A bayesian search was chosen over a random or grid search to save processing time and improve possible configurations. Several different bayesian searches were run over different possible hyper-parameter spaces to find the best alpha release model possible with our current setup.
The winning configuration achieved a coefficient of determination (R-squared score) of 0.12 on the validation set. The learning curves of this configuration can be found below.
Evaluation performance
To test the evaluation performance, the predictions for each symbol were compared to the ground truth to calculate the R-squared value for each individual symbol. A scatter-plot with the error bars of each prediction was also created for each symbol, as well as a summary scatter plot that scatters the binned output values and includes the confidence intervals of each bin.
AAPL’s performance is shown here.
It should be noted that the model predictions are rather conservative, and rarely breach a +/- 3% change. However, upon testing the model on the live set, the direction of the change was correct the majority of the time, even though the magnitude of the change was underestimated.
One would also note the ‘risk’ metric depicted in some of the performance graphs. This is the risk that, given a prediction and the rmse of its respective bin, the direction of the predicted change in price is opposite to what is stated. This is, for example, the risk that a predicted +3% change is actually a -3% change. Note that as the estimates are more conservative (closer to 0% change), the risk of a completely incorrect prediction increases dramatically. This held true when testing the model live — predictions that were closer to 0% change (higher model uncertainty) were more likely to be incorrect, while predictions with even a risk of 30% were almost always correct.*
*based on informal live testing on 22 November. Stability testing of the models will be continuously conducted during the alpha launch, and the results, along with user feedback, will inform our next model creation process.