Backtesting เป็นองค์ประกอบสำคัญของการพัฒนาระบบการซื้อขายที่มีประสิทธิภาพ ทำได้โดยการสร้างข้อมูลการค้าที่จะเกิดขึ้นในอดีตโดยใช้กฎที่กำหนดโดยกลยุทธ์ที่กำหนด ผลลัพธ์เสนอสถิติเพื่อวัดประสิทธิภาพของกลยุทธ์
ทฤษฎีพื้นฐานคือกลยุทธ์ใด ๆ ที่ทำงานได้ดีในอดีตมีแนวโน้มที่จะทำงานได้ดีในอนาคตและในทางกลับกันกลยุทธ์ใด ๆ ที่ทำงานได้ไม่ดีในอดีตมีแนวโน้มที่จะทำงานได้ไม่ดีในอนาคต บทความนี้จะดูว่ามีการใช้งานแอปพลิเคชันใดในการทดสอบย้อนกลับข้อมูลประเภทใดที่ได้รับและวิธีการใช้งาน
วิธีการ Backtest กลยุทธ์การซื้อขายโดยใช้ข้อมูลและเครื่องมือ
การทดสอบซ้ำสามารถให้ข้อเสนอแนะทางสถิติที่มีค่ามากมายเกี่ยวกับระบบที่กำหนด สถิติการทดสอบย้อนกลับสากลบางรายการมีดังนี้:
- กำไรหรือขาดทุนสุทธิ: ร้อยละสุทธิที่ได้รับหรือสูญเสีย มาตรการความผันผวน: ร้อยละอัพไซด์และดาวน์สูงสุด เฉลี่ย: ร้อยละกำไรเฉลี่ยและการสูญเสียโดยเฉลี่ย, บาร์เฉลี่ยถือได้ รับ: ร้อยละของเงินลงทุน (หรือสัมผัสกับตลาด) อัตราส่วน: อัตราส่วน ชนะต่อการสูญเสีย ผล ตอบแทนประจำปี : ร้อยละผลตอบแทนมากกว่าปี : เปอร์เซ็นต์ผลตอบแทนเป็นความเสี่ยง
ซอฟต์แวร์การทดสอบย้อนกลับ
โดยทั่วไปซอฟต์แวร์ backtesting จะมีสองหน้าจอที่สำคัญ ครั้งแรกที่ผู้ค้าอนุญาตให้ปรับแต่งการตั้งค่าสำหรับ backtesting การปรับแต่งเหล่านี้รวมทุกอย่างตั้งแต่ช่วงเวลาจนถึงค่าคอมมิชชั่น นี่คือตัวอย่างของหน้าจอดังกล่าวใน AmiBroker:
หน้าจอที่สองคือรายงานผลการทดสอบย้อนกลับจริง ที่นี่คุณสามารถค้นหาสถิติที่กล่าวถึงข้างต้น นี่เป็นตัวอย่างของหน้าจอนี้ใน AmiBroker:
โดยทั่วไปซอฟต์แวร์การซื้อขายส่วนใหญ่มีองค์ประกอบที่คล้ายกัน โปรแกรมซอฟต์แวร์ระดับสูงบางโปรแกรมยังมีฟังก์ชันเพิ่มเติมเพื่อทำการปรับขนาดตำแหน่งอัตโนมัติการปรับให้เหมาะสมและคุณสมบัติขั้นสูงอื่น ๆ
10 กฎสำหรับกลยุทธ์การซื้อขายย้อนหลัง
มีหลายปัจจัยที่ต้องให้ความสนใจเมื่อผู้ค้าทำการ backtesting กลยุทธ์การซื้อขาย นี่คือรายการของสิ่งที่สำคัญที่สุดที่ต้องจำในขณะที่ backtesting:
- คำนึงถึงแนวโน้มของตลาดในกรอบเวลาที่กำหนดกลยุทธ์ได้รับการทดสอบ ตัวอย่างเช่นหากกลยุทธ์ได้รับการ backtested เพียงอย่างเดียวจากปี 1999 ถึงปี 2000 มันอาจไม่ดีพอในตลาดหมี มันเป็นความคิดที่ดีที่จะทำการ backtest ในกรอบเวลาที่ยาวนานซึ่งครอบคลุมสภาพตลาดที่แตกต่างกันหลายประเภทคำนึงถึงเอกภพที่เกิดการ backtesting ตัวอย่างเช่นหากระบบตลาดแบบกว้างมีการทดสอบกับจักรวาลที่ประกอบด้วยหุ้นเทคโนโลยีอาจไม่สามารถทำได้ดีในภาคส่วนต่างๆ ตามกฎทั่วไปหากกลยุทธ์มีการกำหนดเป้าหมายไปที่ประเภทของสต็อกเฉพาะให้ จำกัด จักรวาลไว้ที่ประเภทนั้น ในกรณีอื่น ๆ รักษาจักรวาลขนาดใหญ่เพื่อจุดประสงค์ในการทดสอบมาตรการความผันผวนมีความสำคัญอย่างยิ่งที่จะต้องพิจารณาในการพัฒนาระบบการซื้อขาย นี่เป็นเรื่องจริงโดยเฉพาะอย่างยิ่งสำหรับบัญชีที่ใช้ประโยชน์ซึ่งมีการเรียกมาร์จินหากส่วนของพวกเขาลดลงต่ำกว่าจุดที่กำหนด ผู้ค้าควรพยายามรักษาความผันผวนให้ต่ำเพื่อลดความเสี่ยงและช่วยให้สามารถเปลี่ยนเข้าและออกจากหุ้นที่กำหนดได้ง่ายขึ้นจำนวนบาร์ที่จัดขึ้นโดยเฉลี่ยก็มีความสำคัญมากเช่นกันเมื่อต้องพัฒนาระบบการซื้อขาย แม้ว่าซอฟต์แวร์ backtesting ส่วนใหญ่จะมีค่าคอมมิชชั่นในการคำนวณขั้นสุดท้าย แต่นั่นไม่ได้หมายความว่าคุณควรเพิกเฉยต่อสถิตินี้ ถ้าเป็นไปได้การเพิ่มจำนวนบาร์โดยเฉลี่ยของคุณสามารถลดค่าคอมมิชชั่นและปรับปรุงผลตอบแทนโดยรวมของคุณการฝึกเป็นดาบสองคม การเปิดรับที่เพิ่มขึ้นสามารถนำไปสู่ผลกำไรที่สูงขึ้นหรือการสูญเสียที่สูงขึ้นในขณะที่การเปิดรับที่ลดลงหมายถึงกำไรที่ลดลงหรือการสูญเสียที่ลดลง โดยทั่วไปเป็นความคิดที่ดีที่จะรักษาระดับการเปิดรับต่ำกว่า 70% เพื่อลดความเสี่ยงและช่วยให้สามารถเปลี่ยนเข้าและออกจากหุ้นที่กำหนดได้ง่ายขึ้นสถิติค่าเฉลี่ยกำไร / ขาดทุนรวมกับอัตราส่วนชนะต่อการสูญเสียจะเป็นประโยชน์ สำหรับการกำหนดขนาดที่เหมาะสมและการจัดการเงินโดยใช้เทคนิคเช่นเกณฑ์ของเคลลี่ ผู้ค้าสามารถรับตำแหน่งที่ใหญ่ขึ้นและลดค่าคอมมิชชั่นโดยการเพิ่มกำไรเฉลี่ยของพวกเขาและเพิ่มอัตราส่วนการชนะต่อการขาดทุนผลตอบแทนที่ได้รับจะใช้เป็นเครื่องมือในการเปรียบเทียบผลตอบแทนของระบบเทียบกับสถานที่ลงทุนอื่น ๆ มันเป็นสิ่งสำคัญไม่เพียง แต่จะดูที่ผลตอบแทนรายปีโดยรวม แต่ยังคำนึงถึงความเสี่ยงที่เพิ่มขึ้นหรือลดลง สิ่งนี้สามารถทำได้โดยดูที่ผลตอบแทนที่ปรับความเสี่ยงซึ่งเป็นปัจจัยเสี่ยงต่าง ๆ ก่อนที่จะมีการนำระบบการซื้อขายมาใช้จะต้องมีประสิทธิภาพสูงกว่าสถานที่การลงทุนอื่น ๆ ที่มีความเสี่ยงเท่ากันหรือน้อยกว่าการปรับแต่งการทดสอบย้อนหลังเป็นสิ่งสำคัญอย่างยิ่ง แอปพลิเคชัน backtesting จำนวนมากมีการป้อนข้อมูลสำหรับค่าคอมมิชชั่นขนาดล็อตแบบกลม (หรือบางส่วน) ขนาดขีดขีด จำกัด อัตรามาร์จิ้นอัตราดอกเบี้ยสมมติฐานการเลื่อนหลุดกฎการกำหนดขนาดตำแหน่งกฎการออกจากบาร์เดียวกัน เพื่อให้ได้ผลลัพธ์การทดสอบย้อนกลับที่แม่นยำที่สุดสิ่งสำคัญคือการปรับการตั้งค่าเหล่านี้เพื่อเลียนแบบโบรกเกอร์ที่จะใช้เมื่อระบบทำงานจริงบางครั้งการทดสอบย้อนกลับอาจนำไปสู่บางสิ่งที่เรียกว่า นี่เป็นเงื่อนไขที่ผลการปฏิบัติงานถูกปรับให้สูงจนในอดีตพวกเขาจะไม่ถูกต้องในอนาคตอีกต่อไป โดยทั่วไปแล้วเป็นความคิดที่ดีที่จะใช้กฎที่ใช้กับหุ้นทั้งหมดหรือชุดของหุ้นเป้าหมายและไม่ได้รับการปรับให้เหมาะสมตามกฎที่ผู้สร้างไม่เข้าใจอีกต่อไปการทดสอบย้อนกลับไม่ใช่วิธีที่แม่นยำที่สุดในการวัด ประสิทธิภาพของระบบการซื้อขายที่กำหนด บางครั้งกลยุทธ์ที่ทำได้ดีในอดีตไม่สามารถทำได้ดีในปัจจุบัน ประสิทธิภาพที่ผ่านมาไม่ได้บ่งบอกถึงผลลัพธ์ในอนาคต ตรวจสอบให้แน่ใจว่าการค้ากระดาษระบบที่ได้รับการ backtested เรียบร้อยแล้วก่อนที่จะมีชีวิตอยู่เพื่อให้แน่ใจว่ากลยุทธ์ยังคงใช้ในการปฏิบัติ
บรรทัดล่าง
Backtesting เป็นหนึ่งในส่วนที่สำคัญที่สุดของการพัฒนาระบบการซื้อขาย หากสร้างและตีความอย่างถูกต้องแล้วก็สามารถช่วยให้ผู้ค้าเพิ่มประสิทธิภาพและปรับปรุงกลยุทธ์ของพวกเขาค้นหาข้อบกพร่องทางเทคนิคหรือทางทฤษฎีใด ๆ รวมทั้งเพิ่มความมั่นใจในกลยุทธ์ของพวกเขาก่อนที่จะนำไปใช้กับตลาดโลกแห่งความจริง