Statistical Arbitrage
Statistical Arbitrage

Statistical Arbitrage · เริ่มจาก Pairs Trading

หุ้นสองตัวลงพร้อมกัน พอร์ตที่ซื้อหนึ่งตัวและขายชอร์ตอีกตัวอาจยังมีกำไรได้ ถ้าตัวที่ซื้อเสียหายน้อยกว่าตัวที่ชอร์ต

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

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

ด้านหน้าอาคาร New York Stock Exchange พร้อมธงสหรัฐฯ เป็นภาพประกอบบริบทตลาดหุ้น
New York Stock Exchange · ภาพโดย www.elbpresse.de / Chs87 · CC BY-SA 4.0 · ภาพต้นฉบับไม่ดัดแปลง ใช้ประกอบบริบทตลาด ไม่ได้แสดงผลของกลยุทธ์

เส้นทางของซีรีส์

ตอน สิ่งที่จะทำได้หลังอ่าน ภาพและการทดลอง
1 · หน้านี้ แยกกำไรของสองขาและเลือกความเสี่ยงที่ต้องการ hedge กราฟสามสถานการณ์และตัวปรับ hedge
2 · Cointegration สร้าง residual และอ่านผลทดสอบโดยไม่แปล p-value เกินความหมาย ราคาเทียบ spread และตัวทดลองความสัมพันธ์ที่เปลี่ยนไป
3 · Signals & Backtest เปลี่ยน z-score เป็นคำสั่งซื้อขายพร้อมสมุดบัญชีต้นทุน กราฟ signal, equity และ trade blotter
4 · Clustering, PCA & Prediction คัดกลุ่มหุ้นและทดสอบโมเดลทำนายด้วยข้อมูลตามลำดับเวลา Heatmap, dendrogram, PCA และ Notebook ที่รันได้

ใช้ความรู้เรื่อง Returns, ค่าเฉลี่ย, ส่วนเบี่ยงเบนมาตรฐาน และเส้นถดถอยเชิงเส้นประกอบได้ ตัวเลข A/B และผลทดลองในซีรีส์เป็นข้อมูลสมมติทั้งหมด ไม่มีคู่หุ้นแนะนำหรือผล Backtest ของตลาดจริง

อ่านกำไรขาดทุนทีละขา

สมมติซื้อหุ้น A มูลค่า 10,000 ดอลลาร์ และ ขายชอร์ต หุ้น B มูลค่า 10,000 ดอลลาร์ เมื่อปิดทั้งสองขา กำไรก่อนต้นทุนคือ

Π=10,000rA−10,000rB.\Pi=10{,}000r_A-10{,}000r_B.

rA,rBr_A,r_B คือ simple return ระหว่างเปิดและปิดสถานะ ไม่รวมเงินปันผล เครื่องหมายลบของขา B มาจากการขายก่อนแล้วซื้อคืน ถ้าราคา B ลง ขานี้จะมีกำไร

ราคาช่วงที่ถือ P&L ของ Long A P&L ของ Short B P&L รวม
A +5%, B −5% +500 +500 +1,000 ดอลลาร์
A +15%, B +5% +1,500 −500 +1,000 ดอลลาร์
A −5%, B −15% −500 +1,500 +1,000 ดอลลาร์

เลื่อนกราฟแนวนอนบนจอเล็ก หรือแตะกราฟเพื่อเปิดขนาดเต็ม

เปรียบเทียบผลตอบแทนหุ้น A และ B ในสามสถานการณ์ที่ส่วนต่างผลตอบแทนเท่ากับสิบจุดเปอร์เซ็นต์
ตัวอย่างสมมติเดียวกันทั้งสามกรณี · Long และ Short มีมูลค่าเริ่มต้นเท่ากัน · ยังไม่หักต้นทุน

ส่วนต่าง rA−rB=10%r_A-r_B=10\% ยังต้องมีฐานเงินทุนก่อนเรียกว่า “ผลตอบแทนพอร์ต” ถ้าวัดเทียบ gross notional 20,000 ดอลลาร์ จะได้ 1,000 / 20,000 = 5% หากกันเงินทุนไว้ 25,000 ดอลลาร์ จะได้ 4% เงินสดสุทธิจากการเปิดสองขาอาจใกล้ศูนย์ แต่ผู้ซื้อขายยังต้องมีหลักประกันและรับความเสี่ยง ห้ามนำกำไรไปหารด้วยเงินลงทุนสุทธิที่ใกล้ศูนย์

เมื่อปรับมูลค่าสองขาไม่เท่ากัน สูตรต้องกลับไปใช้ Π=NArA−NBrB\Pi=N_A r_A-N_B r_B โดย NA,NBN_A,N_B เป็นมูลค่าแต่ละขาตอนเปิด การลบเปอร์เซ็นต์ตรง ๆ จะไม่ให้ P&L ของพอร์ตนั้นแล้ว

Hedge ratio สามแบบตอบคนละโจทย์

Dollar neutral กำหนดให้มูลค่า Long เท่ากับมูลค่า Short ส่วน beta neutral กำหนดให้ความไวต่อตลาดของสองขาหักล้างกัน โดยประมาณ market beta จากผลตอบแทนที่สอดคล้องกันทั้งช่วงเวลาและ benchmark

βi=Cov⁡(ri,rM)Var⁡(rM),βANA−βBNB=0.\beta_i=\frac{\operatorname{Cov}(r_i,r_M)}{\operatorname{Var}(r_M)},\qquad \beta_A N_A-\beta_B N_B=0.

ถ้าซื้อ A 10,000 ดอลลาร์ โดย βA=1.2\beta_A=1.2 และ βB=0.8\beta_B=0.8 จะต้องขายชอร์ต B 15,000 ดอลลาร์เพื่อให้ beta exposure ประมาณศูนย์ พอร์ตนี้มี gross notional 25,000 ดอลลาร์ และ net notional −5,000 ดอลลาร์

จำนวนหุ้นยังขึ้นกับราคา เช่น A ราคา 100 และ B ราคา 50 ดอลลาร์ จะถือ A +100 หุ้น และ B −300 หุ้น ถ้าจะปัดจำนวนหุ้น ต้องคำนวณ exposure ที่เหลืออีกครั้ง Market beta เป็นค่าประมาณในอดีต จึงเปลี่ยนได้หลังเปิดสถานะ และไม่ได้ครอบคลุมความเสี่ยงของบริษัทแต่ละแห่ง

วิธี เงื่อนไข สิ่งที่ยังเหลืออยู่
Dollar neutral NA=NBN_A=N_B market beta อาจไม่เท่ากัน
Market-beta neutral βANA=βBNB\beta_A N_A=\beta_B N_B ความเสี่ยงเฉพาะบริษัทและ beta ที่เปลี่ยน
Cointegration hedge เลือก h ให้ PA−α−hPBP_A-\alpha-hP_B มีคุณสมบัติที่ต้องการ ไม่บังคับให้ dollar หรือ market beta เป็นศูนย์

เราจะใช้ h แทนสัมประสิทธิ์ของราคาในตอนถัดไป เพื่อแยกจาก market beta สำหรับ regression ของราคาในหน่วยดอลลาร์ต่อหุ้น h แปลเป็นจำนวนหุ้น B ต่อหุ้น A ได้ ส่วน regression ของ log price ให้สัมประสิทธิ์ที่ต้องแปลงเป็นมูลค่าขาและจำนวนหุ้นอีกขั้น

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

เริ่มจากเหตุผลที่สินทรัพย์ควรสัมพันธ์กัน

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

ก่อนสแกนคู่ ให้กำหนด universe และช่วงข้อมูลจากสิ่งที่รู้ได้ ณ วันนั้น เลือกความถี่เดียวกัน จัดวันซื้อขายให้ตรง ตรวจ split, dividend, missing values และสิทธิ์ในการขายชอร์ต ถ้าใช้หุ้นที่ยังอยู่ในดัชนีวันนี้ย้อนหลังไปทั้งช่วง จะตัดบริษัทที่ออกจากดัชนีหรือหายไปจากตลาดออกโดยไม่รู้ตัว

งานของ Gatev, Goetzmann และ Rouwenhorst ใช้ระยะห่างของราคาที่ปรับมาตราส่วนเป็นวิธีเลือกคู่ ขณะที่ซีรีส์นี้จะทดลองแนว Cointegration ก่อน ทั้งสองวิธีควรมีกติกาทดสอบที่ระบุไว้ล่วงหน้า อ่านกรอบงานเดิมที่ Pairs Trading: Performance of a Relative Value Arbitrage Rule

ขาต่อไปคือการตรวจว่า เมื่อราคาทั้งคู่เคลื่อนไปตามเวลาแล้ว ส่วนที่เหลือหลังหักความสัมพันธ์ยังแกว่งอยู่รอบระดับเดิมหรือไม่ → ตอน 2 · Cointegration

อ่านและทดลองต่อ

เอกสารประกอบตอนนี้คือ Module PDF — Build a Pair Trading strategy prediction model หน้า 1–36 ที่ผู้ใช้ให้มา เราเรียบเรียงใหม่และคำนวณฐานผลตอบแทนให้ชัด ตัวเลขในเอกสารเป็นตัวอย่างของช่วงที่จัดทำ ไม่ใช่ราคาและ beta ปัจจุบัน ดู บันทึกแหล่งข้อมูลและการแก้ความคลาดเคลื่อน

ดาวน์โหลด Notebook ทั้งซีรีส์ · Coursera: Using Machine Learning in Trading and Finance · วิดีโอที่ใช้เป็นแหล่งอ่านต่อ: Basic Statistical Arbitrage

ภาพการ์ตูน Nuthdanai Wangpratham

ผู้เขียน · QuantCorner

Nuthdanai Wangpratham

แบ่งปันความรู้ด้าน Quantitative Finance และ AI เพื่อให้การเรียนรู้เรื่องการลงทุนเริ่มต้นได้จากตัวอย่างที่ลองทำตามได้

อ่านบทนี้แล้วอยากเรียนรู้ต่อ? ติดตามผู้เขียนและ QuantCorner ได้ที่นี่

ค้นหาในสมุดบันทึก