Technology • Education

FinML101 : วิธีหาจุดเข้า Order และเตรียม Data ที่ดีด้วย Machine Learning

15 Aug 2020 09:00 - 16 Aug 2020 17:00
Online Event
29 followers

ความสำคัญของคอร์สนี้

ส่วนประกอบของ Data Preparation สำหรับ Financial ML มีอยู่ด้วยกันทั้งหมด 3 ส่วน ได้แก่  

    1. Sampling (จุดเข้า order) 
    2. Feature 
    3. Labeling 
เนื่องจาก Financial Data เป็นข้อมูลในรูปแบบของ Time Series ประกอบกับ noise จำนวนมากที่เกิดขึ้นในตลาด ทำให้การเตรียมข้อมูลให้ ML สำหรับงานด้าน Finance มีเทคนิคเฉพาะตัวที่ไม่เหมือนงานด้านอื่น ๆ 

ในคอร์สนี้เราจะสอนวิธีการ Prepare Data ที่ถูกนำเสนอโดย Marcos Lopez อดีตผู้บริหารกองทุน AQR Capital Management (กองทุนที่บริหารเงินมากเป็นอันดับ 4 ของโลก) และผู้แต่งหนังสือ Advances in Financial Machine Learning ซึ่งมีเนื้อหาดังนี้ 

    1. วิธีการเข้า Order ในจุดที่ราคามีการเปลี่ยนแปลงอย่างมีนัยยะสำคัญ 
    2. วิธีการเข้า Order แบบ Event-Based 
    3. วิธีการ Label ข้อมูลโดย Triple Barrier Method 
    4. วิธีการ Label ข้อมูลโดยพิจารณาแนวโน้มของตลาด 
    5. วิธีวัดความแปรปรวนของตลาดโดยโมเดล GARCH 

จุดเด่นของคอร์ส  

    1. คณิตศาสตร์ที่ยากจะถูกแปลงเป็น "ภาพ" และถูกอธิบายด้วย "ภาษาที่คนทั่วไปเข้าใจได้" 
    2. นักเรียนเห็นภาพรวม (Overview) และความต่อเนื่องของเนื้อหา
    3. อธิบายทุกขั้นตอนอย่างละเอียดและรัดกุม (ย่อยมาให้อย่างดีแล้ว) 
    4. ตัวอย่างการคำนวณด้วยมือ (เพื่อให้นักเรียนได้ลงมือปฎิษัติและทบทวนความเข้าใจ) 
    5. ส่วนประกอบของคอร์สนี้มีครบทั้ง I) ทฤษฎี II) เขียน code III) การประยุกต์ใช้ 

คอรส์นี้เหมาะกับ 

    1. ผู้ที่ต้องการเตรียมข้อมูลเพื่อสร้าง Model Machine Learning สำหรับการเทรดในระดับเดียวกับ hedge fund 
    2. ผู้ที่ต้องการเข้าใจทฤษฎีการ Data Preparation และสามารถคำนวณทฤษฎีเหล่านั้นด้วยมือเป็น 
    3. ผู้ที่ต้องการเขียน Code Prepare Data โดยใช้ library mlfinlab 

 

ตัวอย่างปัญหาการ Sampling ด้วยวิธีที่งานวิจัยทั่วไปใช้กัน 



 

วิธีการที่นิยมใช้กันเรียกว่าวิธี Time Bars ซึ่งเป็นวิธีที่ถูกใช้งานอย่างแพร่หลายสำหรับผู้ทำงานวิจัยด้าน Finance ไอเดียของวิธีการนี้ก็คือ 
เราจะ sampling ทุก ๆ ช่วงเวลาที่แน่นอน เช่น sampling ทุก ๆ 30 นาที, sampling ทุก ๆ 4 ชั่วโมง 
ซึ่งปัญหาของวิธีนี้ก็คือ 
ในช่วงเวลาที่ตลาดมี information น้อย (ตลาดมีการเคลื่อนไหวของราคาน้อย ๆ) เราก็ยังคง sampling อยู่ด้วยความถี่เท่าเดิม ซึ่งทำให้เกิดการ sampling ที่มากเกินไป (over sampling)
และในช่วงเวลาที่ตลาดมี information เยอะ (ตลาดมีการเคลื่อนไหวของราคาเยอะ ๆ) เราก็ยังคง sampling อยู่ด้วยความถี่เท่าเดิม ซึ่งทำให้เกิดการ sampling ที่น้อยเกินไป (under sampling)
ในคอร์สนี้เราจะสอนวิธีการ sampling ที่ make sense กับการใช้งานในตลาดจริง ๆ ซึ่งมีอยู่ 3 วิธี ได้แก่ 

1. Imbalance Bars 
2. Run Bars 
3. CUSUM 
 

ตัวอย่างปัญหาการ Label ด้วยวิธีที่งานวิจัยทั่วไปใช้กัน 



 

วิธีการที่นิยมใช้กันเรียกว่าวิธี Fixed Time Horizon ซึ่งเป็นวิธีที่ถูกใช้กันอย่างแพร่หลายใน academic paper ไอเดียของวิธีการนี้ก็คือ 
การเปรียบเทียบราคา ณ. จุดเข้า order กับราคาหลังเข้า order ไปแล้วเป็นระยะเวลาที่แน่นอน (เช่น 1 วัน) [จุดออก order] 

  • ถ้าราคาออก order > ราคาเข้า order => เราจะ label ว่าขึ้น 
  • ถ้าราคาออก order < ราคาเข้า order => เราจะ label ว่าลง 

แต่วิธีการเทรดหุ้นไม่ได้เป็นแบบนั้น หุ้นเล่นเป็นรอบ และแต่ละรอบไม่มีกำหนดเวลาที่แน่นอน ทำให้วิธีการนี้ไม่ make sense ในการใช้งานจริง 
ซึ่งในคอร์สนี้เราจะสอนวิธีการ label ที่ make sense กับการใช้งานในตลาดจริง ๆ ซึ่งมีอยู่ 2 วิธี ได้แก่  
1. Triple Barrier Method 
2. Trend Scanning Method 


Agenda


วันที่เนื้อหา
Day 1 ครึ่งเช้า
(15/08/2020)

1. Introduction
    1.1. ทำความรู้จักหนังสือ Advances in Financial Machine Learning
    1.2. ทำความรู้จัก Marcos Lopez De Prado
    1.3. ภาพรวมเนื้อหาของคอร์ส

2. Sampling (Standard Bars)
    2.1. ทำความรู้จัก Time Bars
    2.2. ทำความรู้จัก Tick Bars
    2.3. ทำความรู้จัก Volume Bars
    2.4. ทำความรู้จัก Dollar Bars
    2.5. ตัวอย่างการคำนวณ Time Bars 
    2.6. ตัวอย่างการคำนวณ Tick Bars
    2.7. ตัวอย่างการคำนวณ Volume Bars
    2.8. ตัวอย่างการคำนวณ Dollar Bars
    2.9. เขียน code Time Bars 
    2.10. เขียน code Tick Bars
    2.11. เขียน code Volume Bars
    2.12. เขียน code Dollar Bars

3. Sampling (Imbalance Bars)
    3.1. ทำความรู้จัก Tick Imbalance Bars
    3.2. ทำความรู้จัก Volume Imbalance Bars
    3.3. ทำความรู้จัก Dollar Imbalance Bars
    3.4. ตัวอย่างการคำนวณ Tick Imbalance Bars
    3.5. ตัวอย่างการคำนวณ Volume Imbalance Bars
    3.6. ตัวอย่างการคำนวณ Dollar Imbalance Bars
    3.7. เขียน code Tick Imbalance Bars
    3.8. เขียน code Volume Imbalance Bars
    3.9. เขียน code Dollar Imbalance Bars

Day 1 ครึ่งบ่าย
(15/08/2020)
4. Sampling (Runs Bars)
     4.1. ทำความรู้จัก Tick Runs Bars
     4.2. ทำความรู้จัก Volume Runs Bars 
     4.3. ทำความรู้จัก Dollar Runs Bars
     4.4. ตัวอย่างการคำนวณ Tick Runs Bars
     4.5. ตัวอย่างการคำนวณ Volume Runs Bars
     4.6. ตัวอย่างการคำนวณ Dollar Runs Bars
     4.7. เขียน code Tick Runs Bars
     4.8. เขียน code Volume Runs Bars
     4.9. เขียน code Dollar Runs Bars
5. Event-Based Sampling
     5.1. CUSUM
6. วิธีการเตรียม Feature

Day 2 ครึ่งเช้า

(16/08/2020)

7. Labeling (Fixed-Time Horizon Method)
     7.1. ทำความรู้จัก Fixed-Time Horizon Method
     7.2. สมมติฐานเบื้องหลัง Fixed-Time Horizon Method
     7.3. ตัวอย่างการคำนวณ Fixed-Time Horizon Method
     7.4. เขียน code Fixed-Time Horizon Method
     7.5. ข้อดีของ Fixed-Time Horizon Method
     7.6. ข้อเสียของ Fixed-Time Horizon Method

8. Labeling (Triple Barrier Method)
     8.1. ทำความรู้จัก Triple Barrier Method
     8.2. สมมติฐานเบื้องหลัง Triple Barrier Method
     8.3. ตัวอย่างการคำนวณ Triple Barrier Method
     8.4. เขียน code Triple Barrier Method
     8.5. ข้อดีของ Triple Barrier Method
     8.6. ข้อเสียของ Triple Barrier Method

9. Labeling (Trend Scanning Method)
     9.1. ทำความรู้จัก Trend Scanning Method
     9.2. สมมติฐานเบื้องหลัง Trend Scanning Method
     9.3. ตัวอย่างการคำนวณ Trend Scanning Method
     9.4. เขียน code Trend Scanning Method
     9.5. ข้อดีของ Trend Scanning Method
     9.6. ข้อเสียของ Trend Scanning Method

Day 2 ครึ่งบ่าย

(16/08/2020)

10. วิเคราะห์ volatility ของตลาดด้วย GARCH
     10.1. ทำความรู้จัก GARCH
     10.2. สมมติฐานเบื้องหลับ GARCH
     10.3. ตัวอย่างการคำนวณ GARCH
     10.4. เขียน code GARCH

Instructor




อาจารย์ฆฤณ ชินประสาทศักดิ์
อาจารย์สอน AI และ Data Science
Quantitative Researcher
ผู้ก่อตั้งบริษัท Made by AI, Quant Metric


math, big data, deep learning, data science, ML
D574d8150e57a8461061c37ed9b755c0f68c3397
Organized by
TAUTOLOGY