10 ไอเดียใช้ Machine Learning ในงาน Finance พร้อมแนะนำ paper ไปอ่านกันให้จุใจรับปีใหม่ (part 2)

Cr. https://unsplash.com

เมื่อพูดถึงการใช้ Machine Learning ในงานด้านการลงทุนแล้ว คนส่วนใหญ่มักจะนึกถึง “การทำนาย” ราคาข้องหุ้นเป็นหลัก แต่จริงๆ แล้ว Machine Learning ไม่ได้ทำได้เพียงแค่การทำนายค่าราคาเท่านั้นในการลงทุน บทความนี้จะพาไปดู ไอเดียต่างๆ ในการนำ Machine Learning มาใช้ในการด้านการลงทุน โดยการสรุปของคุณ Marcos Lopez de Prado อดีตหัวหน้าทีมนักวิจัย Machine Learning แห่ง AQR Capital และ CIO แห่ง True Positive Technologies (TPT) CIO of True Positive Technologies (TPT) มาดูกันเลยค่ะว่า 10 ทางเลือกในการใช้ Machine Learning ในการลงทุน จะมีอะไรกันบ้าง

บทความที่แล้ว เราได้เขียนเกี่ยวกับไอเดียการใช้ Machine Learning ใน 3 หัวข้อแรกกันไปแล้ว บทความนี้เราจะต่อกันอีก 3 ไอเดียถัดมากันค่ะ สำหรับผู้อ่านท่านใดที่ต้องการอ่านบทความ Part 1 สามารถอ่านได้ที่ลิงก์ด้านล่างค่ะ

บทความตอนที่ 1 : 10 ไอเดียใช้ Machine Learning ในงาน Finance พร้อมแนะนำ paper ไปอ่านกันให้จุใจรับปีใหม่ (part 1)

4. Bet Sizing (การกำหนดขนาดของการลงทุน)

Cr. https://unsplash.com

โดยปกติแล้ว คนที่ใช้ Machine Learning เข้ามาช่วยในการลงทุน มักจะพุ่งตรงไปที่การ “ทำนาย” ราคาในอนาคต แต่ยังมีอีกหนึ่งเรื่องที่น่าสนใจไม่แพ้กัน ก็คือ เมื่อตัดสินใจว่าจะเปิด Order ไม่ว่าจะ “BUY” หรือ “SELL” แล้ว “ขนาดของ Order” ที่เราจะเปิดนั้น ควรจะเป็นเท่าไหร่?

จริงๆ แล้วมันไม่มี “วิธีที่ตายตัว” หรือ “วิธีที่ดีที่สุด” ในการกำหนดขนาดของการลงทุน แต่อย่างไรก็ตาม มันก็ไม่ได้สิ้นหวังเสียทีเดียว เพราะยังมี Machine Learning อยู่จำนวนหนึ่งที่สามารถนำมาประยุกต์ใช้งานในการหาขนาดของการลงทุน หรือ “Order’s size” ได้

ตัวอย่างที่จะนำมาให้ดูกันเรียกว่า “Meta-Labeling”

วิธีการนี้ก็คือ การเพิ่ม Machine Learning เข้าไปอีกตัวนึง เพื่อจัดการกับการตัดสินใจว่า “Signal” ที่ได้จากกลยุทธ์ (Strategy) นั้น มีความน่าเชื่อถือ ที่จะลงทุนตามมากแค่ไหน?

Machine Learning ที่เพิ่มเข้าไปควรจะเป็น Classification model และ แน่นอนว่า ก่อนที่ Machine Learning ตัวที่เพิ่มเข้าไปจะทำงานได้ก็ต้องมีการ “Train” หรือ การสอนโมเดลก่อน ในขั้นตอนนี้เราจะใช้ข้อมูล “ผลการทำงาน” ที่ได้จากแต่ละ Strategy (เช่น แต่ละ strategy อาจจะเป็น Machine Learning algorithm ที่แตกต่างกัน เป็นต้น) ให้นำผลการทำงานของ Strategy มาทำการ “labeling” โดย label 1 สำหรับการลงทุนที่ได้กำไร และ 0 สำหรับการลงทุนที่ขาดทุน

Cr. https://chrisalbon.com

จากนั้นนำ ข้อมูลเหล่านี้มา Train กับ Classifier ตัวที่เพิ่มเข้าไป (เช่น Random Forest หรือ Support Vector Machine เป็นต้น) ให้ทำการ Maximise ค่าความเชื่อมัน (Confidence) ของการเลือกโมเดล เช่น Maximise ค่า F1-score เป็นต้น เมื่อทำการ Train เรียบร้อยแล้ว ตัว Meta-labeling Machine Learning นี้จะถูกนำมาใช้ เป็นตัวกำหนด “ขนาด” ของการลงทุน หลังจากที่เราได้รับ Signal จากระบบของเรานั่นเอง

5. Feature Importance (กำหนดความสำคัญของตัวแปรที่เกี่ยวข้อง)

Cr. https://unsplash.com

เคยได้ยินคำเปรียบเปรย “Machine Learning” ว่าเป็น “black boxes” หรือ Machine Learning เปรียบเสมือน “กล่องดำ” กันมั้ยคะ? คำกล่าวนี้เป็นอีกหนึ่งความคิดที่โผล่ขึ้นมา เมื่อผู้คนนึกถึง Machine Learning หมายความว่า Machine Learning เป็น Algorithm ที่ไม่เปิดเผยวิธีการทำงาน เหมือนจับ Algorithm มาใส่ไว้ในกล่องดำ ที่ผู้ใช้ไม่จำเป็นต้องทราบว่าภายในกล่องมีอะไร เพียงแค่ทราบว่ากล่องนี้ทำหน้าที่อะไร หน้าที่ของผู้ใช้ก็คือ ใส่ข้อมูล Input เข้าไป แล้วเจ้ากล่องนี้ก็จะส่งผลลัพธ์หรือ ข้อมูล Output ออกมานั้นเอง

Cr. https://www.voipone.ch

สำหรับตัวผู้เขียนแล้ว ไม่ได้เชื่อว่าคำๆ นี้จะเป็นจริงทั้ง 100 % นะคะ มันอยู่ที่ “ผู้ใช้” ด้วย ว่าต้องการจะเป็นแค่ผู้ใช้ที่ต้องการใช้เพียงแค่ black box เท่านั้น แต่ไม่ต้องการเรียนรู้ที่จะปรับแต่งอะไรเลย หรือ ว่าต้องการเป็นผู้ใช้ที่มีความรู้ความเข้าใจในการทำงานของโมเดลด้วย ซึ่งการทำงานส่วนใหญ่ของโมเดล Machine Learning นั้น เป็นการทำงานที่ “White box” อยู่บนพื้นฐานทาง คณิตศาสตร์ ที่สามารถเข้าใจได้ทั้งสิ้น ไม่ว่าจะเป็นโมเดลที่ซับซ้อนอย่าง Deep Learning ก็ตาม เช่น ถ้าให้มนุษย์คำคิดนวณด้วยมือ ก็สามารถทำ Deep Learning ได้ เพียงแต่ อาจจะใช้เวลาที่มหาศาล ที่เท่ากับเป็นไปไม่ได้เท่านั้นเอง เราจึงต้องใช้คอมพิวเตอร์เข้ามาช่วย พอมีการใช้คอมพิวเตอร์เข้ามาช่วย ผู้ใช้ก็เริ่มปฏิเสธที่จะเรียนรู้ และพากันเชื่อว่า มันคือ Black box หรือ Magic box (กล่องมหัศจรรย์) นั่นเองค่ะ

ดังนั้น มันจะดีกว่ามากๆ ที่ผู้ใช้จะเรียนรู้ และ เข้าใจโมเดลอย่างถ่องแท้ เพื่อให้สามารถปรับปรุงค่าพารามิเตอร์ต่างๆ ในโมเดลได้อย่างเหมาะสม เพราะว่าจริงๆ แล้วแทบจะไม่มีโมเดลไหนหรอกค่ะ ที่จะสมบูรณ์ และ “พร้อมใช้” 100% กับข้อมูลทุกอย่างในโลกนี้ ถึงโมเดลจะดีแค่ไหน แต่ถ้าไม่มีการปรับแต่งที่ดีก็ไม่สามารถทำงานได้อย่างมีประสิทธิภาพ และ สุดท้ายก็จะได้ผลลัพธ์ที่ไม่ต่างจาก Garbage in, Garbage out หรอกค่ะ

Cr. https://www.dataquest.io

Garbage in, Garbage out (GIGO) คือ เหตุการณ์ที่ไม่ว่าโมเดล Machine Learning จะดีแค่ไหน แต่ถ้าเราให้ข้อมูลที่แย่ (ข้อมูลที่เป็นขยะ หรือ ไม่มีประโยชน์ใดๆ ในการเรียนรู้) โมเดลนั้น ก็จะให้ผลลัพธ์ที่แย่ออกมา ไม่ต่างจากขยะเช่นกัน

มาเข้าเรื่องกันดีกว่าค่ะ เมื่อเราตัดสินใจว่า จะเป็นผู้ใช้ที่มีความรู้ความเข้าใจในตัวโมเดล Machine Learning ก่อนการใช้งานกันแล้วล่ะก็ เรื่องแรกที่เราสามารถทำความเข้าใจได้ ก็คือ “Feature Importance” ซึ่งก็คือการวิเคราะห์ว่า ข้อมูลส่วนไหน คือข้อมูลที่มีประโยชน์ต่อการทำนาย นั่นเองค่ะ

ลองนึกๆ ดูนะคะว่า ข้อมูลในโลกนี้มีมากมาย (ต้องยกเครดิตให้ความก้าวล้ำของเทคโนโลยี) แต่จะมีข้อมูลซักกี่ตัวที่ส่งผล หรือ มีประโยชน์ต่องานที่เราต้องการทำจริงๆ ในส่วนนี้นี่เองที่ Machine Learning สามารถเข้ามาร่วมมีบทบาทด้วย เนื่องจาก Machine Learning มีความสามารถในการ “ระบุ หรือ ค้นหา” รูปแบบของข้อมูล จากข้อมูลที่มี High dimension และ “รูปแบบ” หรือ Patterns ที่ค้นพบนี่เอง ที่จะสามารถนำมา Backward analysis เพื่อค้นหา Features ที่มีความเกี่ยวข้องสัมพันธ์กับมันได้

Cr. Dr. Marcos Lopez de Prado

จากรูปเป็นตัวอย่างการวิเคราะห์ความสำคัญของ Feature หรือ Factor แต่ละตัว ว่ามีความสำคัญเพียงใด โดยวิเคราะห์ว่าเมื่อทำการตัด Feature นั้นๆ ออกแล้ว ค่าความถูกต้องของการทำงานของ Machine Learning model มีค่าเฉลี่ยการลดลง ของค่า “Accuracy” (ในการทดลองอื่น อาจจะมีการวัดค่า “Impurity” ด้วย) มากน้อยเพียงใด ทดสอบบนข้อมูลที่สร้างขึั้นมาโดยเฉพาะในการทดสอบ โดยผลการทดลองพบว่า Machine Learning สามารถระบบ Features ที่สำคัญ (prefix “I_”) ได้อย่างถูกต้อง แม้ในข้อมูลที่มี Noise หรือ ค่ารบกวนสูงมาก (เช่นเดียวกับข้อมูลจาก stock market)

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

López de Prado, M. (2018): Advances in Financial Machine Learning. Wiley, First Edition.

López de Prado, M. (2019b): Machine Learning for Financial Researchers. CambridgeUniversity Press, First edition.

6. Controlling for Effects and Interaction (การควบคุมผลกระทบ และ ความสัมพันธ์ภายในของตัวแปร)

หัวข้อนี้เป็นการพูดถึงการควบคุมผลกระทบ หรือ “Controlling for Effects” เพื่อให้แน่ใจว่า “ค่าที่เราทำนาย” นั้น เป็นผลมาจาก “ตัวแปร” ที่เราสนใจเท่านั้น

เป็นเรื่องปกติในการศึกษาทางด้าน Econometric ที่จะมีการศึกษาสำคัญ (Significant) ของตัวแปร X ในการอธิบาย หรือ ทำนายค่า ตัวแปร y ในขณะที่ต้องควบคุมผลกระทบจากตัวแปร Z ดังสมการด้านล่าง

Cr. Dr. Marcos Lopez de Prado



ในที่นี้ เราต้องการศึกษาผลกระทบของตัวแปร X ในขณะที่ควบคุมผลกระทบจากตัวแปร Z ในการคำนวณค่า y


ตัวอย่างการนำมาใช้งาน เช่น สมมุติว่าเราทำการเลือก Features ที่สำคัญที่จะใช้ในการทำนาย คือ X1 และ X2 เราก็ต้องนำ Features นี้มาทดลองใช้ในการทำนาย ซึ่งในการทำนายนี้ เราก็จะมีการควบคุมผลกระทบจากตัวแปร Y (ตัวแปรอื่นๆ ที่เราต้องการทดสอบว่าไม่มีผลต่อการทำนาย เช่น การเคลื่อนที่ของ index เป็นต้น) เพื่อให้มั่นใจว่าผลลัพธ์ที่ได้จากการทำนายนั้น ส่งผลมาจาก Features X1, X2 ที่เราเลือกไว้จริงๆ ไม่ใช่ผลกระทบจากค่าอื่นๆ เป็นต้น

ในการทำงานนี้ Mullainathan and Spiess ได้มีการนำเสนองานวิจัยที่บอกว่า สามารถใช้ Machine Learning มาใช้ในการแทนที่ค่า Z ด้วยผลจากการทำนายค่า y ด้วย feature Z ซึ่งวิธีการที่นำเสนอนี้เรียกว่า “The semi-parametric appoach” ซึ่งสามารถติดตามอ่านรายละเอียดได้ ใน Paper ด้านล่างค่ะ



Machine Learning: An Applied Econometric Approach

เป็นยังไงกันบ้างคะ ผ่านไปแล้วกับอีก 3 ไอเดียสำหรับการใช้ Machine Learning ในการลงทุน เป็นไอเดียที่ยังไม่ได้รับความสนใจกันอย่างแพร่หลาย (เพราะนักลงทุนส่วนใหญ่ให้ความสำคัญกับการทำนายราคามากกว่า) ส่งผลให้ไอเดียใหม่ๆ เหล่านี้ยังมีพื้นที่ในการศึกษาและ ยังมีช่องทางในการลงทุนรอรับอีกมาก เพื่อไม่ให้บทความนี้ยาวเกินไป ผู้เขียนก็จะขอจบไว้ที่ไอเดียข้อที่ 6 กันก่อนนะคะ ส่วนอีก 4 ไอเดียสุดท้าย จะตามมาเร็วๆนี้ค่ะ

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s