⚠️ Personal research and trading journal — not investment advice. The author does not provide licensed advisory services.
The single most important filter in my system is not RS Rating. It is not volume confirmation or a contracting base. It is knowing whether the market itself is in an uptrend or a correction — and refusing to trade breakouts when it isn't.
This is the market regime gate, and the data behind it is the most important number I've found.
What the data shows
From the Thai 36-year backtest, I split every contracting-base breakout signal by the market condition on the day of the signal:
| Market condition | Mean forward R (per trade) |
|---|---|
| Confirmed Uptrend | +0.35 (bootstrap CI excludes 0) |
| No regime filter (all conditions) | ~0.00 (near zero, CI includes 0) |
| Market in Correction | negative |
The edge almost entirely lives in one regime. Trade breakouts in a Confirmed Uptrend: the method works. Trade the same setups in a correction or under pressure: the edge disappears or turns negative.
This is why the SCGP case study is so instructive. SCGP showed a textbook breakout — volume pop, contracting base, RS≥80, above all key moving averages. It failed because the SET dropped −7.4% the same week. The setup was real. The market was the problem.
What "market condition" means
I use IBD's distribution-day framework, adapted for the SET index:
Distribution day: A day the market index closes down ≥0.2% on higher volume than the prior session. This is the signature of institutional selling — funds moving out of the market in size.
Confirmed Uptrend: Fewer than 5–6 distribution days over a rolling 25-session window. The market is in a healthy trend.
Uptrend Under Pressure: Distribution days accumulating (5–7 range). Caution — reduce new entries, tighten stops on existing positions.
Market in Correction: Heavy distribution (7+ days) or a clear price breakdown. Stop adding new positions. Wait.
The threshold is not a simple moving average cross. A 50-day MA cross is lagged — by the time the 50d is below the 200d, you've already given back substantial gains. The distribution-day count detects institutional selling as it happens, not weeks later.
Why it's the most important filter
Consider what happens when you remove it. In the backtest, applying RS≥80 + contracting base alone to ALL market conditions gives near-zero mean return (CI includes 0). The same setup, same stock, same entry point — but traded across all regimes blends the Confirmed Uptrend edge into the noise of corrections.
Every breakdown you've watched in a stock that looked perfect — strong RS, good pattern, volume pop — was likely a market-condition failure, not a setup failure. The setup was fine. The market was distributing.
This is why I teach the SCGP example. The lesson is not "SCGP was a bad setup." The lesson is: correct market reading is the precondition for every other filter to matter.
How I track it
The Thai dashboard shows the current market condition badge at the top of every screen. It recalculates daily from the distribution-day count. The current state — Confirmed Uptrend, Under Pressure, or Correction — determines whether I'm actively looking for entries or sitting on my hands.
In a correction, the right response is not to find better setups. The right response is to wait.
One more thing: the regime gate applies globally. If the US market is in a correction, that matters for Thai stocks too — not always directly, but large corrections in the US historically pressure SET as well. I track both.
Track. Study. Wait. Strike — but only when the market says yes.
Personal research and trading journal — not investment advice. The author does not provide licensed advisory services. — MOEasymmetry