The Math Behind SkyDriver 🧮
This document is just a a summary of notes.md
Warning
Math ahead! If you just want to use SkyDriver, you can skip this. But if you’re curious how the predictions work, read on!
Note
Found a problem with the math? Please report it! I’m not a mathematician, so there might be mistakes.
Overview
SkyDriver uses several indicators to predict if an item will be profitable to flip. Each indicator looks at different aspects of the market, and they work together to give us a prediction.
Smoothing Functions
We smooth out the results of the other calculations to make them more manageable. We have a few ways to do this:
No Smoothing
Just use the raw numbers (boring but sometimes useful)
Sigmoid Smoothing
Tanh Smoothing
Saturating Smoothing
Piecewise Smoothing
For x > 0:
For x ≤ 0:
Note
and control how aggressive the smoothing is
Market Indicators
1. Price Spread (PS)
How different the buy and sell prices are:
2. Volume Imbalance (VI)
Are more buys or sells going through?
3. Order Imbalance (OI)
Are there more buy orders than sell orders?
4. Moving Week Trend (MWT)
What’s been happening over the last week:
5. Top Order Book Pressure (TOBP)
Looking at the top 30 orders:
6. Volume Factor (VF)
How much trading is happening:
7. Profit Margin Factor (PMF)
How much profit you might make:
Putting It All Together
The Final Prediction
We combine all these indicators with different weights:
Where all the weights ( through ) add up to 1.
Note
The weights are configurable in the Config if you want to change how the predictions are weighted
What The Numbers Mean
- Positive number = Probably profitable
- Negative number = Probably not profitable
- Higher % = Stronger prediction
Confidence Score
We also calculate how confident we are in the prediction:
Tip
Want to see how this works in code? Check out internal/priceFluctuation