ระบบ Contracting-Base Breakout ใช้กฎง่ายๆ: หุ้นต้องทำ Higher Low ก่อน Breakout นั่นคือ Gate การหดตัวเชิงโครงสร้าง
คำถามที่สมเหตุสมผล: ถ้าเพิ่ม ATR (Average True Range — ตัวชี้วัดความผันผวนรายวัน) เข้าไป จะทำให้ Filter ฉลาดขึ้นไหม? ATR ที่แคบลงก่อน Breakout น่าจะหมายความว่า Base เงียบขึ้น และน่าจะลด False Breakout ลง
เราเทสต์ 3 แบบกับข้อมูลไทยและ US คำตอบคือ: ไม่
สิ่งที่เราทดสอบ
ทดสอบที่ 1: Filter การหดตัวของ ATR
แบ่ง Breakout Trade ที่ผ่านเงื่อนไข RS≥80 + Confirmed Uptrend ออกตามระดับการหดตัวของ ATR ช่วง Base:
| ATR ณ วัน Breakout เทียบกับต้น Base | Median Net R | Win Rate |
|---|---|---|
| หดตัวแรง (<0.70×) | 0.335 | 37% |
| หดตัวปานกลาง (0.70–0.90×) | 0.314 | 40% |
| ทรงตัว (0.90–1.10×) | 0.244 | 42% |
| ขยายตัว (>1.10×) | 0.442 | 40% |
ช่วง Confidence Interval ระหว่างกลุ่มหดตัว (<0.90) กับทรงตัว/ขยาย (≥0.90) ทับกันสมบูรณ์ ไม่มีความแตกต่างที่แท้จริง กลุ่มขยายตัวให้ Net R สูงที่สุดด้วยซ้ำ
เหตุผล: Detector Higher-Low กำหนดให้ Swing Low ต้องหดตัวอยู่แล้ว การหดตัวของ ATR ถูก Embed เชิงโครงสร้างไว้แล้ว การเพิ่ม Gate ATR จึงซ้ำซ้อน — มันกรองสิ่งที่ระบบกรองอยู่แล้ว
ทดสอบที่ 2: Stop แบบ ATR กับ Stop เชิงโครงสร้าง
เปรียบเทียบ Stop เชิงโครงสร้างปัจจุบัน (Higher Low หรือ 7% Hard Cap) กับ Stop แบบ ATR (Entry ลบ 2.5×ATR):
| Stop โครงสร้าง | Stop ATR | |
|---|---|---|
| RS≥80 | 0.237 Net R | 0.236 Net R |
| RS≥80 + Confirmed Uptrend | 0.350 Net R | 0.352 Net R |
เสมอกันทั้งสองเงื่อนไข Stop เชิงโครงสร้างให้ผลใกล้เคียงกับ Stop ที่ปรับตามความผันผวน ไม่มีเหตุผลต้องเปลี่ยน
ทดสอบที่ 3: ระดับ ATR เป็น Filter
การเลือกเทรดเฉพาะหุ้น High-Vol หรือ Low-Vol ช่วยปรับปรุงผลไหม?
| หุ้นไทย (RS≥80 + CU): | ||
|---|---|---|
| ----------- | ------- | --------- |
| Low-vol (<3%) | 0.276 | 42% |
| Mid-vol (3–5%) | 0.336 | 41% |
| High-vol (>5%) | 0.661 | 29% |
หุ้นไทย High-Vol ให้ Net R สูงสุด แต่ Win Rate ร่วงลงเหลือ 29% นี่คือลักษณะ Fat Right Tail: กำไรใหญ่หายาก แต่ดึง Mean ขึ้น ขณะที่ Trade ส่วนใหญ่โดน Stop n=66 ในกลุ่ม High-Vol — น้อยเกินไปจะใช้เป็น Production Filter
การพลิกกลับข้ามตลาด
สิ่งที่น่าสนใจกว่าคือผลจากการรันบน US:
| หุ้น US (RS≥80 + CU): | |
|---|---|
| ----------- | ------- |
| Low-vol (<3%) | 0.157 |
| Mid-vol (3–5%) | 0.091 |
| High-vol (>5%) | 0.063 |
US พลิกกลับจากไทยสมบูรณ์ ใน US หุ้น Low-Vol ที่เสถียรคือตัวพาผลลัพธ์ ในไทยหุ้น High-Vol Momentum คือตัวพา Fat Right Tail
สอดคล้องกับรูปแบบที่กว้างขึ้น: US มีประสิทธิภาพสูงกว่า การสะสมของสถาบันอย่างเงียบๆ ก่อน Breakout (ATR ต่ำ = Base แน่น = สถาบันดูดซับ) คือสัญญาณที่แท้จริง ตลาดไทยมีนักลงทุนรายย่อยมากกว่าและ Liquidity บางกว่า Edge จึงอยู่ที่หุ้นที่ระเบิดออกมาแบบกะทันหัน
การพลิกกลับนี้เป็น Insight ข้ามตลาดที่แท้จริง แต่เป็น การสังเกตลักษณะตลาด ไม่ใช่ Filter ที่นำไปใช้ได้ Sample Size ในแต่ละ Bucket ATR เล็กเกินไป และผลพลิกกลับตามตลาด — ทำให้ใช้แบบ Universal ไม่ได้
บทสรุป
ATR ไม่ปรับปรุง Contracting-Base Breakout ในทั้งสองตลาด: - Filter การหดตัว: ถูก Capture เชิงโครงสร้างโดย Higher-Low Detector อยู่แล้ว - ATR Stop: เทียบเท่า Structural Stop - ระดับ ATR: พลิกกลับตามตลาด Sample เล็กเกินสำหรับ Production
ระบบยังคงเรียบง่าย: การหดตัวเชิงโครงสร้าง Higher-Low, Structural Stop, RS≥80 + Regime Gate การเพิ่ม ATR = ความซับซ้อนที่ไม่ได้ผลลัพธ์เพิ่มเติม
ตาม Focus Principle: กฎน้อยข้อที่ทดสอบอย่างละเอียดดีกว่ากฎมากข้อที่ซ้อนกันหลวมๆ ถ้าเครื่องมือไม่เพิ่ม Signal ที่ยังไม่มีอยู่ — อย่าใส่เข้าไป
ผลต่อ Scanner
ไม่มีอะไรเปลี่ยนแปลงใน Production scan_contracting_breakouts.py ยังใช้:
- Higher-Low Structural Detection
- Entry − (Higher Low) เป็น Base Stop
- 7% Hard Cap เป็นเพดาน
ไม่มี ATR Layer การทดสอบยืนยันว่าถูกต้องแล้ว
สำหรับภาพรวมตัวกรองอื่นอีกสามตัวที่ล้มเหลวการทดสอบแบบเดียวกัน — รวมถึง ATR-based sizing, Volume Dry-up, และการซ้อนตัวกรอง — ดูที่ [สามตัวกรองที่ดูฉลาด แต่ล้มเหลวในการทดสอบ](/articles/three-filters-that-failed.html)
Backtest: ตลาดหุ้นไทย ปี 1990–2026 + US ปี 2005–2026, เงื่อนไข RS≥80 + Confirmed Uptrend Structural Stop = Higher Low ใน Base หรือ Hard Cap 7% แล้วแต่อะไรแคบกว่า n ต่อ ATR Bucket ไม่เท่ากัน (ไทย High-vol n=66, US High-vol n=88) เสร็จสิ้น 2026-06-09