29 กันยายน 2026 · วิจัย

แบ็กเทสต์ของคุณใช้เงินก้อนเดิมซ้ำสองครั้ง: คู่มือการทำบัญชีพอร์ตโฟลิโอ

แบ็กเทสต์ของคุณใช้เงินก้อนเดิมซ้ำสองครั้ง: คู่มือการทำบัญชีพอร์ตโฟลิโอ

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

สมมติว่ากลยุทธ์เริ่มด้วยเงิน $10,000 แล้วซื้อสินทรัพย์มูลค่า $6,000 เท่ากับมีเงินสดที่ยังใช้ได้ $4,000 หากแบ็กเทสต์กำหนดขนาดสถานะที่สองเป็น 100% ของส่วนของผู้ถือบัญชี $10,000 กลยุทธ์ก็จะมีมูลค่าความเสี่ยงที่ผูกไว้ $16,000 แต่บันทึกเงินทุนไว้เพียง $10,000 วิธีนี้อาจเป็นเลเวอเรจที่ถูกต้องภายใต้กฎบัญชีบางแบบ แต่จะถือว่าถูกต้องไม่ได้เพียงเพราะโค้ดคำนวณขนาดสถานะโดยใช้ “ส่วนของผู้ถือบัญชี”

วิธีผิดแบบที่ 1: ถือว่าส่วนของผู้ถือบัญชีคือเงินสด

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

ความเสียหายนี้มองข้ามได้ง่ายในแบ็กเทสต์ที่ใช้สินทรัพย์สภาพคล่องสูงและไม่มีการเรียกหลักประกัน ผลตอบแทนดูสมเหตุสมผล แต่เมื่อนำสัดส่วนสถานะมารวมกันภายหลัง บางครั้งกลับได้ 140% หรือ 180% บัญชีจริงอาจปฏิเสธคำสั่งที่ส่งมาทีหลัง หรือมีเลเวอเรจเกินกว่าที่กลยุทธ์ตั้งใจใช้

กันเงินสดไว้ตั้งแต่ตอนสร้างคำสั่ง สำหรับบัญชีเงินสด การซื้อ $2,000 จะใช้เงิน $2,000 บวกค่าธรรมเนียม สำหรับบัญชีมาร์จิน ให้คำนวณมาร์จินที่ต้องใช้ตามกฎของแพลตฟอร์ม แล้วหักจำนวนดังกล่าวออกจากกำลังซื้อที่ยังใช้ได้ หากมีหลายคำสั่งเข้ามาพร้อมกัน ให้กำหนดลำดับความสำคัญ มิฉะนั้นผลลัพธ์อาจขึ้นอยู่กับว่าลูปไหนทำงานก่อน

วิธีผิดแบบที่ 2: นับหลักประกันที่ถูกล็อกเป็นกำลังซื้อที่ยังใช้ได้

บนแพลตฟอร์มอนุพันธ์ การวางหลักประกัน $1,000 ไม่ได้แปลว่าส่วนของผู้ถือบัญชีจะลดลง $1,000 เสมอไป แต่หมายความว่าเงินส่วนนั้นถูกผูกไว้กับสถานะที่เปิดอยู่ ทางลัดด้านบัญชีที่พบบ่อยคือหักเงินจำนวนนี้จากเงินสด แล้วหักมูลค่าตามสัญญาเต็มจำนวนของสถานะออกจากกำลังซื้ออีกครั้ง อีกวิธีหนึ่งทำกลับกันและถือว่าหลักประกันเป็นทั้งเงินสดที่ยังใช้ได้และมาร์จิน

ความผิดพลาดทั้งสองแบบทำให้ประเมินความสามารถของคำสั่งถัดไปผิดไป แบบแรกอาจทำให้กลยุทธ์ดูถูกจำกัดโดยไม่จำเป็น ส่วนแบบที่สองอาจอนุมัติคำสั่งที่บัญชีรองรับไม่ไหว ที่เลเวอเรจ 5× สถานะมูลค่า $5,000 อาจต้องใช้มาร์จินเริ่มต้นประมาณ $1,000 แต่จำนวนที่ใช้ได้จริงเปลี่ยนแปลงได้ตามมาร์จินรักษาสถานะ ค่าธรรมเนียม ขาดทุนที่ยังไม่รับรู้ และระดับเฉพาะของแต่ละแพลตฟอร์ม มูลค่าตามสัญญาไม่ใช่สิ่งเดียวกับหลักประกัน

รายการในบัญชีหมายถึงอะไรใช้เป็นเงินทุนสำหรับคำสั่งใหม่ได้หรือไม่
ส่วนของผู้ถือบัญชีมูลค่าบัญชีหลังหักหนี้สินและประเมินมูลค่าสถานะแล้วได้ เฉพาะเมื่อเป็นไปตามกฎมาร์จินและกำลังซื้อ
เงินสดที่ยังใช้ได้เงินสดที่ยังไม่ได้ใช้ กันไว้ หรือวางเป็นหลักประกันได้ ภายใต้กฎของตราสารนั้น
หลักประกันที่ถูกล็อกเงินทุนที่รองรับสถานะหรือคำสั่งที่เปิดอยู่โดยทั่วไปใช้ไม่ได้จนกว่าจะได้รับการปลดล็อก
กำลังซื้อความสามารถในการส่งคำสั่งเพิ่ม ซึ่งคำนวณตามกฎของแพลตฟอร์มได้ ภายในวงเงินปัจจุบัน

จำลองรายการเหล่านี้เป็นจำนวนแยกจากกัน แม้ในกรณีง่าย ๆ บนบางแพลตฟอร์มจะมีบางรายการเท่ากัน จากนั้นทดสอบสิ่งที่จะเกิดขึ้นเมื่อสถานะขาดทุน: ส่วนของผู้ถือบัญชีลดลง มาร์จินรักษาสถานะอาจเพิ่มขึ้นเมื่อเทียบกับมูลค่าตามสัญญา และกำลังซื้อที่เหลืออาจลดลงเร็วกว่าที่ตัวเลขใดตัวเลขหนึ่งเพียงอย่างเดียวบอกไว้

วิธีผิดแบบที่ 3: คืนเงินทุนเมื่อมีสัญญาณออกจากสถานะ

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

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

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

ทำบัญชีให้ชัดเจน

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

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

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

การทำบัญชีพอร์ตโฟลิโอกำลังซื้อแบ็กเทสต์มาร์จินการบริหารเงินสด
แชร์XLinkedInFacebookRedditHacker NewsWhatsAppTelegramEmail
← บทความทั้งหมด