When the Classifier
Doesn’t Know —
That’s the Signal.
A neural network classifier trained on $GLD not only detects crowded trades — its zone of maximum uncertainty anticipates regime inflections that rolling volatility confirms too late.
What Most Positioning Models Fail to Capture
Standard positioning frameworks — historical percentiles, flow z-scores, net COT — all answer the same question: where is positioning right now? They are descriptive. They capture the level but not the market structure that produces it.
There is a different, more valuable question: how well does the current environment fit the expectations the model built from history? When returns start behaving in ways the classifier hasn’t seen before, that divergence is information — and it arrives before the trade reverses.
This is exactly what a neural network classifier trained on implicit positioning captures. Its zone of maximum uncertainty — where it assigns nearly equal probabilities to all three regimes — is not a model failure. It is the cleanest signal the model produces.
“Markets don’t reverse on news. They reverse on positioning. And positioning leaves a trail in price — if you know how to read it.”
The Positioning Proxy: Built From Price
Without access to real-time COT data, we infer positioning from price structure. The logic is precise: if $GLD has risen consistently over 63 trading days (~3 months), there is a mass of accumulated buyers sitting on unrealized gains. That is a structurally crowded trade. The reversal is not caused by the catalyst — it is caused by the structure.
| REGIME | CONDITION | OPERATIONAL SIGNAL | INTERPRETATION |
|---|---|---|---|
| Crowded Long | Percentile > 80 | Short bias | Accumulated buyers, few marginal buyers remaining. Asymmetric downside risk. |
| Neutral | Percentile 20–80 | No bias | Positioning within historical range. Classifier operates with high regime certainty. |
| Crowded Short | Percentile < 20 | Long bias | Mass of trapped shorts. Any positive catalyst can trigger a squeeze. |
The Architecture: MLPClassifier Over the Positioning Space
The classifier follows the same architecture Matthew Dixon demonstrates in his 2019 notebook on deep classifiers in finance — but instead of separating synthetic half-moons, it separates real market regimes in the z-score × realized volatility space.
The advantage over a binary logit is structural: the decision boundary in this feature space is non-linear. Market regimes are not separable with a straight line. The MLP with ReLU activations learns that curvature directly from data — no analyst encodes it.
MLPClassifier decision boundary (2 hidden layers, ReLU) in z-score × realized volatility space. Green = Crowded Short (long bias). Gray = Neutral. Red = Crowded Long (short bias). Dashed lines mark the learned non-linear boundaries — inaccessible to a standard logistic classifier. Data: GLD 2015–2026 via Yahoo Finance.
The curved boundary between Neutral and Crowded Long reveals a pattern not explicitly encoded: at high realized volatility levels, a moderate z-score is sufficient to classify as crowded. The latent selling pressure in a volatile environment is structurally larger. The model learns this from data, not from rules.
The Transformation: Input Space → Hidden Layer
Dixon’s 2019 notebook demonstrates that a MLP’s hidden layers don’t just classify — they transform the feature space to make linearly separable what wasn’t in the original input. The same happens here with real $GLD data.
With a final hidden layer of 2 units (directly plottable), we can visualize exactly what the network did: it takes a space where the three regimes overlap, and builds a representation where the clusters are linearly separable.
Figure 2. Transformation from input space (left) to the 2-unit hidden layer space (right). In the input, the three regimes overlap — no linear classifier separates them. After the ReLU transformation, clusters reorganize into linearly separable zones. Replicates Dixon’s (2019) make_moons analysis, applied to a decade of real $GLD data.
.
The Signal Few Exploit: The Maximum Uncertainty Zone
Most classifier users only read the final output: “regime = Crowded Long”. They ignore the internal class probabilities. That is a mistake with real operational cost.
When the classifier assigns probabilities close to 33%–33%–33% across the three regimes, it is not confused — it is detecting that the market is at a structural transition point. That state of maximum model uncertainty consistently precedes regime changes.
Describes the positioning level. Where are we now? Retrospective. Rises after crowding has already built. A coincident indicator — not a reversal indicator.
Measures the model’s structural uncertainty about the current regime. Rises when returns deviate from historical patterns in feature space. A leading indicator of transition.
The practical difference: in $GLD reversal episodes, the classifier’s maximum uncertainty zone (high probability entropy) appears before the percentile crosses back to neutral range. The model detects that structure is changing before price confirms it.
Vista Completa: Precio + Probabilidades de Regime ML
Figure 3. Evolution of $GLD price over time — animation built with an expanding window from 2010. Each frame advances 40 trading days. The accumulation and reversal pattern is visible in price structure, not price level. Data: Yahoo Finance · gif generated with imageio.
Figure 4. Evolution of the positioning z-score with ±2σ extreme zones — real-time animation of the crowding proxy building. Each spike above +2σ corresponds to a Crowded Long period in the classifier. Crosses below the lower band signal potential Crowded Short conditions. Data: Yahoo Finance · yfinance · sklearn.
The three-row panel integrates the framework layers: price, Crowded Long probability, and Crowded Short probability. The joint reading reveals the regime transition process — not visible in any individual layer.
Figure 5. Top panel: $GLD price with ML regime zones shaded (red = Crowded Long, green = Crowded Short). ▲ marks long bias (crowded short detected), ▼ marks short bias (crowded long). Center panel: P(Crowded Long) — exceeds 0.5 before price consolidates. Bottom panel: P(Crowded Short) — spikes signal potential squeeze conditions. MLPClassifier (32→16→8, ReLU) · 5 features · GLD 2015–2026.
Why This Complements (and Doesn’t Replace) the Percentile
Measures accumulated positioning pressure. High precision in stationary regimes. Informs on structural level — how loaded the trade is.
Measures the model’s certainty about the current regime. High sensitivity at transition points. Informs on structural stability.
Trade is clearly crowded and the model has high structural confidence. Asymmetric risk is confirmed by both dimensions simultaneously.
Trade is crowded at the level but the model detects structural incoherence. Classifier uncertainty suggests the regime may already be in active transition.
The combination of both dimensions — positioning level and model certainty — is the signal architecture Alpha Centauri uses to filter high-conviction trades from those where structure is ambiguous.
08
Model Limitations
The credibility of a systematic framework is built by being explicit about what it cannot do. This classifier has three structural limitations that should inform how it is used operationally:
Return accumulation is an approximation. It does not capture OTC flows, options, institutional hedges, or futures inventory. It infers structural pressure — not real positioning.
The classifier was trained on labels derived from the same proxy. The 96% accuracy reflects internal consistency. Out-of-sample predictive capacity requires additional validation.
A regime can remain in extreme territory for weeks or months. The signal identifies asymmetric risk conditions — not the entry moment. Requires technical or macro confirmation.
- Regime ML actual: Neutral — the classifier operates with high certainty over the present structure. The positioning percentile sits within the historical range (20–80).
- High-conviction signal condition: Monitor a sustained cross of P(Crowded Long) > 0.50 simultaneous with percentile > 75. That is the maximum downside asymmetry configuration of this framework.
- Active transition zone: If P(Long) and P(Short) both converge above 0.30, the classifier is detecting a regime break. Reduce gross exposure regardless of direction.
- Macro context 2025–2026: The gold/real-rates decoupling introduces noise into the positioning proxy. Combine with ETF flows ($GLD AUM) for signal direction validation.
- Regime neutral no significa riesgo cero: Tail events occur in low classifier uncertainty regimes too. The model’s irreducible noise floor never reaches zero.
More articles
How to Detect Market Regime Shifts Before Price Moves
When the ModelDoesn't Know —That's the Signal. We built a system that detects economic cycle shifts before price confirms them. The edge isn't in what the model predicts — it's in the moments when it admits it has no idea. The problem classic models ignore Most...
Un clasificador neuronal entrenado sobre $GLD
Lo Que la Mayoría de los Modelos de Posicionamiento No Captura Los frameworks estándar de posicionamiento — percentiles históricos, z-score de flujos, COT neto — responden todos la misma pregunta: ¿dónde está el posicionamiento ahora?Son descriptivos. Capturan el...
Sequential Bayesian Regression
When the Model Doesn't Know — That Is the Signal. Sequential Bayesian Regression reveals where the market is breaking from history — before volatility catches up. Most risk models measure how much markets moved. This one measures how much the model itself doesn't know...
Stay up to date with the latest news and updates
Master Portfolio
You'll have access to monthly investment opportunities, daily market updates, and our investment community.
Join our newsletter
Join our newsletter
Follow us
Find information and advice on our social networks





Comentarios recientes