QuantProp. Analyze a trade file ↗
stockback / Experiment result

SWEEP — Turtle breakout + Bollinger squeeze filter across the full universe

Turtle + squeeze filter swept across 1,042 Korean stocks: the best variant beat the benchmark with only 0.33% market exposure.

Original record: 2026-09-10 · Migrated: 2026-10-27 · Translated from Korean: 2026-10-27
A historical record, not rerun in this migration.

The figures, hypotheses and verdicts of the time are preserved. A past positive result or candidate mention does not mean validated profitability today or a live-trading recommendation. Validation periods that were already used are not treated as new independent validation.

This is an English translation of a preserved Korean original. It describes conditions at the time of writing, not current provider specifications, costs or regulations.

SWEEP — Turtle breakout + Bollinger squeeze filter across the full universe

  • Run date: 2026-09-10
  • Design: turtle_squeeze (Turtle breakout + Bollinger squeeze filter)
  • Universe: all 1042 eligible symbols (passed the EXP-011 coverage and quality gates)
  • Ledger (full): data/derived/sweeps/turtle_squeeze/symbols/ — not tracked in Git
  • Ledger (summary): reports/ledgers/SWEEP-turtle_squeeze-primary.csv

| generated_at | 2026-09-10T00:00:00+09:00 |

Execution model v1. This sweep ran on the engine before the 2026-09-10 execution audit (D-033) fix. For the impact on the fixed engine (v2), see 2. Until rerun, this table is a v1 result.

How to read this

This document is a cross-sectional observation, not a verdict. A 1,000-symbol cross-section always contains cells that look good in either direction, so individual symbol figures are not quoted; only medians and positive shares are used. Promotion verdicts are made only in preregistered basket experiments.

The 1st cell was fixed in advance: locked_oos × normalized_actual_proxy × research_unhalted.

Cross-section by variant

VariantSymbolsTotal tradesMarket exposureMedian CAGRMedian MDDMedian excess CAGRShare with positive CAGRShare beating benchmarkContaminated cells
turtle_only-atr1.0104285218.33%-4.36%-30.97%0.62%25.53%51.06%0
turtle_only-atr1.51042724611.28%-4.82%-34.04%-0.13%26.97%49.52%0
turtle_only-atr2.01042648713.89%-5.08%-35.97%-0.60%28.89%48.85%0
turtle_squeeze_125-atr1.0104215780.33%-0.74%-5.01%4.33%11.80%59.12%0
turtle_squeeze_125-atr1.5104215210.67%-0.88%-7.51%3.83%14.11%58.16%0
turtle_squeeze_125-atr2.0104214651.11%-0.83%-9.30%3.72%16.89%58.35%0
turtle_squeeze_250-atr1.0104215730.33%-0.78%-4.99%4.35%11.52%58.73%0
turtle_squeeze_250-atr1.5104215220.78%-1.01%-7.46%3.95%13.44%58.16%0
turtle_squeeze_250-atr2.0104214641.22%-1.09%-9.26%3.79%16.79%58.54%0
turtle_squeeze_60-atr1.0104215960.33%-0.78%-5.86%4.01%11.04%58.35%0
turtle_squeeze_60-atr1.5104215320.67%-0.98%-8.63%3.70%14.01%57.97%0
turtle_squeeze_60-atr2.0104214771.22%-0.87%-10.38%3.70%16.89%57.97%0

Market exposure is the share of trading days in the period when a position was actually held. When it is low, beating the benchmark may mean non-participation, not excess return, so it must always be read together with excess CAGR.

Breakdown by liquidity bucket (turtle_squeeze_250-atr1.0)

The eligible list is sorted by trading value in the train period. The top bucket is large caps.

Liquidity rankSymbolsMedian strategy CAGRMedian benchmark CAGRMedian excessShare that won
1~100100-0.79%7.63%-7.26%32.00%
101~300200-0.85%-4.87%3.70%58.00%
301~600300-0.87%-7.50%6.46%63.00%
601~442-0.65%-5.50%5.10%62.22%

This table reveals two things: whether the overall figure comes only from a particular size bucket, and that if a sweep is only partly run and then aggregated, only the most liquid symbols are included and the cross-section is biased.

Excess CAGR is relative to buy-and-hold over the same period, same bars and same one-way commission. If the Share beating benchmark is below 50%, the variant did worse than simply holding on more than half of the symbols.

Variant that beat the benchmark on the median: turtle_squeeze_250-atr1.0 (4.35%). However, this variant's own median CAGR is -0.78% and its market exposure only 0.33%. It beat the benchmark not by creating excess return but because it stood aside in cash for most of the declines. This is low participation, not a strategy edge, and it is not grounds for promotion.

Frictionless diagnostic line

Results with commissions, taxes and slippage all set to 0. If negative even here, cost normalization cannot revive it.

VariantMedian frictionless CAGRMedian actual-assumption CAGR
turtle_only-atr1.0-3.98%-4.36%
turtle_only-atr1.5-4.51%-4.82%
turtle_only-atr2.0-4.74%-5.08%
turtle_squeeze_125-atr1.0-0.69%-0.74%
turtle_squeeze_125-atr1.5-0.81%-0.88%
turtle_squeeze_125-atr2.0-0.76%-0.83%
turtle_squeeze_250-atr1.0-0.72%-0.78%
turtle_squeeze_250-atr1.5-0.95%-1.01%
turtle_squeeze_250-atr2.0-1.03%-1.09%
turtle_squeeze_60-atr1.0-0.71%-0.78%
turtle_squeeze_60-atr1.5-0.91%-0.98%
turtle_squeeze_60-atr2.0-0.81%-0.87%

Interpretation limits

  • The snapshot is the listing as of 2026-08-26. Symbols delisted before then are absent, so survivorship bias remains, and the bias makes results look better than reality.
  • The eligible universe is symbols listed before 2010 that passed quality checks, so it is skewed toward large, long-lived names.
  • It is a collection of single-symbol backtests run as independent accounts. It is not a portfolio — cross-symbol correlation, concurrent holding limits and capital allocation are not reflected.
  • The sweep runs in liquidity order, so interim aggregates are biased toward large caps. Read only after completion.
  • None of the figures in this document is grounds for strategy promotion.

Source and migration evidence

Source: reports/experiments/SWEEP-turtle_squeeze.md

Original SHA-256: 07fe870da6233c49637ca3a04fa9ddb76a233a83388f035bfa1a3822c890851e

Raw data and account information are not part of the public package. The original results do not replace statistical or scientific revalidation. The English text is a translation; numbers, tables and charts are carried over unchanged.