Thailand stock prediction (SET): my single worst market, and why I'm telling you
Thailand (SET) is now my single worst market: about 43.8% directional accuracy on roughly 1,889 verified predictions β clearly below a coin flip. Here's the market-structure reason why, and why a number this low doesn't mean you can just bet the other way.

I run Trading Agent, and I publish every prediction my model makes β wins and losses β at /predictions. Most founders writing about their own product steer you toward the markets where they look good. I'm going to do the opposite and walk you straight into my worst one. Thailand (the Stock Exchange of Thailand, SET) currently carries my single lowest headline number across every market I cover. It's not a thin-data fluke, and it's not a number I can spin. So I'm going to explain it honestly: what it is, why the market's structure produces it, and why "below 50%" does not quietly mean "just trade the opposite."
The number
My model has logged roughly 1,889 verified directional predictions on Thai equities (the .BK tickers on the SET) at an accuracy of about 43.8%.
I want to be blunt about what that means, because there's no flattering way to read it. 43.8% is clearly below a coin flip. It is the lowest figure I have on any market, and the sample behind it is large enough that I can't wave it away as noise the way I once could with a 34-row market. ~1,889 verified predictions is a real sample. A real sample landing this far under 50% is telling me something, and the honest thing to do is say what.
For context: my blended accuracy across all 16 markets I cover is about 49.7% β close to coin-flip overall. My best markets, Canada and the US, run around 53% each on my deepest, most liquid data. Malaysia, which used to be my problem child, has converged with more data to about 49% on roughly 2,133 predictions and quietly moved into the mid-pack. So Thailand isn't "a bit below average." It is several points under my own blended number and roughly ten points under my best markets. It stands alone at the bottom.
That makes Thailand the hardest version of the honesty pitch I can make. With Malaysia I could eventually say "the scary early number was just thin data, and the real number is an ordinary coin flip." I can't say that here. Thailand has the data and the bad number. So the only honest move is to explain the market structure that produces it β and then be equally honest about what I am not allowed to conclude from it.
Why a momentum model struggles on the SET
My model, like most machine-learning systems applied to equities, is fundamentally a pattern-, momentum-, and volume-driven engine. It hunts for trends, continuation, and the statistical fingerprints of price moving in a direction and continuing to move, usually confirmed by volume. That approach wants a deep, liquid market where moves persist and trends carry. The SET is structurally some distance from that ideal in ways that specifically punish a momentum reader.
It's an emerging market, and emerging markets carry more regime noise. Macro shifts, policy changes, and sentiment swings move the whole tape more sharply and more often than in a large developed market. A model trained to read continuation gets repeatedly wrong-footed when the regime itself keeps shifting under the pattern.
It's heavily retail-driven. A large share of daily turnover comes from domestic retail participants, whose behaviour is more sentiment- and headline-led and less anchored to the kind of orderly, institutional flow a technical model implicitly assumes. Retail-dominated tapes tend to overshoot and snap back β which looks, to a momentum engine, exactly like a trend that betrays you right after you'd read it as real.
It's sensitive to foreign fund flows and the baht. Thai equities are notably exposed to foreign portfolio flows, and those flows are tied up with the Thai baht and global risk appetite. When foreign money rotates in or out β often for currency or macro reasons that have nothing to do with any single company's price history β it can reverse or distort price action that my model had read as a clean trend. A lot of what moves this market lives entirely outside the price-and-volume window my model looks through.
Momentum simply persists less here. Put the above together and you get a tape with lower momentum persistence and thinner continuation patterns: trends that don't carry, breakouts that fade, and moves that reverse before the pattern completes. A momentum-and-volume model is, almost by definition, reading the one feature this market is weakest at supplying. That isn't a bug I can patch with one more feature; it's a property of the market.
Small, emerging, retail-driven, flow- and currency-sensitive, low on continuation β stack those together and you have close to a worst case for a momentum/volume approach, which is exactly why this number sits where it does. When I reference a foreign-flow-sensitive large-cap or a retail-favourite name, I mean it as a structural example of these dynamics, never as a pick. The point is the category behaviour, not the ticker.
Why I can't just invert a sub-50 signal and call it edge
Here's the question every honest reader asks next: if the model is wrong more than half the time, why not just bet the opposite of whatever it says?
It doesn't work that way, and I want to be precise about why. A number this far below 50% on a sample this large is not telling me the model has discovered a clean, reliable wrongness I can flip into profit. It's telling me the model is misreading structure it can't observe β foreign flows, currency moves, retail sentiment, regime shifts β and mapping those misreads onto whatever price-and-volume pattern happened to be in front of it. The error isn't a stable signal pointing the wrong way; it's the model confidently fitting trends onto a market that doesn't reward trend-reading, and being wrong in unstable, situation-dependent ways.
You can't reliably trade the reverse of that. The moment you tried to systematically invert it, you'd be betting that the model's blind spots are consistent β and there's no reason to believe they are. Costs, spreads, and the same regime noise that hurts the model would eat an "inverse" strategy too. A sub-50 number on a hard emerging market means be more skeptical, not flip the sign and collect. Treating "below a coin flip" as a hidden buy signal is exactly the kind of overclaim this whole project exists to refuse.
What I actually do with a 43.8% market
I label SET signals Bearish, Neutral, or Bullish β never Buy or Sell, and never as a promise β and on Thailand I treat them with the most skepticism of any market I run, because the record earns exactly that. The honest conclusion is narrow and unglamorous: in a small, retail-driven, foreign-flow- and baht-sensitive emerging market with weak momentum persistence, my technical signal currently performs below a coin flip β and I'll tell you that plainly instead of hiding it or dressing it up as a contrarian edge.
One honesty note that applies to every market, Thailand included: in-sample backtests always look better than reality. Backtests are optimistic by construction. The number that matters is the live, public record β the one accumulating in the open at /predictions β and it sits lower than any backtest would suggest. On Thailand that gap is the widest I have, and that gap is the point of the brand.
This is the whole reason I built Trading Agent around radical honesty. Plenty of AI stock tools quietly bury their worst markets and their losing streaks β I wrote about that pattern in why most AI stock-picking tools are lying. I'd rather hand you my single worst number, explain exactly why the market's structure produces it, and tell you outright that I can't turn it into a reverse bet, than show you only Canada and the US and let you assume the model is that good everywhere. If you want the full picture of how the model is built, scored, and verified, it's all on the methodology page, and every SET call keeps accumulating in public at /predictions.
Thailand is the clearest reminder I have that an honest tool reports its failures as loudly as its wins. It is my worst market, on a real sample, for reasons rooted in how the market is built β not a number I can explain away, and not one I can secretly trade backwards. That's not what a marketer would write. It's what the data actually supports.
This article is educational content about machine learning and market structure. It is not financial advice, not a recommendation to buy or sell any Thailand-listed or other security, and not directed at any individual's circumstances. Trading Agent is a quantitative research tool operated by WU Capital Limited (New Zealand).


