เพิ่ม Win rate การเทรดด้วย Detect False Signal ด้วย ML

Mastering Algorithmic trading with Python

NUTHDANAI WANGPRATHAM
QUANT I LOVE U
1 min readDec 15, 2022

--

ความสำเร็จของระบบเทรดที่สำคัญคืออัตตรากำไรหรือ Win Rate การออกแบบระบบที่ Signal ในการเทรดที่มีความแม่นยำสูงเป็นได้ได้ยากและมีโอกาศในการเกิด Over fitting ได้ค่อนข้างมากทำให้ระบบเทรดในบ้างครั้งเมื่อนำไปใช้งานจริงไม่ประสบความสำเร็จทั้งๆที่ผลทดสอบย้อนหลังดีมาก

ทางออกของปัญหานี้ไม่ใช่การ Improve win rate ด้วยการใส่ตัวแปรหาโมเดลทที่แม่นยำ แต่อาจเป็นการหา False Signa หรือสัญญาณหลอกที่เกิดขึ้นในระบบเทรดวันนี้เราจะพยายามใช้ ML ในการ Detect False Signal กัน

True Signal และ False Signal

False Signal คือเหตุการณ์ที่เกิดสัญญาณการซื้อขายขึ้นแต่ทิศทางของราคาไม่เป็นไปในทางที่เราคาดหวัง

เหตุที่เกิด True Signal และ False Signal เพราะว่าสมมติฐานในการเทรดของกลยุทธ์ที่ต่างกัน โดยเราสามารถแยกออกเป็น 3 ส่วน คือ Trend following, Sideway และ การหาจุดกลับตัวของราคา(mean reversion) เราจะไม่สามารถใช้กลยุทธ์เทรดที่อยู่บนสมมุติฐานหนึ่งในภาวะตลาดอื่นได้ เช่นกลยุทธ์ที่ใช้เส้น EMA สั้นตัดยาว จะใช้ได้กับภาวะราคา Trend following หรือ Bollinger brand ใช้ได้ดีกับภาวะตลาด Sideway

การ Label ตัวแปร

การ Label ตัวแปรเพื่อ Detect False Signal มีความซับซ้อนและเป็นทั้งศาสตร์และศิลป์เราไม่สามารถใช้การ Label โดยดูจากข้อมูลในอนาคตเพียงอย่างเดี่ยวแต่การ label ตัวแปรเพื่อ Detect False Signal เราจำเป็นต้องกำหนดจุดตัดของเวลาและราคาโดนยทั่วไปมี 2 วิธีคือ Opposite Trade Signal Method และ Triple Barrier Method

Opposite Trade Signal Method

คือการ label เมื่อ Trade Signal มีความหมายตรงกันข้ามกันสมมติฐานของสัญญาณโดยวัดจากเมื่อเกิดสัญาณจนถึงเกิดสัญญาณจรงกันข้าม เช่น EMA สั้นตัดยาวอยู่บนสมมุติฐายเมื่อแนวโน้มเป็นขาขึ้น ดังนั้น False Signal จะเกิดขึ้นเมื่อ EMA สั้นตัดยาว แต่โน้มโน้มเป็นขาลงโดยเราอาจจะใช้ค่าความชัน อัตราการเปลี่ยนแปลงราคาหรืออะไรก็ตาม

Triple Barrier Method

Triple Barrier Method ใช้การ Label เมื่อราคาเคลื่อนที่ไปในทิศทางใดทิศทางหนึ่งเกินกว่าที่เรากำหนด หรือราคาไปถึงค่าที่เรากำหนดหรือไป การ Label ด้วยวิธี Triple Barrier Method เป็นการ Label ที่สอดคล้องกับพฤติกรรมการนำระบบเทรดไปใช้ในโลกแห่งความเป็นจริง เพราะสามารถจำกัดผลขาดทุนสูงสุด (Drawdown) ของการเทรดได้

การเลือก Feature

เราไม่สามารถสร้าง Feature เพื่อ Detect False Signal ด้วยตัวแปรใดก็ได้เราจำเป็นต้องเลือก Feature เพื่อ Detect False Signal ในการเทรด เราควรคำนึงถึงสมมุติฐานและทฤษฏีที่เกี่ยวข้องกับ Signal ในการเทรดนั้นด้วย

ยกตัวอย่างเช่น Trade Signal มีสมมุติฐานในเรื่องของแนวโน้วเราก็ควรมีตัวแปรในการทำ Feature ที่บ่งบอกถึงแนวโน้มของราคา

สรุป

การ Detect False Signal จะช่วยลดสัญญาณหลอกของระบบเทรดให้ลดลงและช่วยให้เราสามารถลดการเทรดให้มีจำนวนที่น้อยลงได้ด้วยซึ่งนั้นหมายถึงการเพิ่มประสิทธิภาพของระบบเทรด

--

--

NUTHDANAI WANGPRATHAM
QUANT I LOVE U

I am a learner and have a multipotential life. You can contact me at nutdnuy@gmail.com