ข้ามไปยังเนื้อหา

การทดสอบย้อนหลังและการตรวจสอบความถูกต้อง

ทดสอบไอเดีย ตรวจสอบหลักฐาน

โรงงานทดสอบโค้ดกลยุทธ์กับข้อมูลในอดีต โดยใช้ค่าธรรมเนียมและสมมติฐานการดำเนินการที่กำหนดไว้ เครื่องมือเพิ่มประสิทธิภาพจะตรวจสอบความเสถียรของพารามิเตอร์ ขณะที่นักวิเคราะห์ AI จะประเมินหลักฐานและแนะนำขั้นตอนถัดไป

เส้นทางกลยุทธ์ในอดีตตลอดช่วงเวลาการตรวจสอบความถูกต้อง พร้อมด้วย drawdown และการกระจายตัวของผลลัพธ์

ดูโรงงานสร้างกลยุทธ์ขณะทำงานจริง

ตัวอย่างประกอบ · ไม่ใช่ผลลัพธ์จริง

ชมเอเจนต์ AI สร้างและตรวจทานกลยุทธ์

เอเจนต์ AI พัฒนาแนวคิด เขียนโค้ด และประเมินผลการทดสอบ ผลการตรวจทานอาจส่งกลยุทธ์กลับไปปรับปรุงอีกครั้ง

  1. อธิบาย
  2. สร้างและตรวจสอบ
  3. แบ็กเทสต์
  4. ทดสอบความทนทาน
  5. เทรดกระดาษ
01

จำลองสภาวะการเทรด

การทดสอบย้อนหลังใช้ข้อมูลในอดีต ค่าธรรมเนียมของเวนิวที่กำหนดไว้ และสมมติฐานการดำเนินคำสั่งที่เกี่ยวข้อง ความครอบคลุมของข้อมูล อัตราเงินทุน (funding) การเลื่อนราคา (slippage) และผลกระทบต่อตลาด (impact) สามารถเปลี่ยนแปลงผลลัพธ์ได้อย่างมีนัยสำคัญ

02

ตรวจสอบมากกว่าแค่ผลตอบแทน

อ่านกราฟส่วนของผู้ถือหุ้น (equity curve) drawdown การกระจายตัวของผลตอบแทน และรายการเทรดแต่ละรายการ ตรวจสอบช่วงเวลา ขนาดตัวอย่าง และสมมติฐานควบคู่ไปกับตัวชี้วัดหลัก

03

ทดสอบความทนทาน

การวิเคราะห์ความอ่อนไหว (sensitivity analysis) การหาค่าที่เหมาะสมแบบ walk-forward และการตรวจสอบด้วยชุดข้อมูลสำรอง (holdout) จะตรวจดูว่าผลลัพธ์เปลี่ยนแปลงอย่างไรนอกเหนือจากพารามิเตอร์และช่วงเวลาฝึกฝนที่เลือกไว้

เก็บสมมติฐานไว้เคียงข้างกับผลลัพธ์เสมอ

กราฟที่ดูน่าประทับใจเป็นเพียงจุดเริ่มต้นของการทบทวน เปรียบเทียบต้นทุนการเทรดกับความได้เปรียบที่คาดหวัง ตรวจสอบพฤติกรรมนอกช่วงตัวอย่าง (out-of-sample) และสังเกตว่ามีความกระจุกตัวอยู่ในเทรดหรือช่วงเวลาจำนวนน้อยหรือไม่

  1. ข้อมูลนำเข้า

    ช่วงเวลาข้อมูล เวนิว ค่าธรรมเนียม

  2. การทดสอบ

    การทดสอบย้อนหลัง walk-forward การตรวจสอบด้วยชุดข้อมูลสำรอง

  3. หลักฐาน

    ตัวชี้วัด รายการเทรด บันทึกการทบทวน

ให้ข้อมูลในภายหลังท้าทายการตัดสินใจก่อนหน้า

การทดสอบแบบเดินหน้า (Walk-forward) จะปรับให้เหมาะสมกับช่วงเวลาก่อนหน้า แล้วประเมินผลกับช่วงเวลาถัดไป ชุดข้อมูลสำรองที่กันไว้จะถูกเก็บไว้นอกช่วงเวลาที่ใช้ปรับค่าพารามิเตอร์

อ่านวันที่แบ่งชุดข้อมูลจริงและจำนวนการเทรดจริง การนำผลตอบรับจากชุดข้อมูลสำรองมาใช้ซ้ำหลายครั้งอาจลดทอนความเป็นอิสระของมัน

ปรับให้เหมาะสมตรวจสอบความถูกต้องชุดข้อมูลสำรอง (Holdout)
แผนภาพ: หน้าต่างการปรับค่าและตรวจสอบสามช่วงเคลื่อนไปข้างหน้าตามเวลา ชุดข้อมูลสำรองยังคงถูกกันไว้ทางด้านขวา ความยาวของหน้าต่างและช่วงห่างขึ้นอยู่กับการตั้งค่า

ต้นทุนเล็กน้อยสามารถกัดกินความได้เปรียบขนาดใหญ่ได้

ยิ่งกลยุทธ์เทรดมากเท่าไร ผลลัพธ์ก็ยิ่งขึ้นอยู่กับสมมติฐานด้านการดำเนินการมากเท่านั้น ปรับตัวควบคุมค่าสลิปเพจเพื่อดูผลตอบแทนขั้นต้นเดียวกันภายใต้ต้นทุนที่แตกต่างกัน

อัตราการหมุนเวียน
มูลค่าการซื้อขายรวมเทียบกับเงินทุนเริ่มต้น นับทุกการซื้อและขาย
ค่าธรรมเนียมและสลิปเพจ
ตรวจสอบค่าธรรมเนียมของตลาดที่ตั้งค่าไว้และสมมติฐานด้านราคาในรายงานจริง
ผลลัพธ์สุทธิ
เปรียบเทียบความได้เปรียบที่เหลืออยู่กับภาวะขาดทุนสูงสุด ขนาดตัวอย่าง และผลลัพธ์นอกช่วงตัวอย่าง

ดูว่าต้นทุนการดำเนินการเปลี่ยนแปลงผลลัพธ์อย่างไร

ผลตอบแทนขั้นต้น12.0%
ต้นทุนตามแบบจำลอง2.0%
ผลตอบแทนสุทธิหลังหักต้นทุนเหล่านี้10.0%

สมมติฐานตัวอย่าง: ผลตอบแทนขั้นต้น 12% มูลค่าซื้อขายสะสมเท่ากับ 40 เท่าของเงินทุนเริ่มต้น และค่าธรรมเนียม 2 bps ต่อมูลค่าที่ซื้อขาย ต้นทุน = อัตราการหมุนเวียน × (ค่าธรรมเนียม + สลิปเพจ); 1 bp = 0.01% เป็นภาพประกอบเชิงเส้น ไม่รวมผลของการทบต้น เงินทุนสำหรับ funding และผลกระทบต่อตลาด

คำถามที่พบบ่อย

คำถามและคำตอบเพิ่มเติม
การทดสอบย้อนหลังที่ดีรับประกันผลตอบแทนในอนาคตหรือไม่?

ไม่รับประกัน การทดสอบย้อนหลังเป็นเพียงสมมติฐานและมีความอ่อนไหวต่อข้อมูล สมมติฐาน และการคัดเลือก การตรวจสอบความถูกต้องช่วยตรวจหาจุดอ่อน แต่ไม่ได้ขจัดความเสี่ยงในการเทรด

ค่าธรรมเนียมเป็นราคาจริงแบบเรียลไทม์สำหรับบัญชีของฉันหรือไม่?

ไม่ใช่ ค่าธรรมเนียมเหล่านี้เป็นค่าเริ่มต้นที่กำหนดไว้สำหรับการจำลอง ระดับสมาชิกในตลาดแลกเปลี่ยนและกฎของสินทรัพย์ของคุณอาจแตกต่างออกไป กรุณาตรวจสอบสมมติฐานก่อนตีความผลลัพธ์

การทดสอบแบบ walk-forward และการตรวจสอบแบบ holdout แตกต่างกันอย่างไร?

การทดสอบแบบ walk-forward จะปรับให้เข้ากับข้อมูลช่วงก่อนหน้าซ้ำๆ แล้วประเมินผลบนช่วงเวลาถัดมา การตรวจสอบแบบ holdout จะตรวจสอบพารามิเตอร์ที่เลือกไว้บนช่วงเวลาที่สงวนไว้นอกเหนือจากช่วงการปรับค่าเหล่านั้น ตรวจสอบวันที่จริง จำนวนการเทรด และรายงานต่างๆ เพราะการใช้ผลตอบรับจาก holdout ซ้ำๆ อาจลดทอนความเป็นอิสระของมันได้

ควรอ่านผลลัพธ์อะไรเพิ่มเติมนอกเหนือจากผลตอบแทนรวม?

ตรวจสอบการลดลงของมูลค่าพอร์ต (drawdown) ต้นทุนการเทรด จำนวนและการกระจายตัวของการเทรด ระยะเวลาการถือครองโพซิชัน และผลลัพธ์นอกช่วงตัวอย่าง (out-of-sample) มองหาความพึ่งพาการเทรดจำนวนน้อยหรือช่วงเวลาตลาดเพียงช่วงเดียว ผลตอบแทนที่สูงเพียงอย่างเดียวไม่ได้อธิบายว่ากลยุทธ์ทำกำไรได้อย่างไร หรือมีการขาดทุนระหว่างทางมากน้อยเพียงใด

เหตุใดจึงต้องทดสอบพารามิเตอร์ใกล้เคียงแทนที่จะเก็บค่าที่ดีที่สุดไว้?

ค่าที่ดูดีเยี่ยมในขณะที่ค่าใกล้เคียงกันให้ผลไม่ดี อาจเป็นค่าที่เปราะบาง การวิเคราะห์ความอ่อนไหว (sensitivity analysis) จะแสดงให้เห็นว่าผลลัพธ์เปลี่ยนแปลงอย่างไรรอบๆ พารามิเตอร์ที่เลือกไว้ ใช้ร่วมกับหลักฐานจาก walk-forward และ holdout เมื่อประเมินว่ารูปแบบดังกล่าวกว้างกว่าผลลัพธ์ที่เลือกมาเพียงหนึ่งเดียวหรือไม่

เหตุใดการทดสอบย้อนหลังสองครั้งของแนวคิดที่คล้ายกันจึงอาจให้ผลลัพธ์ไม่ตรงกัน?

ตราสาร ช่วงเวลาข้อมูล ช่วงเวลาแท่ง (bar interval) กฎการเข้าและออก ค่าธรรมเนียม หรือสมมติฐานการดำเนินการซื้อขายที่แตกต่างกัน สามารถเปลี่ยนแปลงผลลัพธ์ได้ ให้เปรียบเทียบการตั้งค่าและข้อมูลที่มีอยู่ควบคู่ไปกับบันทึกการเทรด ก่อนที่จะตีความความแตกต่างนั้นว่าเป็นการปรับปรุงให้ดีขึ้น

เริ่มต้นด้วยคำถามที่คุ้มค่าแก่การทดสอบ

สำรวจกลยุทธ์ที่เผยแพร่แล้ว หรือเปิดเวิร์กสเปซเพื่อสร้าง ทดสอบ และติดตามกลยุทธ์ของคุณเองด้วยเอเจนต์ AI

Stratmill คือแพลตฟอร์มกลยุทธ์การเทรดด้วย AI ไม่ใช่คำแนะนำทางการเงินหรือโบรกเกอร์ ผลการทดสอบย้อนหลังและการเทรดจำลองเป็นข้อมูลสมมติ การเทรดมีความเสี่ยงที่จะขาดทุน