โ Back to Blog ยท 2026-09-17 ยท 9 min read ยท Strategy Case Study
Picture this: it's late September 2021. You're long thermal coal futures on the Zhengzhou Commodity Exchange. The contract has been grinding higher for months, and every pullback gets bought. Then, almost overnight, the government steps in, the exchange hikes margins, and the market starts printing limit-down days in a row. Your open profit โ the kind of run trend followers dream about โ is now a question of whether you can even get out.
That's not a hypothetical. That's roughly what the 2021 Chinese thermal coal squeeze looked like from the inside. It was one of the most violent moves in Chinese commodity futures history: a parabolic rally driven by a genuine energy shortage, followed by an equally brutal policy-driven collapse. And it's the perfect stress test for one question โ does a simple trend-following system survive a market that ends not with a fade, but with a cliff?
Let's walk through it with real rules, real contract mechanics, and an honest look at where such a system would have won, bled, and nearly died.
What Actually Happened in 2021
Quick recap for anyone who wasn't watching Chinese commodity futures that year. Through 2021, China faced a widening power shortage. Coal inventories were low, domestic production was constrained by safety and environmental policies, import availability was tight (partly due to the unofficial ban on Australian coal), and industrial demand was booming as the economy rebounded post-COVID. Thermal coal prices โ both spot and futures โ went vertical.
Zhengzhou thermal coal futures (ticker ZC, quoted in yuan per ton, 100 tons per lot, minimum tick 0.2 yuan/ton) roughly tripled from the spring into mid-October, with the front contract climbing from the several-hundred-yuan range to a peak around the 1,900 yuan/ton area. Daily limit-up sessions were common in the final leg. This wasn't a slow macro drift โ it was a squeeze in the classic sense.
Then came the intervention. The NDRC (National Development and Reform Commission) signaled it would take direct action to cap coal prices, including studying price controls. The exchange responded the way Chinese exchanges do: sharply raising margin requirements, widening limit bands in some sessions, and tightening position limits to force speculative open interest down. The result was a cascade of limit-down days through late October and November. The contract gave back the entire parabolic move in weeks.
Two things matter for our case study:
- The rally was trendy โ extended, persistent, with shallow pullbacks. A trend system had no trouble staying long.
- The reversal was gappy โ driven by policy, not price structure. No trailing stop based on price alone exits cleanly through consecutive limit-downs.
Every trend follower can ride a trend. The real test is what your system does when the trend ends in a locked market.
The Strategy: A Deliberately Boring Donchian Breakout
For this case study, let's use a system simple enough that you could have actually traded it in real time โ no hindsight curve-fitting. The rules:
- Entry: Go long when price closes above the highest high of the previous 20 sessions. Go short below the lowest low of the previous 20 sessions. One unit of risk per signal.
- Position sizing: Risk a fixed fraction โ say 0.5% to 1% of account equity โ per trade. Position size = (equity ร risk %) รท (stop distance ร contract multiplier). With ZC at 100 tons/lot, a 60 yuan/ton stop means 6,000 yuan of risk per lot. On a 200,000 yuan account risking 1%, that's 3 lots.
- Initial stop: 2ร ATR(20) below entry.
- Trailing stop: Chandelier-style โ 3ร ATR(20) below the highest close since entry, updated daily.
- Re-entry: Allowed, same rules, no penalty for whipsaws.
Nothing exotic. No fundamentals, no news filter, no opinion about the NDRC. That's the point โ we want to see what a mechanical system experiences, not what a clever discretionary trader could have done.
Phase One: The Grind (Spring to Early Autumn)
From roughly May onward, thermal coal trended up in a series of impulses. A 20-day breakout system would have been stopped out once or twice in the choppy early summer โ normal attrition, small losses of roughly 1R each. Then came the breakout that stuck.
From late summer into October, the market entered the phase trend followers live for: higher highs, pullbacks that stalled well above the trailing stop, and ATR expanding in the system's favor. With volatility rising, the 3ร ATR trail widened, which is exactly what you want โ it gave the position room to breathe through 100-plus-yuan daily swings without getting shaken out.
By early October, a 1%-risk account would have been sitting on an open profit of several R multiples โ call it 5R to 8R depending on entry timing. This is the part everyone gets right in the backtest. The open equity looked beautiful on the screen.
But here's the detail that separates live traders from backtests: the exchange was changing the rules mid-trend. Margin requirements on ZC were raised repeatedly through September and October โ in stages, sometimes several times in a single month. Each hike meant either posting more capital per lot or cutting size. A trader running fixed 1% risk on notional had to mechanically reduce lots as margins climbed, or watch their effective leverage (and margin-call risk) balloon. This is a China-specific reality: in Chinese commodity futures, the exchange is an active risk manager, and any system you run must have a rule for margin hikes, not just price stops.
Phase Two: The Cliff (Mid-October Onward)
When the NDRC intervention hit, the market didn't roll over โ it gapped. Limit-down sessions stacked up. On a locked limit-down day, if you're long, your exit order sits in a queue behind everyone else's, and you may simply not get filled. Your trailing stop exists on paper; it doesn't exist in the market.
Let's be honest about what the mechanical system experienced:
- The trailing stop got triggered, but execution was partial at best. In the first limit-down, some longs got out. In the second and third, many didn't. Realistic slippage on the exit was multiple limit moves, not one bad fill.
- Open profit evaporated faster than any stop could protect it. A position that showed 6R open on Monday could be closer to 1Rโ2R realized by the time the exit actually printed, depending on fill luck and size.
- Shorts couldn't get in either. Locked limit-down means no liquidity in either direction for the side the market is moving against. Trend systems that flipped short on the breakdown often waited days for an entry fill.
So what's the verdict? The system kept a meaningful chunk of the trend's profit โ the trail captured the bulk of the move and the exit, however ugly, happened at prices far above the original entry. But the last 2Rโ3R of open equity was surrendered to the gap, and no amount of stop-tightening would have saved it. Tighter stops earlier would have meant getting shaken out during the AugustโSeptember run-up instead.
The lesson isn't that trend following failed. It's that in Chinese commodity futures, your exit plan must assume the market can become untradeable โ and size accordingly before that happens, not after.
Four Lessons That Transfer to Any Chinese Commodity Futures Market
1. Size for the exit you'll actually get, not the exit you want
If your stop assumes you'll exit at 3ร ATR below the high, but locked limit days can cost you 3โ5 limit moves beyond that, your true worst-case per trade is maybe double your nominal 1R. Either cut your risk fraction on markets with policy-driven gap risk (energy, agriculture with state intervention history) or accept that your real risk per trade is larger than your model says. Most traders do neither, and it's why a single intervention can wipe out a year of small wins.
2. Build an exchange-rule layer into your system
Chinese exchanges raise margins pre-emptively before holidays, during volatility spikes, and when regulators send signals. A practical rule: when a contract's exchange margin rises above a threshold (say, above 15%), automatically halve position size. It feels conservative during the best part of a trend โ that's exactly when you should be conservative, because elevated margins are the market's way of telling you the tail risk is live.
3. Open profit is not profit โ especially in a policy-driven market
One legitimate tweak many China-focused traders use: partial profit-taking into vertical moves. Taking a third off after, say, a 4R open gain, and another third when daily range expands to 2ร its average, converts some paper profit to cash before the squeeze resolves. It lowers your ceiling, but in a market where the government can end the game with a press release, that's a rational trade-off โ not a violation of trend-following purity.
4. The same dynamics repeat in other Chinese contracts
Thermal coal was the extreme case, but the pattern โ a fundamentals-driven trend, regulatory attention, exchange tightening, sharp reversal โ has cousins across Chinese commodity futures. Iron ore on the Dalian Commodity Exchange has seen repeated policy-driven swings tied to steel production curbs. Rebar futures on the Shanghai Futures Exchange (10 tons/lot, 1 yuan tick) react to property-sector policy in waves that trend hard then mean-revert violently. If you trade rebar or iron ore, you're trading the same underlying dynamic: China's policy cycle expressed through futures. Your system needs to respect it.
How You'd Apply This Today
If you're building or refining a system for Chinese commodity futures, here's a concrete checklist drawn from this case:
- Backtest with limit-move logic. If your backtest assumes you always fill at your stop, it's lying to you. Model at least one scenario where exits slip 2โ3 limit moves.
- Track exchange margin history per contract. ZCE, DCE, and SHFE all publish adjustment announcements. A system that sizes dynamically off the current margin rate is more robust than one that doesn't.
- Stress the trail, don't tighten it. Counterintuitively, the 2021 case argues for slightly wider trails plus smaller size โ not tighter stops. Tighter stops would have ended the trade before the biggest leg.
- Define your 'untradeable market' rule in advance. For example: if a contract closes at its limit for two consecutive sessions against your position, cut size at the first opportunity regardless of your trail. Decide this now; you won't decide it well mid-crisis.
- Diversify across Chinese sectors. Energy, ferrous (rebar, iron ore), agriculture โ the 2021 coal squeeze was one market, but a portfolio holding uncorrelated Chinese contracts would have had other positions absorbing the shock.
None of this is theoretical. Every rule above exists because the 2021 thermal coal episode punished the traders who lacked it โ including plenty who were directionally right the whole way up.
The Takeaway
Trend following worked in the 2021 thermal coal squeeze โ but not the way a backtest spreadsheet suggests. The system caught the trend, the trail protected most of it, and the policy cliff took a real bite out of open equity that no price-based stop could prevent. The traders who came through best weren't the ones with the cleverest indicator. They were the ones who sized for locked limit-down days, respected exchange margin hikes, and treated open profit with suspicion in a market where the referee can change the rules mid-match.
If you're trading or evaluating strategies on Chinese commodity futures โ thermal coal, rebar, iron ore, or anything on ZCE, DCE, or SHFE โ the honest question isn't whether your system makes money in the trend. It's whether it survives the ending. The best way to answer that is to run it against real Chinese market data, with real contract specs and realistic limit-move behavior, before you risk capital on it. That's exactly what you can do with a futures evaluation on XS Select โ real-data China futures challenges starting from $29, built to test whether your system holds up when the market gets difficult, not just when it cooperates.