กลยุทธ์
การกลับเข้าสู่ค่าเฉลี่ยด้วยแถบความผันผวนในภาวะตลาดแกว่งในกรอบ แบบซื้อและขาย (ตราสารเดียว ETHUSDT Binance USD-M, แท่ง 1H, สวนเมื่อราคาเบี่ยงเบนยืดออก ONLY เมื่อฟิลเตอร์แนวโน้มยืนยันว่าไร้แนวโน้ม — วิธีแก้ที่บันทึกไว้สำหรับปัญหาการกลับตัวล้มเหลวในสินทรัพย์หลักที่มีแนวโน้ม มีพารามิเตอร์น้อย)
ผลลัพธ์: ยกเลิก
EthRangingRegimeVolBandMeanReversionLS1H
สรุปผลลัพธ์
กลยุทธ์นี้ตั้งใจช่วยการกลับเข้าสู่ค่าเฉลี่ยรายชั่วโมง ETH ให้พ้นจากข้อค้นพบที่โรงงานยืนยันซ้ำหลายครั้งว่าการกลับตัวระยะสั้นล้มเหลวในสินทรัพย์หลักที่มีสภาพคล่อง โดยใช้ฟิลเตอร์ภาวะตลาดแบบเข้มงวด ADX เพื่อสวนการเคลื่อนไหวเกินค่า z-score เฉพาะในตลาดที่แกว่งในกรอบ เมื่อทดสอบย้อนหลังกับการซื้อขาย 1,388 ครั้งและข้อมูลมากกว่า 6 ปี การสวนที่ผ่านฟิลเตอร์ขาดทุนทุกปีและทุกภาวะตลาด — ผลตอบแทนรวม -85.7%, Sharpe -1.94 โดยช่วงความเชื่อมั่นติดลบทั้งหมด, profit factor 0.72 และค่าคาดหวัง -$60.76 ต่อการซื้อขาย — พร้อมรูปแบบผลตอบแทนกลับด้านแบบกำไรเป้าหมายเล็ก/จุดตัดขาดทุนใหญ่ที่สมมติฐานอ้างว่าหลีกเลี่ยง เนื่องจากการนำไปใช้สะอาดและผลลัพธ์เชิงลบชัดเจนในตัวอย่างขนาดใหญ่ที่มีนัยสำคัญทางสถิติ นักวิเคราะห์จึงยุติกลยุทธ์ที่ด่านทบทวนผลการทดสอบย้อนหลัง ก่อนการปรับให้เหมาะสม แทนที่จะใช้เวลาหลายชั่วโมงปรับให้เข้ากับสัญญาณรบกวน กลยุทธ์ไม่ผ่านด่านนั้นไปได้: ไม่มีการปรับให้เหมาะสม ไม่มีการวิเคราะห์หลังการปรับให้เหมาะสม และไม่มีการทบทวนความเสี่ยง ผลลัพธ์นี้ยืนยันอย่างชัดเจนอีกครั้งว่าการสวนโดยใช้ฟิลเตอร์ ADX ในคริปโตหลักที่มีสภาพคล่องไม่สามารถให้ความได้เปรียบเชิงบวกที่ใช้ได้ทั่วไป.
สมมติฐาน
การแก้ไขรอบ 3 สำหรับปัญหาเกินขีดจำกัดเวลาจริงของชั้น -3: เวอร์ชันก่อนหน้าสร้างอาร์เรย์ numpy ใหม่จากประวัติแท่ง ENTIRE ที่เพิ่มขึ้นเรื่อยๆ และวนลูป Python ADX กับข้อมูลทั้งหมดนั้นในทุกแท่ง ทำให้ต้นทุนรวมเป็น O(n^2) ซึ่งเกินขีดจำกัด 300 วินาทีของการทดสอบควันบนข้อมูล 1H หลายปี วิธีแก้เฉพาะจุดที่เล็กที่สุดคือหั่น self._bars ให้เหลือข้อมูลส่วนท้ายความยาวคงที่ (self._calc_window = max(band_period, 5*adx_period)+10 = 80 แท่ง) ก่อนสร้างอาร์เรย์ ทำให้งานต่อแท่งเป็น O(1) และต้นทุนรวมเป็น O(n) ตรรกะสัญญาณ/เข้า/ออก/กำหนดขนาดสถานะเหมือนกับโค้ดที่ผ่านชั้น 1-2 ก่อนหน้านี้ทุกไบต์ จึงไม่มีการตรวจสอบก่อนหน้าถอยหลัง หน้าต่างนี้ครอบคลุมช่วงอุ่นเครื่อง Wilder ADX (2*adx_period+1) และคาบของแถบ SMA ได้อย่างเพียงพอ.
การนำไปใช้
กลยุทธ์กลับเข้าสู่ค่าเฉลี่ยแบบซื้อและขาย 1H บนสัญญา perpetual ETHUSDT USD-M สวนเมื่อค่า z-score เบี่ยงเบนยืดออกจากแถบ 24 SMA แท่ง แต่ ONLY เมื่อ ADX(14) < 25 (ภาวะไร้แนวโน้มหรือแกว่งในกรอบ) คงสถานะว่างในภาวะที่มีแนวโน้ม และออกจากสถานะหากแนวโน้มเริ่มขึ้นระหว่างการซื้อขาย ใช้จุดออกจากสถานะขาดทุนและเมื่อกลับสู่ค่าเฉลี่ย จำกัดการคำนวณต่อแท่งให้อยู่ในหน้าต่างข้อมูลล่าสุดที่มีความยาวคงที่ เพื่อให้การทดสอบย้อนหลังใช้เวลา O(n).
ผลการตรวจสอบ
การตรวจสอบไม่ผ่าน (ชั้น 3 — แบ็กเทสต์ในแซนด์บ็อกซ์): การทดสอบเบื้องต้นใช้เวลาเกินขีดจำกัด 300 วินาที ซึ่งเกือบทุกครั้งหมายถึงมีงานต่อแท่งที่เพิ่มตามความยาวประวัติ เช่น สแกนชุดข้อมูล funding/ข้อมูลเสริมทั้งหมดซ้ำ หรือสร้างลิสต์ใหม่แล้วเรียก min()/sorted() ภายใน calculate_signal()/on_bar() ทุกแท่ง ให้คำนวณอาร์เรย์ timestamp ที่เรียงลำดับไว้ล่วงหน้า ONCE ใน __init__ แล้วใช้ bisect หรือแคชผลค้นหาโดยใช้ timestamp เป็นคีย์ เพื่อให้ต้นทุนต่อแท่งเป็น O(log n) แทน O(n)
ทบทวนผลทดสอบย้อนหลัง
- Sharpe
- -1.94
- ผลตอบแทนรวม
- -85.70%
- การถอยของทุนสูงสุด
- 86.79%
- จำนวนเทรดทั้งหมด
- 1388
- อัตราชนะ
- 52.9%
- ตัวคูณกำไร
- 0.72
การนำไปใช้สะอาดและตรงตามสมมติฐาน: ตัวกรองภาวะตลาด ADX, การสวนค่า z-score และตรรกะจุดตัดขาดทุน/ออกจากสถานะ ล้วนถ่ายทอดสมมติฐานที่ระบุไว้อย่างถูกต้อง (ไม่มีอาร์ติแฟกต์ ไม่มีข้อผิดพลาดทางบัญชี ความผันผวน 20.6% อยู่ในระดับสมเหตุสมผล และไม่มีวันที่เป็นไปไม่ได้).
ตัวอย่างและโครงสร้างพื้นฐานมีความน่าเชื่อถือ: การซื้อขาย 1,388 ครั้งตลอดกว่า 6 ปี จำนวนการซื้อขายสูง ใช้ตราสารที่มีสภาพคล่องเพียงตัวเดียว ต้นทุนต่อแท่ง O(1) — การทดสอบย้อนหลังเองเชื่อถือได้.
ผลลัพธ์เชิงลบให้ข้อมูลในตัวเอง: ยืนยันอย่างชัดเจนด้วยตัวอย่างขนาดใหญ่ที่มีนัยสำคัญทางสถิติว่าไม่มีการกลับตัวในสินทรัพย์หลัก.
มีความได้เปรียบติดลบอย่างสม่ำเสมอตลอด EVERY ปี (2020 -13%, 2021 -52%, 2022 -32%, 2023 -2.8%, 2024 -5.8%, 2025 -25.6%, 2026 -18.4%) และทุกภาวะตลาด — total_return -85.7%, max_drawdown 86.8%.
ตัวชี้วัดผลตอบแทนต่อความเสี่ยงติดลบอย่างมากและไม่มีความกำกวม: Sharpe -1.94 (ช่วงความเชื่อมั่นทั้งหมดเป็นลบ CI, ci_high -1.14), Sortino -2.46, PSR 0.0, profit_factor 0.72, information_ratio -1.01, ค่าคาดหวัง -$60.76/การซื้อขาย จากการซื้อขาย 1,388 ครั้ง.
รูปแบบผลตอบแทนกลับด้านตามที่สมมติฐานอ้างว่าหลีกเลี่ยง: exit_z=0.3 (กำไรน้อยมาก) เทียบกับจุดตัดขาดทุน 4% ให้ค่า avg_win $290 < avg_loss $455 เมื่ออัตราชนะอยู่ที่ 53%; ค่าคอมมิชชันกินกำไรขั้นต้นไป 16% — แต่แม้รูปแบบผลตอบแทนจะถูกต้อง ก็ช่วยสัญญาณที่ไม่มีความได้เปรียบเชิงพยากรณ์ตลอด 6 ปีไม่ได้.
ประวัติรอบทดสอบ
การตรวจสอบไม่ผ่าน (ชั้น 2 — สถานการณ์สังเคราะห์): พารามิเตอร์ที่ใช้: ['exit_z', 'entry_z', 'risk_frac', 'adx_period', 'band_period', 'min_notional', 'adx_threshold', 'stop_loss_pct'] ตรวจสอบว่า __init__ กำหนดแอตทริบิวต์ทั้งหมดจาก self.parameters.get() หรือไม่ - steady_uptrend: TypeError: เรียกใช้ 'float' ไม่ได้ (timestamp ของแท่ง: 1735691580000) - steady_downtrend: TypeError: เรียกใช้ 'float' ไม่ได้ (timestamp ของแท่ง: 1735691580000) - flat_ranging: TypeError: เรียกใช้ 'float' ไม่ได้ (timestamp ของแท่ง: 1735691580000) - volatility_spike: TypeError: เรียกใช้ 'float' ไม่ได้ (timestamp ของแท่ง: 1735691580000) - zero_volume: TypeError: เรียกใช้ 'float' ไม่ได้ (timestamp ของแท่ง: 1735691580000) - price_gap: TypeError: เรียกใช้ 'float' ไม่ได้ (timestamp ของแท่ง: 1735691580000)
สรุปผลลัพธ์
การกลับตัวระยะสั้นไม่มีความได้เปรียบเชิงบวกในคริปโตหลักที่มีสภาพคล่อง แม้จำกัดการทำงานไว้ในภาวะตลาดไร้แนวโน้ม ADX ดังนั้นการสวนเมื่อราคาเคลื่อนไหวเกินระดับปกติบน ETH ก็ยังขาดทุนในทุกปีและทุกภาวะตลาด.
นักวิเคราะห์ตัดสินให้ ‘ยุติ’ ที่ด่าน BACKTEST_REVIEW ก่อนการปรับให้เหมาะสม โดยวินิจฉัยว่าเป็นข้อสมมติพื้นฐานที่ใช้ไม่ได้โดยสิ้นเชิง ไม่ใช่บั๊กที่แก้ได้; โค้ดนำสมมติฐานมาใช้ได้ตรงตามที่ระบุและการทดสอบย้อนหลังสะอาดน่าเชื่อถือ จึงไม่มีข้อบกพร่องให้แก้และไม่มีพารามิเตอร์ที่ยังไม่ปรับให้เครื่องมือเพิ่มประสิทธิภาพค้นพบ กลยุทธ์ไม่ได้เข้าสู่ขั้นปรับให้เหมาะสม การทบทวนโดยนักวิเคราะห์ในขั้นถัดไป หรือการทบทวนความเสี่ยง
กลยุทธ์กลับสู่ค่าเฉลี่ยแบบลองก์-ชอร์ต 1H บน ETHUSDT Binance USD-M perp ซึ่งสวนทางกับค่า z-score ที่เบี่ยงเบนมากจากค่าเฉลี่ยระยะสั้น SMA แต่ทำเฉพาะเมื่อฟิลเตอร์แนวโน้ม ADX (ADX<25) ยืนยันภาวะไร้แนวโน้มหรือตลาดแกว่งตัว โดยคงสถานะว่างระหว่างแนวโน้มเพื่อหลีกเลี่ยงการสวนโมเมนตัม
จากการเทรดกว่า 1,388 ครั้งในช่วงมากกว่า 6 ปี (2019-2026) กลยุทธ์ขาดทุนอย่างชัดเจน: ผลตอบแทนรวม -85.7%, Sharpe -1.94 (ทั้งช่วง CI ติดลบ, ci_high -1.14), profit factor 0.72, ค่าคาดหวัง -$60.76/เทรด และดรอดาวน์สูงสุด 86.8% ที่อัตราชนะ 52.9% กลยุทธ์มีผลติดลบทุกปีและทุกภาวะตลาด โดยมีโครงสร้างผลตอบแทนกลับด้าน (กำไรเฉลี่ย $290 < ขาดทุนเฉลี่ย $455) และค่าคอมมิชชันกินกำไรขั้นต้นราว 16%
Stratmill เป็นเครื่องมือสำหรับการวิจัยและ paper trading ไม่ใช่คำแนะนำทางการเงินหรือโบรกเกอร์ ผลการทดสอบย้อนหลังและ paper trading เป็นเพียงสมมติฐาน การเทรดมีความเสี่ยงที่จะขาดทุน