台指期大跌: how to stress-test a strategy against TAIEX crashes
Sharp TAIEX futures falls expose a strategy's weak points: clustered losses, rebounds against shorts and stops that fill far from their price. Isolate past crash windows in your backtest, split long and short results, fill stops at the gap price, and treat the few crashes you have as a stress check, not as proof.
By Soren Huang · Published · updated · Editorial policy
Contents
- What happens to a systematic strategy when 台指期 falls sharply?
- How do you find past crash periods in your own data?
- Do short strategies win and long strategies lose in a selloff?
- How do gaps and price limits change your stop fills?
- How deep is the drawdown, and how long is the losing streak inside a crash?
- Why can a few crashes not prove a strategy is crash-proof?
- In what order should you run a crash stress test?
- Frequently asked questions
- References
When 台指期 falls sharply, systematic strategies often show their weak points. Long trend and dip-buying rules take clustered losses. Short rules can gain but face violent rebounds. Stops fill worse than planned because prices gap. To check your backtest, isolate past crash windows, compare long and short results there, and model gap fills honestly.
What happens to a systematic strategy when 台指期 falls sharply?
A sharp fall does not change your rules, but it runs them in conditions that the rest of your history rarely contains. Daily ranges widen, prices jump between bars, and the same losing setup can repeat several days in a row. A rule that loses a little on a normal day can lose many times as much in one session of a 台指期暴跌.
Think of a car crash test. You do not drive into walls every day, but you want to know what the car does if it happens. A crash stress test asks the same question of a strategy: what did it do in the worst stretches of the history, and could you have lived with that?
A crash window is a short, marked stretch of your data around a sharp market fall. It starts a few days before the fall and ends a few days after the first rebound. You then measure the strategy inside each window separately from the rest. The drawdown calculator turns the equity series of one window into its maximum drawdown and recovery, so you can compare windows quickly.
How do you find past crash periods in your own data?
Find crash windows with a fixed rule applied to your own bars, not by memory, so that you do not skip the periods where your strategy did badly. Use this order:
- Build daily closes from the same continuous contract your backtest uses. Check the roll first: an unadjusted switch from one contract month to the next can create a jump that looks like a crash but is only a price difference between two contracts.
- Mark sharp days. List the days with the largest close-to-close falls. The threshold is your choice, for example every day that fell more than 4%.
- Mark slow falls. List declines of several weeks from a recent high, for example more than 15% from the highest close. Slow falls hurt different strategies than one-day shocks.
- Set the window edges. Start each window a few days before the first big down day and end it a few days after the first strong rebound. The rebound belongs in the window because short positions often lose there.
- Check against known periods. Well-known selloffs such as the 2008 financial crisis, March 2020, early August 2024 and early April 2025 should appear if your data covers them. If one is missing or looks very small, inspect the data before you trust the backtest.
Session choice changes how a crash looks. TAIEX futures trade in a regular session from 08:45 to 13:45 Taipei time and an after-hours session from 15:00 to 05:00 the next day. Exchanges can change these values, so check the TAIFEX contract page or the futures market hours tool. With day-session bars only, an overnight US selloff appears as one large gap at 08:45. With full-session bars, the same fall is spread across the night. Your stops then fill at different prices. The article on day-only vs full-session bars in night-session backtesting covers this choice in detail.
Do short strategies win and long strategies lose in a selloff?
The short side often gains and the long side often loses, but the split is rarely clean. A short side whose whole profit comes from two or three crash windows is a bet on crashes, not a repeatable edge. How a strategy reacts depends more on its logic than on its direction:
| Strategy type | Typical behaviour in a sharp fall | What to check |
|---|---|---|
| Long trend following | Gives back open profit, exits, then stays flat | How much open profit was lost before the exit |
| Long dip buying (mean reversion) | Buys again and again into a falling market | Number of entries and the loss per entry inside the window |
| Short trend following | Can gain on the fall, then loses in fast rebound rallies | Result in the rebound days at the end of the window |
| Short positions held overnight | Exposed to gaps up after sudden good news | Worst single overnight loss on the short side |
For 空單回測 (short-side backtesting), run an exclusion test. Recompute the short side's net result with the two largest crash windows removed. If what remains is close to zero or negative, the short rules earned their record from a few rare events. A similar test helps for 台指期大跌策略 ideas: a rule built to profit from crashes should still have a reason to exist in normal months, or it will spend years losing small amounts while it waits.
AlphaPrime (Valynox) shows this split directly. The long and short analysis in the Performance Report separates each side's results. The periodic performance view lets you look at the months that contain each crash window.
How do gaps and price limits change your stop fills?
A stop order is a trigger, not a price promise, so in a gap it fills at the first available price, which can be far beyond the stop. Slippage is the difference between the price your backtest assumes and the price you would actually get. In a sharp fall it can be many times the normal amount.
Hypothetical example
You hold one long TAIEX futures contract (TX). The prior session closed at 20,000 and your stop sits at 19,900, a planned risk of 100 points. After a bad night, the market opens at 19,500. Your stop triggers at the open and fills near 19,500, a loss of 500 points. At NT$200 per index point, the planned loss was NT$20,000 and the real loss is NT$100,000, before commission and any further slippage.
Check how your backtester handles that bar. If it fills the stop at the stop price because the bar's range "touched" that price, the crash window looks far better than reality. A realistic rule fills a stop at the open whenever the open is already beyond the stop. Next-bar execution matters here too. A strategy that decides at a bar's close and fills on the next bar's open can face a much worse next open during a crash.
Price limits add a second effect. A price limit is the furthest a contract may trade from a reference price in one day. For TX, the daily limit is 10% above or below the previous day's settlement price. At the limit, trades can still happen at the limit price, but no order fills beyond it. If many traders want to sell at the limit, an exit may fill late or not at all in that session. Backtest data shows only the trades that happened, so it cannot show the exits that never filled. As a stress test, rerun the crash windows with double or triple your normal slippage and see whether the strategy's worst window becomes one you could not survive.
How deep is the drawdown, and how long is the losing streak inside a crash?
Measure each crash window on its own and compare it with the full history, because crashes compress months of normal losses into days. Drawdown is the fall in account equity from its highest point to a later low. A consecutive-loss streak is the number of losing trades in a row. Both get worse in crashes because the same condition repeats day after day.
| Measure | Compare it with | Sign of a problem |
|---|---|---|
| Maximum drawdown in the window | Maximum drawdown of the full history | One short window produces most of the worst drawdown |
| Days from peak to low | Typical length of drawdowns elsewhere | The same loss arrives in days instead of months |
| Longest losing streak | Longest streak outside crash windows | The streak is much longer inside the windows |
| Average loss vs planned stop | The stop distance in your rules | Average loss is well above the stop distance (gap fills) |
| Time to recover | How long you would keep trading through a loss | Recovery takes longer than you would wait in real life |
Hypothetical example
Over ten years, a strategy's worst drawdown is 600 points per contract. One crash window alone produces a 450-point drawdown within eight trading days. On TX at NT$200 per point, that is NT$90,000 per contract in under two weeks. If you size positions as if drawdowns arrive slowly, this window is the one that sets your real position size.
Size from the crash windows, not from the average month. Exchanges also tend to raise margin requirements when volatility rises, so the account needs room for both the loss and a higher margin at the same time.
Why can a few crashes not prove a strategy is crash-proof?
A long history contains only a few sharp falls, and each one had a different cause and shape, so a strategy's record across them is mostly a small sample. Flip a fair coin five times: four or more heads happens about one time in five. A strategy that did well in four of five crashes may have done so by chance.
The bigger risk is selection. If you generate many variants and keep the one with the best crash record, you are fitting rules to a handful of events. Research on backtest overfitting shows that the more variants you try, the easier it becomes to find one that looks excellent in the past and fails afterwards (Bailey et al., 2014). The article on why the best backtest is usually inflated explains the mechanism.
Pair the crash check with tests that use far more data. Walk-forward analysis and the Basic, Standard and Extensive checks in strategy validation judge the whole history, while the crash windows tell you whether the worst parts are survivable.
In what order should you run a crash stress test?
Run the stress test after normal validation, in a fixed order, so that you do not adjust the strategy to the result:
- Validate the strategy on the full history with fees, slippage and next-bar execution.
- Mark crash windows with a fixed rule, before you look at the strategy's results inside them.
- Split long and short results, and run the exclusion test on each side.
- Rerun the windows with gap fills at the open and with double or triple slippage.
- Record drawdown, losing streak and recovery time per window.
- Decide pass or fail from position size and survival. Do not change parameters to improve the crash result.
What this means if you use AlphaPrime: keep costs and next-bar execution in every run, then read the long and short analysis and the drawdown in the Performance Report for the months that contain past selloffs. Strategies that pass validation but have an unsurvivable crash window can be set aside in the databank rather than tuned until the crash looks better.
Frequently asked questions
Do short strategies make money when 台指期 crashes?
Short strategies often gain during the fall itself, but many lose part of it in the sharp rebounds that follow. Check whether the short side still makes sense with the largest crash windows removed. If it does not, its record depends on a few rare events.
How do I backtest a stop loss through a gap?
Fill the stop at the bar's open whenever the open is already beyond the stop price, not at the stop price itself. Then rerun the crash periods with higher slippage. The gap between planned stop distance and actual average loss shows how much gaps cost the strategy.
How many crash periods do I need to test a strategy?
Test every crash window your data contains, marked by a fixed rule, but expect only a few. That is too small a sample to prove a strategy handles crashes well. Use the windows to check whether the worst loss is survivable, and rely on full-history validation for the rest.
Should I add a crash filter to my TAIEX futures strategy?
A crash filter is a rule like any other, so test it on the full history and with walk-forward analysis, not only on the crashes it was designed for. A filter tuned to two or three past events usually fits those events and little else. Keep it only if it helps without being tuned to specific dates.
References
- Bailey, D. H., Borwein, J., López de Prado, M., & Zhu, Q. J. (2014). Pseudo-Mathematics and Financial Charlatanism: The Effects of Backtest Overfitting on Out-of-Sample Performance. Notices of the American Mathematical Society, 61(5), 458–471.
What AlphaPrime does here
The Performance Report shows equity, drawdown, trades, periodic performance and long and short analysis for each strategy. Strategy validation adds walk-forward analysis and Basic, Standard and Extensive checks with custom thresholds.

