Random Forest
Trains hundreds of different decision trees and averages their vote, so one tree's odd opinion can't dominate the final prediction.
Why it matters
Each tree trains on only a random sample of historical days and indicators, so every tree learns slightly different patterns. Averaging trees that "see" different things reduces the risk of the model memorizing noise specific to a handful of days — and lets it capture non-linear relationships between indicators that logistic regression can't see.
Build it yourself
Simplified to two groups of trees (the project trains hundreds at once): drag how many trees in each group vote "up" and watch the combined vote.
Illustrative example numbers for practice — not real data.
How it works, step by step
- Hundreds of different training subsets are created, each with a random sample of historical days and indicators.
- A decision tree is trained on each subset: a sequence of questions like "is MVRV > 2?" that keeps splitting days into increasingly similar groups.
- For a new day, every tree votes on whether it thinks price will rise or fall within the chosen horizon.
- The final probability is simply the percentage of trees that voted "up".
Predictions
These are the real predictions stored day by day, each one produced by walk-forward validation: every day's was produced by a model trained only on prior cycles. They're published for transparency, not because there's an edge behind them — for price direction, the project's research found none that is defensible.
Probability of a rise within 7 days
Probability of a rise within 30 days
Probability of a rise within 90 days
Data last updated on 2026-09-09.