ข้ามไปยังเนื้อหาหลัก
ผลลัพธ์ backtestSharpe ratiomaximum drawdown
การตีความผลลัพธ์ Backtest: คู่มือเชิงปริมาณสำหรับทุกตัวชี้วัด

การตีความผลลัพธ์ Backtest: คู่มือเชิงปริมาณสำหรับทุกตัวชี้วัด

รายงาน Backtest คือแผ่นตัวเลขที่อัดแน่น ผลตอบแทนรวม, Sharpe ratio, max drawdown, profit factor, Win Rate — ตัวชี้วัดแต่ละตัวตอบคำถามที่แตกต่างกันเกี่ยวกับกลยุทธ์ของคุณ หากอ่านผิด คุณจะนำกลยุทธ์ที่ดูยอดเยี่ยมบนกระดาษแต่สูบเงินทุนของคุณไปในตลาดจริงมาใช้งาน หากอ่านถูก คุณจะกรองการตั้งค่าที่เปราะบางออกไปได้ก่อนที่มันจะทำให้คุณเสียเงินแม้แต่บาทเดียว

คู่มือนี้มอบสูตร, ค่าอ้างอิงมาตรฐาน และ — ที่สำคัญที่สุด — กรอบการตัดสินใจเพื่อแยกแยะ Backtest ที่แข็งแกร่งอย่างแท้จริงออกจากที่ถูก overfit อย่างแยบยล

ประเด็นสำคัญ

  • Sharpe Ratio วัดผลตอบแทนต่อหนึ่งหน่วยความเสี่ยงรวม; ค่าที่สูงกว่า 1.0 ถือว่าดี, สูงกว่า 2.0 ยอดเยี่ยม, สูงกว่า 4.0 น่าสงสัย
  • Maximum Drawdown เผยให้เห็นการขาดทุนจากจุดสูงสุดถึงจุดต่ำสุดที่เลวร้ายที่สุด — มันกำหนดเพดานความเจ็บปวดทางจิตใจและการเงิน
  • Win Rate เพียงอย่างเดียวไร้ความหมายหากปราศจากบริบทของ risk-reward: Win Rate 40% ที่ RR 1:3 ทำกำไรได้มากกว่า 70% ที่ 1:0.5
  • Overfitting สร้างผลลัพธ์ Backtest ที่ใช้ได้กับชุดข้อมูลเฉพาะชุดเดียวเท่านั้น — ตรวจจับมันด้วยการทดสอบกับข้อมูลที่ยังไม่เคยเห็น
  • รูปทรงของ equity curve เผยให้เห็นความทนทานของกลยุทธ์ได้มากกว่าตัวชี้วัดเดี่ยวใด ๆ
  • สัญญาณอันตรายได้แก่ Sharpe >4, Win Rate >98% และการเทรดที่ไม่มีการขาดทุนเลย — สิ่งเหล่านี้เกือบจะบ่งชี้ถึง Backtest ที่ผิดพลาดเสมอ

หากคุณยังไม่ได้รัน Backtest ให้เริ่มต้นด้วยคู่มือ Backtest แบบทีละขั้นตอนของเราก่อนอ่านบทความนี้


ความเสี่ยงในการเทรด

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

ตัวชี้วัดประสิทธิภาพหลักพร้อมสูตร

Total Return vs. CAGR

Total Return คือตัวชี้วัดที่ง่ายที่สุด: พอร์ตของคุณได้กำไรหรือขาดทุนเท่าใดตลอดช่วง Backtest ทั้งหมด

Total Return = (Ending Value - Starting Value) / Starting Value × 100

หากคุณเริ่มต้นด้วย $10,000 และจบที่ $11,850 ผลตอบแทนรวมของคุณคือ 18.5%

ปัญหาของ Total Return คือมันละเลยเรื่องเวลา ผลตอบแทน 18.5% ภายใน 3 เดือนถือว่ามหัศจรรย์ ส่วน 18.5% เดียวกันตลอด 3 ปีกลับน่าผิดหวัง CAGR (Compound Annual Growth Rate) แก้ปัญหานี้ด้วยการปรับผลตอบแทนให้เป็นฐานรายปี:

CAGR = (Ending Value / Starting Value)^(365 / days) - 1

ตัวอย่าง: $10,000 → $11,850 ภายใน 180 วัน:

CAGR = (11850 / 10000)^(365/180) - 1 = 1.185^2.028 - 1 = 0.4036 = 40.36%

$10,000 → $11,850 เดียวกันนั้นตลอด 730 วัน (2 ปี):

CAGR = (11850 / 10000)^(365/730) - 1 = 1.185^0.5 - 1 = 0.0887 = 8.87%

จงเปรียบเทียบกลยุทธ์โดยใช้ CAGR เสมอ ไม่ใช่ Total Return กลยุทธ์ที่ให้ผลตอบแทน 25% ใน 6 เดือน (CAGR ≈ 56%) เหนือกว่ากลยุทธ์ที่ให้ผลตอบแทน 30% ใน 14 เดือน (CAGR ≈ 25%) อย่างมาก แม้ว่า Total Return จะต่ำกว่าก็ตาม

Sharpe Ratio

Sharpe Ratio คือมาตรฐานทองคำสำหรับประสิทธิภาพที่ปรับตามความเสี่ยง มันตอบคำถามว่า: "ฉันได้ผลตอบแทนเท่าใดต่อหนึ่งหน่วยความผันผวนที่ฉันต้องทนรับ?"

Sharpe Ratio = (Rp - Rf) / σp

โดยที่:

  • Rp = ผลตอบแทนพอร์ตรายปี
  • Rf = อัตราผลตอบแทนปลอดความเสี่ยง (โดยทั่วไป 4-5% สำหรับ USD หรือ 0% หากเปรียบเทียบเฉพาะคริปโต)
  • σp = ส่วนเบี่ยงเบนมาตรฐานรายปีของผลตอบแทนพอร์ต

ตัวอย่างการคำนวณ: bot ของคุณให้ผลตอบแทน 42% ต่อปี โดยมีส่วนเบี่ยงเบนมาตรฐาน 18% อัตราผลตอบแทนปลอดความเสี่ยงคือ 5%

Sharpe = (0.42 - 0.05) / 0.18 = 0.37 / 0.18 = 2.06
Sharpe Ratioการตีความการดำเนินการ
< 0.5ผลตอบแทนปรับตามความเสี่ยงแย่ออกแบบกลยุทธ์ใหม่
0.5 – 1.0ยอมรับได้ใช้ได้แต่ควรมองหาการปรับปรุง
1.0 – 2.0ดีผู้สมัครที่แข็งแกร่งสำหรับการนำไปใช้งานจริง
2.0 – 3.0ยอดเยี่ยมนำไปใช้งานอย่างมั่นใจ เฝ้าระวังการเปลี่ยนแปลงของ regime
> 4.0น่าสงสัยเกือบแน่นอนว่า overfit — ตรวจสอบ

Sharpe ratio ที่สูงกว่า 4.0 ใน Backtest คริปโตคือสัญญาณอันตราย ไม่ใช่เหรียญเชิดชูเกียรติ ตลาดคริปโตมีความผันผวนสูงโดยธรรมชาติ — การได้ผลตอบแทนปรับตามความเสี่ยงระดับ hedge fund อย่างสม่ำเสมอนั้นแทบเป็นไปไม่ได้หากปราศจาก overfitting หรือ look-ahead bias หาก Backtest ของคุณแสดง Sharpe > 4 ปฏิกิริยาแรกของคุณควรเป็นความสงสัย ไม่ใช่การเฉลิมฉลอง

Sortino Ratio

Sharpe Ratio ลงโทษความผันผวนทั้งหมดอย่างเท่าเทียมกัน — แต่ความผันผวนขาขึ้นเป็นสิ่งที่ดี หากกลยุทธ์ของคุณพุ่งขึ้น 5% ในหนึ่งวัน Sharpe ปฏิบัติต่อมันเหมือนกับการร่วงลง 5% Sortino Ratio แก้ปัญหานี้ด้วยการลงโทษเฉพาะส่วนเบี่ยงเบนขาลงเท่านั้น:

Sortino Ratio = (Rp - Rf) / σd

โดยที่ σd คือส่วนเบี่ยงเบนมาตรฐานของผลตอบแทนติดลบเท่านั้น

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

ตัวอย่าง: bot ตัวเดียวกันที่ให้ผลตอบแทน 42% ต่อปีและอัตราปลอดความเสี่ยง 5% แต่มีส่วนเบี่ยงเบนขาลงเพียง 11%:

Sortino = (0.42 - 0.05) / 0.11 = 3.36

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

Maximum Drawdown

Maximum drawdown (MDD) วัดการลดลงจากจุดสูงสุดถึงจุดต่ำสุดที่ใหญ่ที่สุดในมูลค่าพอร์ต มันตอบคำถามที่เป็นส่วนตัวที่สุดในการเทรด: "ความเจ็บปวดที่เลวร้ายที่สุดที่ฉันต้องทนรับคืออะไร?"

MDD = (Trough Value - Peak Value) / Peak Value × 100

ตัวอย่าง: พอร์ตของคุณไต่จาก $10,000 ขึ้นไปถึง $13,200 (จุดสูงสุด) จากนั้นร่วงลงไปที่ $10,890 ก่อนจะฟื้นตัว:

MDD = (10890 - 13200) / 13200 × 100 = -17.5%

ตัวชี้วัดย่อยที่สำคัญสองตัว:

  1. Drawdown Duration: จำนวนวันจากจุดสูงสุดถึงจุดต่ำสุด Drawdown -15% ที่กินเวลา 4 วันนั้นง่ายต่อจิตใจมากกว่า -15% ที่กินเวลา 2 เดือน
  2. Recovery Time: จำนวนวันจากจุดต่ำสุดกลับไปยังจุดสูงสุดก่อนหน้า การฟื้นตัวเร็ว = กลยุทธ์ที่ยืดหยุ่น
Max Drawdownระดับความเสี่ยงเหมาะสำหรับ
< 5%อนุรักษ์นิยมเทรดเดอร์ที่หลีกเลี่ยงความเสี่ยง, เงินทุนขนาดใหญ่
5% – 15%ปานกลางเทรดเดอร์ bot ส่วนใหญ่
15% – 25%เชิงรุกเทรดเดอร์ที่มีประสบการณ์และมีความเชื่อมั่น
> 25%ความเสี่ยงสูงเฉพาะกับการจัดสรรขนาดเล็กและผลตอบแทนคาดหวังสูงเท่านั้น

กฎคร่าว ๆ ที่มีประโยชน์: อย่านำกลยุทธ์ที่ maximum drawdown เกินกว่าที่คุณรับได้ทางอารมณ์คูณด้วย 1.5× มาใช้งานเด็ดขาด หาก Backtest ของคุณแสดง MDD -15% ให้เตรียมรับมือกับ -22.5% ในการเทรดจริง Drawdown ในการเทรดจริงเกือบจะเกินกว่าที่ Backtest ไว้เสมอ เนื่องจาก slippage, latency และสภาวะตลาดที่ไม่มีอยู่ในข้อมูลย้อนหลัง

Profit Factor

Profit Factor นั้นเรียบง่ายอย่างโหดร้ายและนำไปใช้ได้ทันที:

Profit Factor = Gross Profit / Gross Loss

ตัวอย่าง: bot ของคุณทำกำไรได้ $4,200 จากการเทรดที่ชนะ และขาดทุน $2,100 จากการเทรดที่แพ้:

Profit Factor = 4200 / 2100 = 2.0
Profit Factorการตีความ
< 1.0กลยุทธ์ที่ขาดทุน — ผลขาดทุนรวมเกินกว่าผลกำไรรวม
1.0 – 1.5ขอบเขตจำกัด — แทบไม่ทำกำไรหลังหักค่าธรรมเนียมและ slippage
1.5 – 2.0ดี — มีความได้เปรียบที่มั่นคง
2.0 – 3.0ยอดเยี่ยม — มีความได้เปรียบที่แข็งแกร่งและสม่ำเสมอ
> 3.0ตรวจสอบอย่างระมัดระวัง — อาจ overfit หรือมีจำนวนเทรดน้อยเกินไป

Win Rate และ Expectancy

Win Rate คือเปอร์เซ็นต์ของดีลที่ปิดด้วยกำไร:

Win Rate = Winning Deals / Total Deals × 100

Win Rate เพียงอย่างเดียวเป็นสิ่งที่ทำให้เข้าใจผิดอย่างอันตราย Win Rate 90% ฟังดูเหลือเชื่อ — แต่หากกำไรเฉลี่ยของคุณคือ $10 และขาดทุนเฉลี่ยคือ $200 คุณก็กำลังเสียเงิน นี่คือจุดที่ expectancy เข้ามามีบทบาท:

Expectancy = (Win Rate × Average Win) - (Loss Rate × Average Loss)

ตัวอย่าง: Win Rate 62%, กำไรเฉลี่ย $85, ขาดทุนเฉลี่ย $120:

Expectancy = (0.62 × $85) - (0.38 × $120) = $52.70 - $45.60 = $7.10 ต่อเทรด

แต่ละเทรดมี expectancy เป็นบวกที่ $7.10 ตลอด 100 เทรด คุณคาดว่าจะทำเงินได้ประมาณ ~$710


Win Rate vs. Risk-Reward: ตารางจุดคุ้มทุน

นี่คือหนึ่งในแนวคิดที่สำคัญที่สุดในการเทรด Win Rate และ risk-reward ratio (RR) มีความสัมพันธ์แบบผกผันกัน: คุณสามารถทำกำไรได้ด้วย Win Rate ต่ำหากผู้ชนะของคุณมีขนาดใหญ่พอเมื่อเทียบกับผู้แพ้

จุดคุ้มทุนของ Win Rate สำหรับ risk-reward ratio ใด ๆ คือ:

Breakeven Win Rate = 1 / (1 + Risk-Reward Ratio)
Risk-Reward RatioBreakeven Win Rateตัวอย่าง: ความเสี่ยง $100
1:0.566.7%ชนะ $50, แพ้ $100 — ต้องชนะ 2 ใน 3
1:1.050.0%ชนะ $100, แพ้ $100 — ต้องชนะครึ่งหนึ่ง
1:1.540.0%ชนะ $150, แพ้ $100 — ชนะ 2 ใน 5
1:2.033.3%ชนะ $200, แพ้ $100 — ชนะ 1 ใน 3
1:3.025.0%ชนะ $300, แพ้ $100 — ชนะ 1 ใน 4
1:5.016.7%ชนะ $500, แพ้ $100 — ชนะ 1 ใน 6

ตัวอย่างเชิงปฏิบัติ: DCA bot ที่มี Win Rate 40% และ risk-reward 1:3:

  • จาก 100 เทรด: 40 ชนะ × $300 = กำไร $12,000
  • 60 แพ้ × $100 = ขาดทุน $6,000
  • กำไรสุทธิ = $6,000 (profit factor = 2.0)

เปรียบเทียบกับ bot ที่มี Win Rate 70% และ risk-reward 1:0.5:

  • 70 ชนะ × $50 = กำไร $3,500
  • 30 แพ้ × $100 = ขาดทุน $3,000
  • กำไรสุทธิ = $500 (profit factor = 1.17)

กลยุทธ์ Win Rate 40% สร้างกำไรสุทธิมากกว่า 12 เท่า Win Rate คือความเย่อหยิ่ง; expectancy คือสติปัญญา

เมื่อประเมิน Backtest จงคำนวณ expectancy เสมอก่อนตัดสินใจนำไปใช้งานใด ๆ Win Rate สูงที่มี expectancy เป็นลบจะค่อย ๆ ดูดเงินจากบัญชีของคุณ — และความสบายใจทางจิตใจจากการชนะบ่อยครั้งจะทำให้คุณไม่ปิดมันจนกว่าความเสียหายจริงจะเกิดขึ้น


การวิเคราะห์ Equity Curve

Equity curve พล็อตมูลค่าพอร์ตของคุณตามช่วงเวลา มันคือภาพที่อัดแน่นด้วยข้อมูลมากที่สุดในรายงาน Backtest ใด ๆ

Smooth Staircase (อุดมคติ)

Equity curve ที่แข็งแรงจะไต่ขึ้นในลักษณะขั้นบันไดที่สม่ำเสมอ แต่ละขั้นแทนดีลที่เสร็จสมบูรณ์ ขั้นบันไดขึ้นมากกว่าลง และ Drawdown ระหว่างขั้นนั้นตื้นและสั้น

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

Jagged Sawtooth (น่ากังวล)

การเคลื่อนตัวขึ้นอย่างรวดเร็วตามด้วยการเคลื่อนตัวลงที่รวดเร็วพอ ๆ กัน สร้างรูปแบบซิกแซก เส้นทางโดยรวมอาจขึ้น แต่การเดินทางนั้นรุนแรง

มันบอกอะไรคุณ: ความแปรปรวนสูงในผลตอบแทน Max drawdown น่าจะมีขนาดใหญ่, Sharpe ratio น่าจะต่ำกว่า 1.0 และการเทรดจริงจะทดสอบขีดจำกัดทางอารมณ์ของคุณ แม้ Total Return จะเป็นบวก กลยุทธ์ก็ยังเปราะบาง

Hockey Stick (อันตราย)

แบนราบหรือติดลบเล็กน้อยตลอดช่วงเวลาส่วนใหญ่ จากนั้นพุ่งขึ้นอย่างฉับพลันโดยสร้างกำไรส่วนใหญ่ในไม่กี่เทรด

มันบอกอะไรคุณ: กลยุทธ์ขึ้นอยู่กับเหตุการณ์ตลาดเฉพาะ (การ crash, การ pump หรือแท่งเทียนขนาดใหญ่เพียงแท่งเดียว) เอาไม่กี่เทรดเหล่านั้นออกไป แล้วกลยุทธ์ก็ขาดทุน นี่ไม่ใช่ความได้เปรียบเชิงระบบ — มันคือโชคที่บังเอิญตรงกับช่วงเวลา Backtest ของคุณ

Cliff Drop (ถึงตาย)

ไต่ขึ้นอย่างมั่นคงตามด้วยการร่วงลงอย่างฉับพลันและหายนะที่ลบกำไรส่วนใหญ่หรือทั้งหมด

มันบอกอะไรคุณ: กลยุทธ์ไม่มีการป้องกันขาลง โดยทั่วไปเกิดจากการขาด Stop Loss, leverage ที่มากเกินไป หรือกลยุทธ์ที่โดยปริยายขายความผันผวน (เก็บพรีเมียมเล็ก ๆ จนกว่าเหตุการณ์หางจะกวาดทุกอย่างจนหมด)

รูปทรงเส้นโค้งSharpe โดยประมาณสาเหตุทั่วไปความเสี่ยงในการเทรดจริง
Smooth staircase1.5 – 2.5ความได้เปรียบที่สม่ำเสมอ, การบริหารความเสี่ยงที่เหมาะสมต่ำ — กลยุทธ์มีความทนทาน
Jagged sawtooth0.3 – 0.8ความผันผวนสูง, จุดเข้าที่ไม่สม่ำเสมอปานกลาง — Drawdown ทำให้เกิดการปิดด้วยความตื่นตระหนก
Hockey stickผันแปรอย่างมากกำไรกระจุกตัวในไม่กี่เทรดสูง — ประสิทธิภาพที่ทำซ้ำไม่ได้
Cliff dropติดลบหรือใกล้ 0ไม่มี Stop Loss, leverage มากเกินไปวิกฤต — มีโอกาสล้างบัญชี

การตรวจจับ Overfitting

Overfitting คือนักฆ่าเงียบของกลยุทธ์ที่ผ่าน Backtest กลยุทธ์ที่ถูก curve-fit ดูยอดเยี่ยมใน Backtest แต่ล้มเหลวในตลาดจริงเพราะมันจดจำ noise ในอดีตแทนที่จะจับรูปแบบตลาดที่แท้จริง

สัญญาณของ Overfitting

  1. ใช้ได้กับคู่เหรียญหนึ่ง แต่ล้มเหลวกับคู่ที่คล้ายกัน หากกลยุทธ์ BTC/USDT ของคุณให้ผลตอบแทน 35% แต่การตั้งค่าเดียวกันเป๊ะกับ ETH/USDT ให้ -5% กลยุทธ์น่าจะถูก fit เข้ากับประวัติราคาเฉพาะของ BTC

  2. ใช้ได้กับ timeframe เดียวเท่านั้น กลยุทธ์ที่สร้าง 28% ใน 6 เดือนล่าสุดแต่ได้ -3% ใน 6 เดือนก่อนหน้า ได้จดจำ regime เฉพาะหนึ่งไว้

  3. พารามิเตอร์ที่ถูก optimize มากเกินไป พารามิเตอร์เพิ่มเติมแต่ละตัวให้ optimizer มีองศาอิสระมากขึ้นในการ fit noise หากกลยุทธ์ของคุณมีพารามิเตอร์ 8+ ตัวที่ถูก optimize แยกกันทั้งหมด overfitting แทบจะเป็นเรื่องที่รับประกันได้

  4. ตัวชี้วัดที่ไม่สมจริง Sharpe > 4, Win Rate > 98%, การเทรดที่ไม่มีการขาดทุนเลย หรือ profit factor > 5 บน 50+ เทรด — ทั้งหมดชี้ไปยังกลยุทธ์ที่ถูกทรมานจนเข้ากับข้อมูล

  5. ประสิทธิภาพเสื่อมลงเมื่อเปลี่ยนการตั้งค่าเล็กน้อย กลยุทธ์ที่ทนทานจะแสดงการเปลี่ยนแปลงประสิทธิภาพแบบค่อยเป็นค่อยไปเมื่อคุณปรับพารามิเตอร์เพียงเล็กน้อย กลยุทธ์ที่ overfit จะพังทลายหากคุณเลื่อน RSI จาก 27 เป็น 28 หรือ Take Profit จาก 1.87% เป็น 1.90%

การทดสอบ In-Sample vs. Out-of-Sample

วิธีมาตรฐานในการตรวจจับ overfitting:

  1. แบ่งข้อมูลของคุณ นำประวัติทั้งหมดที่มีอยู่ (เช่น 12 เดือน) มาแบ่ง: 8 เดือนแรก = in-sample (training), 4 เดือนสุดท้าย = out-of-sample (validation)

  2. Optimize บน in-sample เท่านั้น หาพารามิเตอร์ที่ดีที่สุดของคุณโดยใช้เพียง 8 เดือนแรก

  3. ทดสอบบน out-of-sample โดยไม่เปลี่ยนแปลง ใช้พารามิเตอร์เหล่านั้นเป๊ะ ๆ กับ 4 เดือนสุดท้าย อย่าปรับอะไรเลย

  4. เปรียบเทียบผลลัพธ์ หากประสิทธิภาพ out-of-sample อยู่ภายใน 30-40% ของประสิทธิภาพ in-sample กลยุทธ์น่าจะมีความได้เปรียบที่แท้จริง หากประสิทธิภาพ out-of-sample เป็นลบหรือแย่ลงอย่างมาก กลยุทธ์ก็ถูก overfit

ตัวอย่าง:

  • In-sample (ม.ค.–ส.ค.): ผลตอบแทน 24%, Sharpe 1.8, Win Rate 67%
  • Out-of-sample (ก.ย.–ธ.ค.): ผลตอบแทน 11%, Sharpe 1.2, Win Rate 61%
  • คำตัดสิน: ประสิทธิภาพลดลงแต่ยังคงเป็นบวกอย่างมั่นคง นี่คือกลยุทธ์ที่ถูกต้องตามกฎหมาย

เปรียบเทียบกับผลลัพธ์ที่ถูก overfit:

  • In-sample (ม.ค.–ส.ค.): ผลตอบแทน 42%, Sharpe 3.1, Win Rate 88%
  • Out-of-sample (ก.ย.–ธ.ค.): ผลตอบแทน -4%, Sharpe -0.3, Win Rate 43%
  • คำตัดสิน: พังทลายโดยสิ้นเชิง กลยุทธ์จดจำข้อมูล training

อย่า optimize บนข้อมูล out-of-sample ของคุณเด็ดขาด เมื่อคุณแอบดูผลลัพธ์ out-of-sample และปรับพารามิเตอร์ตามนั้น คุณก็ได้ปนเปื้อนการทดสอบแล้ว ข้อมูลนั้นถูกเผาทิ้งไปแล้ว — คุณต้องการชุดข้อมูลใหม่ที่ยังไม่เคยเห็น นี่คือกฎที่ถูกละเมิดบ่อยที่สุดในการพัฒนากลยุทธ์

Walk-Forward Analysis

วิธีที่เข้มงวดกว่าการแบ่ง in/out เพียงครั้งเดียว:

  1. Optimize บนเดือน 1–6, ทดสอบบนเดือน 7
  2. Optimize บนเดือน 2–7, ทดสอบบนเดือน 8
  3. Optimize บนเดือน 3–8, ทดสอบบนเดือน 9
  4. เลื่อนไปข้างหน้าต่อไป

แต่ละช่วง out-of-sample ถูกทดสอบด้วยพารามิเตอร์ที่ optimize บนหน้าต่างที่แตกต่างกัน หากกลยุทธ์ทำงานได้ดีอย่างสม่ำเสมอในทุกช่วง out-of-sample แสดงว่ามันผ่านการทดสอบ overfitting ที่แข็งแกร่งที่สุดเท่าที่มี


สัญญาณอันตรายในผลลัพธ์ Backtest

รูปแบบบางอย่างในรายงาน Backtest ควรกระตุ้นความสงสัยทันที:

สัญญาณอันตรายทำไมจึงน่าสงสัยสิ่งที่ต้องตรวจสอบ
Sharpe Ratio > 4.0เกินกว่า hedge fund ระดับสูงสุด ไม่สมจริงสำหรับคริปโตตรวจหา look-ahead bias หรือ overfitting
Win Rate > 98%แทบไม่มีการขาดทุน = น่าจะไม่ปิดเทรดที่ขาดทุนตรวจสอบว่า Stop Loss หายไปหรือตั้งกว้างเกินจริงหรือไม่
การเทรดที่ไม่มีการขาดทุนเลยเป็นไปไม่ได้ในตลาดจริงเมื่อขนาดตัวอย่างมีนัยสำคัญตรวจสอบว่า bot ถือผู้แพ้ไว้อย่างไม่มีกำหนดหรือไม่ (unrealized losses)
Profit Factor > 5.0บน 50+ เทรด นี่เป็นเรื่องที่ไม่น่าจะเป็นไปได้ทางสถิติลดการ optimize และทดสอบ out-of-sample
Max Drawdown < 1%บ่งชี้ว่ากลยุทธ์ไม่เคยเผชิญความยากลำบากตรวจสอบว่าช่วง Backtest รวมการร่วงลงที่มีนัยสำคัญหรือไม่
ระยะเวลาดีลเฉลี่ย < 1 นาทีน่าจะใช้ประโยชน์จากความผิดปกติของ backtesting engineตรวจสอบ candle resolution และตรรกะการ fill
ดีลทั้งหมด < 10ขนาดตัวอย่างไม่เพียงพอสำหรับข้อสรุปทางสถิติใด ๆขยายช่วง Backtest หรือยอมรับว่าผลลัพธ์ไม่น่าเชื่อถือ

ตัวอย่างจริง: กลยุทธ์ A vs. กลยุทธ์ B

มาเปรียบเทียบผลลัพธ์ Backtest จริงสองชุดบน BTC/USDT ตลอด 6 เดือน (ม.ค.–มิ.ย.) ด้วยเงินทุนเริ่มต้น $10,000

กลยุทธ์ A: "Win Rate สูง"

ตัวชี้วัดค่า
Total Return8.2% ($820)
Win Rate95.3% (82/86 ดีล)
Average Win$18.40 (0.184%)
Average Loss$142.00 (1.42%)
Max Drawdown-6.8%
Sharpe Ratio0.72
Profit Factor1.38
ระยะเวลาดีลเฉลี่ย3.2 ชั่วโมง
Expectancy$18.40 × 0.953 - $142 × 0.047 = $10.86

กลยุทธ์ B: "นักล่าเทรนด์"

ตัวชี้วัดค่า
Total Return22.7% ($2,270)
Win Rate55.4% (36/65 ดีล)
Average Win$112.00 (1.12%)
Average Loss$48.50 (0.485%)
Max Drawdown-11.3%
Sharpe Ratio1.64
Profit Factor2.48
ระยะเวลาดีลเฉลี่ย18.6 ชั่วโมง
Expectancy$112 × 0.554 - $48.50 × 0.446 = $40.42

การวิเคราะห์

กลยุทธ์ A มี Win Rate 95% ที่ชวนหลงใหล แต่มันบรรลุสิ่งนี้ด้วยการเก็บกำไรเล็ก ๆ และถือผู้แพ้ไว้ แต่ละการชนะเฉลี่ย $18.40 ในขณะที่แต่ละการขาดทุนเฉลี่ย $142 — risk-reward ratio ราว 1:0.13 เทรดที่แย่ 4 ครั้งสามารถลบเทรดที่ชนะ 31 ครั้งได้ Profit Factor 1.38 แทบไม่เหลือ margin สำหรับ slippage และค่าธรรมเนียมในการเทรดจริง Sharpe ที่ต่ำ (0.72) ยืนยันประสิทธิภาพปรับตามความเสี่ยงที่อ่อนแอ

กลยุทธ์ B ชนะเพียง 55% ของเวลา แต่ผู้ชนะมีขนาดใหญ่กว่าผู้แพ้ 2.3 เท่า Expectancy ต่อเทรด ($40.42) สูงกว่ากลยุทธ์ A ($10.86) เกือบ 4 เท่า Sharpe ที่ 1.64 และ profit factor ที่ 2.48 แสดงผลตอบแทนปรับตามความเสี่ยงที่แข็งแกร่ง Max drawdown ที่สูงกว่า (-11.3% เทียบกับ -6.8%) คือราคาของกลยุทธ์ที่เข้าโพซิชันอย่างมีนัยสำคัญจริง ๆ

กลยุทธ์ B เหนือกว่าโดยปราศจากอคติแม้จะมี Win Rate ต่ำกว่า ในช่วงเวลาเดียวกัน มันทำกำไรได้มากกว่า 2.77 เท่าด้วย Sharpe ratio ที่มากกว่าสองเท่าของกลยุทธ์ A เมื่อเลือกระหว่างกลยุทธ์ ให้มุ่งเน้นที่ expectancy, profit factor และ Sharpe ratio — ไม่ใช่ Win Rate

เกิดอะไรขึ้นในสถานการณ์กดดัน?

ลองจินตนาการถึงการ crash ของ BTC อย่างฉับพลัน 12% ในช่วง Backtest:

  • กลยุทธ์ A: การ crash กระตุ้น Stop Loss 4 รายการพร้อมกัน (มันมีไมโครดีลที่เปิดอยู่จำนวนมาก) ขาดทุน: 4 × $142 = $568 ซึ่งลบเทรดที่ชนะ 31 ครั้งมูลค่า $570 เหตุการณ์ crash ครั้งเดียวลบกำไรหนึ่งเดือน
  • กลยุทธ์ B: การ crash กระตุ้น Stop Loss 2 รายการ ขาดทุน: 2 × $48.50 = $97 เทรดที่ชนะสองครั้ง ($224) ครอบคลุมการขาดทุนได้โดยมีส่วนเหลือ กลยุทธ์มีความทนทานเชิงโครงสร้าง

รวมทุกอย่างเข้าด้วยกัน: กรอบการประเมิน

เมื่อคุณได้รับรายงาน Backtest ให้ประเมินตัวชี้วัดตามลำดับนี้:

  1. Expectancy — เป็นบวกหรือไม่? มากเท่าใดต่อเทรด?
  2. Profit Factor — สูงกว่า 1.5 หรือไม่? สูงกว่า 2.0 หรือไม่?
  3. Maximum Drawdown — คุณรับมือกับ 1.5 เท่าของตัวเลขนี้ได้ทั้งทางจิตใจและการเงินหรือไม่?
  4. Sharpe Ratio — สูงกว่า 1.0 หรือไม่? หากสูงกว่า 3.0 ให้ตรวจหา overfitting
  5. Equity Curve — เป็น smooth staircase หรือความยุ่งเหยิงแบบ jagged?
  6. Out-of-Sample Performance — กลยุทธ์ทนทานบนข้อมูลที่ยังไม่เคยเห็นหรือไม่?
  7. Win Rate — เกี่ยวข้องเฉพาะในบริบทของกำไรเฉลี่ย vs. ขาดทุนเฉลี่ยเท่านั้น

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

สำหรับคำแนะนำในการ optimize กลยุทธ์ที่ผ่านกรอบนี้ ดูคู่มือ optimize botของเรา


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

Sharpe ratio ที่ดีสำหรับ bot เทรดคริปโตคือเท่าไหร่?

Sharpe ratio ระหว่าง 1.0 ถึง 2.0 ถือว่าดีสำหรับกลยุทธ์คริปโต ตลาดคริปโตมีความผันผวนมากกว่าหุ้นแบบดั้งเดิม ดังนั้นการได้ Sharpe สูงกว่า 2.0 อย่างสม่ำเสมอจึงยากจริง ๆ ค่าที่สูงกว่า 3.0 ควรได้รับการตรวจสอบเรื่อง overfitting สำหรับบริบท hedge fund เชิงปริมาณที่ประสบความสำเร็จจำนวนมากตั้งเป้า Sharpe ratio ระหว่าง 1.5 ถึง 2.5 หาก bot คริปโตของคุณได้ Sharpe 1.5 ใน Backtest ที่ครอบคลุมหลาย market regime นั่นถือเป็นผลลัพธ์ที่แข็งแกร่ง

ฉันจะคำนวณ max drawdown อย่างไรหากฉันมีหลายโพซิชันที่เปิดอยู่?

Maximum drawdown ควรคำนวณบน equity รวมของพอร์ต ไม่ใช่บนการเทรดแต่ละรายการ ณ จุดใดก็ตาม มูลค่าพอร์ตของคุณเท่ากับเงินสด + P&L ที่ยังไม่เกิดขึ้นจริงบนทุกโพซิชันที่เปิดอยู่ ติดตามมูลค่ารวมนี้ตามช่วงเวลา ระบุจุดสูงสุดและจุดต่ำสุดที่ตามมาที่ต่ำที่สุด แล้วคำนวณเปอร์เซ็นต์การลดลง เทรดเดอร์จำนวนมากทำผิดพลาดด้วยการดูเฉพาะ P&L ที่เกิดขึ้นจริง ซึ่งละเลยความเสี่ยง drawdown ของโพซิชันที่เปิดอยู่

ทำไมกลยุทธ์ของฉันจึงมี Sharpe ที่ดีแต่ profit factor ที่แย่?

สิ่งนี้อาจเกิดขึ้นเมื่อกลยุทธ์ทำการเทรดเล็ก ๆ ที่มีกำไรจำนวนมาก (สร้างผลตอบแทนที่สม่ำเสมอด้วยความผันผวนต่ำ → Sharpe สูง) แต่การเทรดที่ขาดทุนไม่กี่ครั้งมีขนาดใหญ่เมื่อเทียบกับการชนะแต่ละครั้ง (ฉุดอัตราส่วน gross profit / gross loss ลง → profit factor ต่ำ) มันบ่งชี้ว่ากลยุทธ์มี fat-tail risk: มันทำงานได้ดีเกือบตลอดเวลาแต่เปราะบางต่อการขาดทุนขนาดใหญ่เป็นครั้งคราว การกระชับ Stop Loss มักจะแก้ profit factor โดยแลกกับ Win Rate ที่ต่ำลง

ฉันควรใช้ Sharpe หรือ Sortino ratio?

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

ฉันต้องการกี่เทรดเพื่อให้ได้ตัวชี้วัดที่น่าเชื่อถือทางสถิติ?

อย่างน้อย 30 เทรดให้ความน่าเชื่อถือทางสถิติพื้นฐาน เพื่อให้ Sharpe ratio และ profit factor แตกต่างจาก random noise อย่างมีความหมาย ควรมี 50+ เทรด เพื่อให้ Win Rate เสถียรภายใน ±5% ของค่าจริง โดยทั่วไปคุณต้องการ 100+ เทรด หาก Backtest ของคุณแสดงเพียง 15 เทรด ให้ปฏิบัติต่อตัวชี้วัดทั้งหมดเป็นการประมาณคร่าว ๆ ไม่ใช่ตัวทำนายที่น่าเชื่อถือ ขยายช่วง Backtest หรือใช้กลยุทธ์ความถี่สูงขึ้นเพื่อสร้างจุดข้อมูลเพิ่มเติม

กลยุทธ์สองตัวที่มี Total Return เท่ากันสามารถแตกต่างกันอย่างมากในด้านคุณภาพได้หรือไม่?

แน่นอน กลยุทธ์ X อาจให้ผลตอบแทน 20% ด้วย Sharpe 0.6, max drawdown -25% และ equity curve แบบ cliff-drop ส่วนกลยุทธ์ Y อาจให้ผลตอบแทน 20% ด้วย Sharpe 1.8, max drawdown -8% และ smooth staircase curve จุดหมายเดียวกัน แต่การเดินทางต่างกันอย่างสิ้นเชิง กลยุทธ์ Y เหนือกว่าในทุกมิติที่ปรับตามความเสี่ยง Total Return คือตัวชี้วัดที่มีประโยชน์น้อยที่สุดในการเปรียบเทียบกลยุทธ์ที่มีโปรไฟล์ความเสี่ยงแตกต่างกัน


สร้างบัญชี

นำความรู้ไปใช้จริงด้วยการเปิดบัญชี Freya วันนี้

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