â Back to Blog · 2026-09-26 · 8 min read · Strategy Case Study
You've been watching the Dalian soybean meal chart for three days straight. It's grinding sideways, then it rips two percent on a hog restocking headline, then gives it all back before the night session closes. If you've ever traded Chinese commodity futures directionally, you know this feeling. The intraday noise is brutal, the overnight gaps (thanks to that 21:00â23:00 night session) can be nasty, and being flat-out long or short a single contract means you're exposed to everythingâmacro, policy headlines, currency flows, all of it.
Now imagine a different trade. One where you're not betting on whether soybean meal goes up, but on whether it outperforms palm olein over the next three months. Two legs, one thesis, and a lot less exposure to the random noise that makes directional China futures trading so punishing. That's what a seasonal spread does. In this case study, we'll walk through one of the more well-known calendar patterns in the Chinese veg-oil-and-meal complex, lay out concrete rules you could actually trade, andâimportantlyâbe honest about where this strategy would have gotten hurt.
Why Spreads Make Sense in Chinese Commodity Futures
Before we get into soybean meal and palm olein specifically, let's talk about why spread structures fit the China futures market so well.
First, margin efficiency. Chinese exchanges set relatively low exchange margins on spread positions compared to outright legs, because the legs are historically correlated. When you're long one DCE contract and short another, your combined risk is the spread itself, not the sum of two outright positions. That means more firepower per unit of capitalâwhich matters when you're running a fixed-risk evaluation account.
Second, the noise problem we just mentioned. Chinese commodity futures are heavily retail-driven, and sentiment can swing hard on a single policy headline. Think back to the 2021 thermal coal rally on the Zhengzhou and Dalian exchanges, when prices roughly doubled in a matter of weeks before government intervention slammed them back down. Traders who were outright long or short got whipsawed by policy announcements, not by supply and demand. A spread between two related agricultural contracts largely insulates you from that kind of macro shockâboth legs tend to move together when the broad market panics.
Third, and this is the core of today's article: the Chinese agricultural complex has genuinely strong seasonal drivers. Not astrology-seasonality, but real, recurring, calendar-driven flowsâpig farming cycles, harvest timing, monsoon patterns in Southeast Asia. When a seasonal pattern has a mechanistic reason behind it, it's worth studying.
The Two Contracts: Specs You Need to Know
Both legs of this spread trade on the Dalian Commodity Exchange (DCE), which is convenientâsame exchange, same trading hours, same currency. Here are the specs that matter:
| Soybean Meal (ticker: M) | Palm Olein (ticker: P) | |
|---|---|---|
| Exchange | Dalian Commodity Exchange | Dalian Commodity Exchange |
| Contract size | 10 metric tons per lot | 10 metric tons per lot |
| Tick size | 1 CNY/ton (10 CNY per lot) | 2 CNY/ton (20 CNY per lot) |
| Listed months | Jan, Mar, May, Jul, Aug, Sep, Nov, Dec | Monthly contracts |
| Trading hours | Day session plus night session, 21:00â23:00 | Day session plus night session, 21:00â23:00 |
A few practical notes. Both contracts are liquid in the front months, with the May and September contracts typically carrying the heaviest volume. One lot of soybean meal at typical price levels represents roughly 30,000â40,000 CNY of notional value, while one lot of palm olein runs noticeably higherâpalm has traded anywhere from around 5,000 to over 12,000 CNY per ton across the past decade, so notional can swing a lot depending on the regime. Keep that asymmetry in mind for sizing; a naive one-lot-per-leg spread is not dollar-neutral and leans implicitly long palm.
The Seasonal Logic: Two Crops, Two Clocks
Here's where it gets interesting. Soybean meal and palm olein are relatedâboth show up on the vegetable-oil-and-protein complex, and they share some macro driversâbut their seasonal clocks are almost opposites.
The soybean meal calendar
Soybean meal is feed, and feed means pigs. China's hog cycle dominates demand. After Chinese New Year (typically late January into February), feed demand goes quietâslaughter is done, restocking hasn't started, and crush margins soften. Meanwhile, the South American soybean harvest comes online in March and April, flooding the global market with supply and pressuring meal prices. That's the weak stretch.
Then the pendulum swings. From roughly April through summer, hog restocking picks up, piglet numbers build, and feed demand climbs. Add in the US planting season and the JuneâJuly weather marketâwhen any dryness in the Midwest gets priced into beans aggressivelyâand meal often finds its strongest tailwind of the year heading into the September contract.
The palm olein calendar
Palm olein is the opposite story. Palm fruit production in Malaysia and Indonesia is heavily rainfall- and monsoon-dependent. Production troughs in the first quarterâright when Chinese New Year cooking-oil demand is peakingâand builds through the year toward a peak around September and October. So palm tends to be relatively firm in Q1 and relatively heavy in the second half of the year.
Put those two clocks together and you get a natural spread rhythm:
- Q1 window: Long palm olein, short soybean meal. Palm is in its low-production, high-demand season; meal is facing post-holiday feed lull plus South American harvest pressure.
- Mid-year window: Flip it. Long soybean meal (hog restocking, US weather market), short palm olein (production ramping toward its seasonal peak).
This isn't a secret. The pattern is well-known among domestic Chinese traders, which is exactly why you should treat it as a base rate, not a money printer. Well-known seasonality gets arbitraged, faded, and distorted. What it gives you is a probabilistic tiltâand a framework for thinking about the complex.
The Rules: A Concrete Trade Plan
Here's a simple, rules-based version of the strategy, stated precisely enough that you could code it or trade it manually.
Leg 1 â The Q1 spread
- Entry: In the second half of November, buy the May palm olein contract (P05) and sell the May soybean meal contract (M05), one lot each.
- Exit: Exit both legs in mid-to-late March, or earlier if the stop triggers.
- Stop: Set a maximum adverse move on the spreadâroughly two times the spread's average weekly range over the prior month is a reasonable starting point. Convert that to CNY and size accordingly.
Leg 2 â The mid-year flip
- Entry: In early-to-mid May, buy the September soybean meal contract (M09) and sell the September palm olein contract (P09).
- Exit: Exit in mid-August, before palm production peaks and before US harvest pressure starts hitting the November bean contracts.
- Stop: Same structureâtwo times the recent spread range.
Sizing and risk
- Because palm's notional per lot is larger, consider running a ratio (e.g., 2 meal lots to 1 palm lot) if you want the spread to be closer to dollar-neutral. Test both versions.
- Risk no more than 1â2% of the account on any single spread, measured to the stop.
- Add a regime filter: if either leg has moved more than, say, 15% in the past month on a closing basis, stand aside. Seasonal patterns die in violent trends.
How It Would Have Performed: The Honest Version
Let's be upfront: we're not going to quote you a Sharpe ratio with two decimal places or a win rate to the tenth of a percent, because anyone who does that for a seasonal strategy without showing you their full methodology is selling something. What we can do is walk through how this pattern would have behaved across the major regimes of the past decade, using widely known market events as anchors.
The good years. In quiet, normal yearsâno disease shock, no export bansâthe Q1 palm-over-meal spread has historically worked in most seasons, because the underlying supply logic is real: palm production genuinely troughs in Q1, and South American harvests genuinely pressure meal. The mid-year meal leg is choppier, because it's hostage to the hog cycle, which does not care about your calendar.
The African Swine Fever problem. This is the big one. Starting around 2018â2019, African Swine Fever wiped out a huge share of China's hog herdâby some estimates, roughly half. Feed demand collapsed, and no seasonal pattern in soybean meal survived that. A trader running the mid-year meal leg blind into that environment would have been run over. Then the flip side: the massive restocking boom of 2020â2021 pushed meal demand and prices to historic strength, and the seasonal longs suddenly looked like geniuses. Same strategy, opposite outcomes, entirely because of a biological variable that no price chart predicted.
The palm policy shocks. Palm olein has its own regime risks. Indonesian export policy is the recurring wildcardâmost famously, Indonesia's temporary palm oil export ban in spring 2022 sent palm prices spiking globally and blew through any seasonal logic. Indonesia has also periodically tweaked export levies and biodiesel mandates (the B-series blending programs), each of which can decouple palm from its normal production calendar for months at a time.
The honest takeaway: a simple seasonal spread on these two contracts would likely have shown a positive tilt across a full decade, with a majority of seasonal windows resolving favorablyâbut with two or three years where a single fundamental shock erased multiple years of gains. That's the actual profile of seasonality: many small edges, occasional large regime losses. Your job as the trader is not to predict the seasons harder. It's to size so that the bad year doesn't end your career.
The edge in seasonal trading isn't the calendar. It's the discipline to trade a modest tilt with modest size, year after year, while surviving the year that breaks the pattern.
Making It Work in Practice as an International Trader
If you're trading from outside mainland China, a few practical realities shape how you'd run this.
First, access. Direct exchange access for foreign retail traders is limited, which is why evaluation-based platforms that let you trade Chinese commodity futures through a funded structure have become the practical route for global traders. The mechanics of the trade itself don't changeâyou're still working with DCE contract specsâbut your risk framework does. When you're trading an evaluation or a funded account, the drawdown ceiling is the binding constraint, not your stop-loss. A spread strategy with defined, symmetric risk on both legs fits that constraint far better than an outright position that can gap against you at the night-session open.
Second, timing. The night session (21:00â23:00 Beijing time) is when palm olein reacts to Malaysian palm oil export data and crude oil moves, since palm increasingly trades as a biofuel proxy. If you're running the palm leg, you need to either accept night-session risk or set your entries and exits to avoid holding through the highest-information releases.
Third, do the work before you risk anything. Pull the actual DCE settlement data for M and P contracts across several years, construct the spread series yourself, and check whether the seasonal windows held in the specific years you'd have traded. Ten minutes of spreadsheet work will teach you more than a hundred articlesâincluding this one.
Test It Before You Trade It
Seasonal spreads on Chinese commodity futures are one of the more structurally sound ways to trade the China market: real underlying drivers, correlated legs that dampen the noise, and defined risk on both sides. But a strategy that looks clean in an article and a strategy that survives contact with a live hog cycle or an Indonesian export ban are two different things. Build the rules, stress-test them against the regime years we talked about, and then take them to real data. If you want to run a strategy like this through a structured, real-data China futures evaluation, XS Select offers evaluations starting from $29âa low-friction way to find out whether your seasonal edge holds up under actual drawdown rules, not just in a backtest. No promises about the outcome; that part's on you and the hogs.