เดือนที่แล้วผมเอาผลรันเปเปอร์เทรดแบบ funding-carry ชุดหนึ่งมาคำนวณ Sharpe 3 วิธี ผลตอบแทนส่วนเกินรายวันเฉลี่ย 6.4 จุดฐาน โดยมีส่วนเบี่ยงเบนมาตรฐานรายวัน 81 จุดฐาน คูณ √252 ได้ 1.25 คูณ √365 ได้ 1.51 ถ้าตัดเส้น equity เดียวกันทุก 5 นาทีแล้วคูณ √(365×288) โน้ตจะบอกว่า 3.08 สองตัวแรกเป็นข้อถกเรื่องปฏิทิน ตัวที่สามคือสิ่งที่เอเจนต์วิจัยของเราพ่นออกมาเมื่อปรับเป็นรายปีตามความถี่ของไฟล์ข้อมูล แทนความถี่ของการตัดสินใจ นั่นไม่ใช่ Sharpe ratio ในความหมายใดที่ผมจะยอมยืนยัน
Sharpe (รายปี): 3.08. ผลตอบแทน 5 นาที crypto_carry_v3.
ผมเก็บ 3.08 ไว้ นั่นคือตัวที่ต้องอธิบาย
ทำไม Sharpe แบบ 5 นาทีจึงเป็น 2 เท่าของค่าแบบรายวัน?
กฎรากที่สองของเวลาเป็นการกล่าวถึงการสุ่มอิสระ เมื่อบวกผลตอบแทน i.i.d. จำนวน N ค่าเฉลี่ยแปรตาม N ส่วนเบี่ยงเบนมาตรฐานแปรตาม √N อัตราส่วนแปรตาม √N ผลตอบแทนคริปโตระยะ 5 นาทีไม่ใช่การสุ่มอิสระ ราคากลางเด้งออกจาก bid มาร์กที่ค้างติ๊กกลับ Funding ไม่ได้สะสมเป็น 288 ชิ้นอิสระ มันโพสต์ตามนาฬิกา พอร์ตที่เทรดตอน 16:00 UTC แล้วถือข้ามคืนไม่ได้ตัดสินใจอีก 287 ครั้งขณะที่คุณนอนหลับ
เมื่อผลตอบแทนระยะสั้นกลับสู่ค่าเฉลี่ย และสัญญาณรบกวนระดับไมโครสตรัคเจอร์กลับสู่ค่าเฉลี่ยโดยโครงสร้างอยู่แล้ว สัญญาณกลับสู่ค่าเฉลี่ยที่เก็บทุก 5 นาทีก็ได้เทรดจังหวะเด้งนั้นด้วย มาร์กรายวันหักล้างมันออก ส่วนเกิน 1.57 ของ Sharpe ที่ปรับเป็นรายปีมักเป็นความแกว่ง 2 จุดฐาน ที่ไม่เคยรอดรอบไป-กลับ 8 จุดฐาน คุณไม่ได้พบความได้เปรียบเพิ่มขึ้น คุณหั่นสัญญาณรบกวนเป็นชิ้นย่อยแล้วคูณด้วย 324
Andrew Lo บันทึกความล้มเหลวของ √N ไว้ในปี 2002 สำหรับสหสัมพันธ์เชิงอนุกรมในผลตอบแทนรายเดือนของเฮดจ์ฟันด์ ตลาดต่างกัน บาปเดียวกัน เรายังถือว่า √N เป็นแค่ตัวเลือกการจัดรูปแบบ
252 หรือ 365 คือศึกที่เล็กกว่า
NAV ของหุ้นสหรัฐข้ามวันเสาร์อาทิตย์และวันหยุดนักขัตฤกษ์ จึงได้ประมาณ 252 ค่าต่อปี เพิร์ปคริปโตมีราคาวันเสาร์ ถ้ามาร์กพอร์ต BTC ทุกวันตามปฏิทิน วันเสาร์คือ P&L จริงพร้อม funding จริง และคุณมีผลตอบแทนประมาณ 365 ค่า การใช้ 252 กับอนุกรมนั้นทำให้ตัวเลขที่ปรับเป็นรายปีต่ำไปประมาณ 20 เปอร์เซ็นต์ เพราะ √365/√252 เท่ากับ 1.20 ผมใช้ 365 สำหรับพอร์ต 24/7 ที่มาร์กรายวัน และใช้ 252 สำหรับพอร์ตหุ้นสหรัฐที่มาร์กตอนปิดเซสชัน ผมเขียนค่าคงที่ไว้ข้าง Sharpe
ความคลาดนั้นจริง แต่ไม่ใช่เหตุที่ 1.51 กลายเป็น 3.08 การเทียบ 1.51 ของคริปโตที่คำนวณด้วย 365 กับ 1.51 ของหุ้นที่คำนวณด้วย 252 โดยไม่แปลง คือวิธีที่พิตช์เด็คถูกปั้นขึ้นมา แปลงทั้งคู่เป็นผลตอบแทนส่วนเกินรายปีปฏิทินหารด้วยส่วนเบี่ยงเบนมาตรฐานของผลตอบแทนรายปีปฏิทิน จาก NAV รายวัน หรือไม่ก็อย่าเทียบกัน
ปรับเป็นรายปีตามนาฬิกาตัดสินใจ
ถ้ากลยุทธ์เทรดได้ทุก 5 นาทีและทำจริง ผลตอบแทน 5 นาทีคืออนุกรมที่ซื่อสัตย์ คุณยังไม่ควรคูณ √105,120 แบบมืดบอด เพราะผลตอบแทนเหล่านั้นมีสหสัมพันธ์เชิงอนุกรม สร้าง NAV รายวันจากพอร์ต 5 นาที แล้วปรับ Sharpe รายวันเป็นรายปีด้วย √365 มาร์กรายวันพับการเด้งเข้าไปในตัวเลขเดียวกับที่คุณจะอ่านจากบัญชีเปเปอร์
ถ้ากลยุทธ์เทรดวันละ 1 ครั้ง อย่าให้ Sharpe แบบ 5 นาทีเลย และอย่ารีแซมเปิลกลยุทธ์รายวันเป็นแท่งนาทีเพื่อให้เส้น equity ดูเรียบขึ้น เพื่อนร่วมงานเคยส่งพล็อตที่เรียบเนียนเหมือนกำมะหยี่ให้ผม ซึ่งเป็นพอร์ตรายวันที่ถูก forward-fill ลงแท่งนาที ดีลไม่ได้เปลี่ยน Sharpe จากไฟล์นาทีมหาศาล ผมยังนึกถึงเส้นนั้นอยู่เมื่อเอเจนต์บอกว่าตรวจหลายกรอบเวลาแล้ว
อะไรควรอยู่บนโน้ตงานวิจัย
Sharpe เป็นสมบัติของอนุกรมผลตอบแทน ไม่ใช่สมบัติของกลยุทธ์ โน้ตต้องบอกว่าเป็นอนุกรมใด
| แบบแผน | ตัวคูณ | น่าเชื่อเมื่อ |
|---|---|---|
| รายวัน × √252 | 15.87 | หุ้นสหรัฐ NAV ตามเซสชัน วันหยุดสุดสัปดาห์ไม่ใช่ผลตอบแทน |
| รายวัน × √365 | 19.10 | คริปโต (หรือพอร์ต 24/7 ใดๆ) ที่มาร์กทุกวันตามปฏิทิน |
| รายชั่วโมง × √(365×24) | 93.6 | แต่ละชั่วโมงเป็นการตัดสินใจอิสระ และคุณยังเชื่อ √N |
| 5 นาที × √(365×288) | 324.3 | แทบไม่เคย สำหรับกลยุทธ์ที่ไม่ได้เทรด 288 ครั้งต่อวัน |
ผมต้องการ 3 สิ่งข้าง Sharpe ทุกตัวที่เราพิมพ์: ความถี่ของผลตอบแทน ค่าคงที่การปรับเป็นรายปี และว่ามาร์กวันหยุดสุดสัปดาห์อยู่ในตัวอย่างหรือไม่ ถ้าเอเจนต์ละไว้ ผมทิ้งตัวเลขนั้นแล้วคำนวณใหม่จาก NAV รายวัน
เปเปอร์เทรดตัดสินข้อถกด้วยวิธีที่น่าเบื่อ มาร์กบัญชีเปเปอร์ตอน 00:00 UTC ปรับอนุกรมนั้นเป็นรายปีด้วยจำนวนมาร์กในรอบปี ถ้าแบ็กเทสตรงกันก็ต่อเมื่อคุณเปลี่ยน √N คุณไม่ได้มองกลยุทธ์อยู่เลย
← บทความทั้งหมด


