Basic Pair Trading with cointegration

สืบเนื่องจากที่แอดได้ไปเข้าร่วมประชุมกับทีมงาน Quantopian ที่ลอนดอน เมื่อปีที่แล้ว หัวข้อที่ทำ workshop กันในงานประชุมก็คือ การพัฒนาเทคนิคการ Hedging ด้วยการทำ Pair Trading ด้วย การใช้ค่าทางสถิติ Cointegration เข้ามาช่วย ซึ่งเป็นหัวข้อที่น่าสนใจมากอีกหัวข้อนึง  หลังกลับมาจากงานประชุม แอดจึงได้เขียนบทความขึ้นมา 2 บทความ เพื่ออธิบายทฤษฏี และ แนวทางการประยุกต์ใช้ Cointegration ในการทำ Pair Trading ซึ่งสามารถหาอ่านได้ใน blog (เดี๋ยวจะลงลิงก์ด้านล่างให้นะคะ) หลังจากลงบทความไปแล้ว ได้รับความสนใจอย่างมากหลังไมค์ มีแฟนเพจหลายท่านต้องการนำไอเดียไปพัฒนาต่อ ทางเราจึงนำทฤษฏีนี้เข้ามาในคอร์สใหม่ เพื่อ ทำการพัฒนา และ Backtest อย่างละเอียด ซึ่งตอนนี้กำลังอยู่ระหว่างการจัดทำ ระหว่างนี้ เลยนำไฟล์ Source code มาฝากหลายๆ ท่านที่สนใจกันก่อนค่ะ เผื่อใครอยากนำไปพัฒนาต่อ และ Backtest ด้วยตัวเอง ไม่ต้องรอเรียนก็จะได้สามารถทำได้  (สำหรับการสอนอย่างละเอียดรวมถึงการ Backtest เพื่อใช้งานจริง…

“การตั้งเวลาทำงาน” เรื่องเล็กๆ ที่ประโยชน์ไม่เล็ก!

Python “time” library เรื่องง่ายๆ ที่คนไม่ค่อยใส่ใจกัน แต่ต่อไปจะมีประโยชน์มากมายในการ feed ข้อมูล live stream จาก Brokers หรือ ผู้ให้บริการข้อมูล real-time ต่างๆ มาทำความรู้จักมันกันดีกว่า ง่ายๆ ไม่เกิน 10 นาที รู้เรื่อง!!! https://www.youtube.com/watch?v=GwPK-EgrM6Y&t=5s

ข้อมูล Open High Low Close ตาม Time Frame ที่เรารู้จักมีจุดอ่อนอย่างไร?

เชื่อว่าหลายๆคนที่ลงทุนอยู่น่าจะคุ้นเคยกับข้อมูลการลงทุน Format แบบ Open, High, Low, Close ที่มักจะตัดแบ่งตามช่วงเวลาหนึงๆ วันนี้เราจะมาแนะนำให้รู้จัก Standard Bar กันครับก็จะแบ่งด้วย 3 แบบคือ Time bar, Volume bar และ Dollar bar โดยข้อมูลที่พวกเรารู้จักกันดีก็คือ Time bar นั่นเอง แต่ข้อมูลแต่ละแบบก็มีข้อดีข้อเสียต่างกันไปไปครับ Time bar time bar ก็คือ สิ่งที่เรารู้จักกันดีครับคือการเก็บข้อมูลตามช่วงเวลาหนึงๆ เช่น ตัดทุก 15, 30, 60 นาที, ชั่วโมง , รายวัน, สัปดาห์ กันดี โดยมักจะประกอบไปด้วย time stamp ตามด้วย open high low close volume หรือ bid ask…

“Factor investing” เส้นทางสายใหม่ใน Bond market

บทความนี้เขียนเมื่อ วันที่ 9 กรกฏาคมที่ผ่านมานี่เอง พูดถึงแนวโน้มการเปลี่ยนแปลงการลงทุนภายใน Bond markets ว่า ในยุคที่เรากำลังอยู่ในช่วงตลาดขาขึ้นแบบนี้ กลุ่มของ Hedge Funds/ Funds จำเป็นต้องมีการแข่งขันกันอย่างเข้มข้น เพื่อให้นักลงทุนไม่ถอดใจหันหนีไปลงทุนกับ Index Tracking Funds กันหมด  และ แนวทางของกลยุทธ์ที่ผู้เขียนคาดว่าจะเป็นแนวโน้มใหม่ที่เหล่า Hedge Funds จะหันหัวเรือเข้าไปหา เพื่อให้มีค่า Beta ที่สูงขึ้น และ นำไปสู่การรักษานักลงทุนเอาไว้กับตัวเอง ก็คือ “Factor Investing” แนวคิดนี้ได้ถูกนำเสนออย่างเป็นทางการใน paper ของคุณ Patrick Houweling, Porfolio Manager แห่ง Robeco – the Investment Engineers จากกรุงลอนดอน ประเทศอังกฤษ ในหัวข้อ “Factor Investing in Corporate Bond Mark” (ลงลิงก์ให้ท้ายบทความ)…

ทำไมการวิเคราะห์ Technical Analysis ถึงใช้ไม่ได้ผลเหมือนเดิมอีกแล้ว

วันนี้ต้องออกตัวก่อนเลยนะครับ ว่าผมไม่ได้เขียนบทความนี้เอง แต่เป็นการแปลมาจากบทความของคุณ David H Bailey อีกทีหนึงครับ David H Bailey เป็นใคร? David H Bailey เป็นใครกัน ท่านได้ Ph.D คณิตศาสตร์ จาก Standford และทำงานเป็นนักวิจัยมีงานวิจัยเจ๋งๆออกมามากมาย ก่อนอื่นต้องบอกเลยว่าอาจารย์ท่านไม่ใช่คนโนเนม หรือนักวิจัยที่อยู่แต่กับคณิตศาสตร์อย่างเดียวนะครับ เป็นนักวิจัยที่ออกงานวิจัยร่วมกับ Marcos Lopez de Prado ที่เป็น Head of Machine Learning ของกองทุน AQR CAPITAL MANAGEMENT (กองทุน ขนาดใหญ่ 2 ของโลกเป็นรองเพียงแค่ Bridgewater Associates ของ Ray Dalio เท่านั้น และ ARQ เป็นHedge Funds ที่เป็น Quant Funds อีกด้วย)…

ดึงข้อมูล Intraday stock data ฟรี ง่ายๆ ด้วย Python (Alpha Vantage API)

โดยปกติ AlgoAddict จะทำงานกับข้อมูลรายวัน (Daily) เป็นหลัก แต่บทความนี้ขอเอาใจผู้อ่านที่สนใจข้อมูลระหว่างวัน (Intraday) กันหน่อยค่ะ ด้วยกันแนะนำ Website ที่มีการให้บริการข้อมูล Intraday แบบไม่เสียเงิน! Website ที่ว่านี้ก็คือ “www.alphavantage.co” นั่นเองค่ะ ก่อนอื่น ลองเข้าไปดูหน้าตาเว็บกันก่อนเลยค่ะ Alpha Vantage ทำอะไร? Alpha Vantage เป็นกลุ่มของนักวิจัย วิศวกร และ นักลงทุน ที่รวมตัวกันเพื่อทำวิจัยด้านเทคโนโลยี และ ให้บริการ Free API (application program interface) สำหรับข้อมูล Stock, Forex และ Digital/Crypto currencies Alpha Vantage ไม่ได้พัฒนาด้วย Python! ถึงแม้ Alpha Vantage จะให้บริการข้อมูลฟรี ที่เราต้องการ แต่ …. ถ้าเราตามไปอ่าน “Alpha…

ทำไม กองทุนอันดับหนึ่งของโลก อย่าง “Bridgewater” (by Ray Dalio) ที่ไม่เคยประกาศกลยุทธ์ใหม่เลยมาตั้งแต่ปี 1996 จึงตัดสินใจเปิดตัวกลยุทธ์ “Optimal Porfolio” อย่างเป็นทางการ?

เป็นที่ทราบกันดีอยู่แล้วให้กลุ่มผู้สนใจการลงทุนว่า ถ้าจะให้พูดถึงกองทุนระดับบิ๊กๆ ของโลก ชื่อของ กองทุน “Bridgewater Associates” ของนักลงทุนคนดังอย่าง คุณ “Ray Dalio” ต้องลองเข้ามาในหัวแน่นอน ควบคู่กันกันกับกองทุน “AQR Capital management” ที่นักลงทุนสายวิชาการอย่างคุณ “Marcos Lopez de Prado” ที่เราเคยพูดถึงกันไปแล้วทำงานอย่ด้วย ก่อนอื่นเรามาดู Performance ล่าสุดของ 2 กองทุนนี้กันก่อนดีกว่าค่ะ ขอยกการจัดอันดับอย่างเป็นทางการของ Quarter ที่ 2 ประจำปี 2018 มาให้ดูดังตารางด้านบนค่ะ (ใครอยากดูอันดับแบบเต็มๆ ทั้ง 113 อันดับ ขอเชิญตามลิงก์ท้ายบทความได้เลยค่ะ) อย่างที่พูดไปข้างต้น กองทุนอันดับหนึ่งคือ Bridgewater Associates กับ Asset under Management(AUM) $132.8 billions ตามมาติดๆ ด้วยกองทุนของคุณ Marcos สุดหล่อสายวิชาการ ไม่หวงไอเดียที่ผู้เขียนชื่นชอบมากๆ และติดตามมาตลอดไปอย่าง…

Basic Pair Trading (2) : การประยุกต์ใช้ Cointegration

บทความนี้เขียนมาจากการเข้าร่วมสัมมนากับกลุ่ม Quantopain ที่กรุงลอนดอน ประเทศอังกฤษ ในช่วงต้นปีที่ผ่านมา ส่วนหนึ่งของสัมมนาได้กล่าวถึง Basic pair trading strategy ที่มีการประยุกต์ใช้ค่า Cointegration เราจะตัดส่วนนี้มาพูดถึงกันในบทความชุดนี้ค่ะ บทความแรก Basic Pair Trading (1) สามารถหาอ่านได้จากลิงก์นี้ https://algoaddict.com/blog/89211/pairtrading-1 Cointegration idea แนวคิดหลักๆ ของ Cointegration ที่เราจะนำมาใช้กันใน basic pair trading ก็คือ การใช้ค่า Cointegration เพื่อหาหุ้นที่มี “Economic link” ต่อกัน โดยที่ หุ้น 2 ตัวจะ Cointegrated กันก็ต่อเมื่อความแตกต่างของข้อมูล 2 ชุด มีลักษณะเป็น “Mean Reverting” หรือ พูดง่ายๆ ก็คือ ค่าวิ่งไปมาอยู่รอบๆ ค่า Mean ของตัวเองนั้นเอง ตัวอย่างเช่น…

Basic Pairs Trading (1) : Idea of Cointegration

Pair trading เป็นอีกหนึ่ง strategy ที่ได้รับความสนใจอย่างกว้างขวางในกลุ่มของ Hedge funds ในบทความนี้ก็จะขอถือโอการมาแบ่งบันความรู้ในเรื่องการใช้เทคนิค Cointegration ในการทำ pair trading กันค่ะ Pair trading? เป็นเทคนิคการเทรดอย่างนึงที่มีการประกันความเสี่ยงโดยทำการเทรดเป็น “คู่” เวลาเปิด order ก็จะมีการเปิดสถานะ long และ short พร้อมๆ กัน บนคู่หุ้นที่ต้องการ” Pair trading ถือ เป็นเทคนิคการ hedging อย่างหนึ่งที่ได้รับความนิยมกันอย่างแพร่หลายในกลุ่ม hedge funds จนบางครั้งมีการเข้าใจผิดกันไปว่า pair trading กับ hedging นั้นเป็นเทคนิคเดียวกัน ในความเป็นจริงแล้วทั้งสองเทคนิคนี้มีความต่าง คือ การ hedging เป็นเทคนิคการเทรดที่มีการพยายามประกันความเสี่ยงด้วยวิธีการที่หลากหลาย (ซึ่งอาจจะเป็นวิธีอื่นที่ไม่ใช่ pair trading ก็ได้) ส่วน pair trading เป็นหนึ่งในวิธีการทำ hedging ที่ใช้เฉพาะเทคนิคการเทรดเป็นคู่ เท่านั้น…

หุ้นตัวไหนเป็นหุ้น Attack ตัวไหนเป็นหุ้น Defense (มารู้จักกับ Beta และ Systematic/Unsystematic riskกันครับ)

Beta ก็คือตัววัด Volatility ของหุ้นตัวหนึงแหละครับแต่คราวนี้เราจะไม่วัดแค่กับตัวหุ้นเองอีกแล้ว จะเห็นว่าที่ผ่านมาเราจะวัดความเสี่ยงด้วย Standard Deviation หรือ Volatility กับตัวหุ้นนั้นๆเองใช่ไหมครับถ้าค่ามันสูงก็แปลว่ามันเหวี่ยงมาก ถ้าค่ามันต่ำก็จะแปลว่ามันเหวี่ยงน้อย แต่นั้นเรายังไม่ได้กล่าวถึง Systematic/Unsystematic Risk เลยครับ มาวันนี้เราจะมาดูกันว่า Systematic/Unsystematic Risk คืออะไร ทำไมเราต้องหุ้นไปวัดกับตลาดด้วย ความเสี่ยงที่เป็นระบบ(Systematic Risk) ก็คือ ความเสี่ยงที่เป็นระบบ ความเสี่ยงอันเกิดจากการเปลี่ยนแปลงของราคาหุ้นที่เกิดจาก “ระบบ” หรือเกิดจาก Factor ที่มีผลกระทบธุรกิจทั้งธุรกิจหรือตลาดทั้งตลาด เช่น การขึ้น/ลด ภาษีนโยบายของชาติ การเกิดสงคราม เกิดสภาวะเศรษฐกิจตกต่ำ เป็นต้น ซึ่งความเสี่ยงเหล่านี้เกิดจากปัจจัยของที่สร้างความผันผวนที่มีระบบทั้งระบบ(เรียกว่าตลาดก็ได้) เป็นความเสี่ยงที่มาจากแวดล้อมภายนอกที่เราไม่อาจทำอะไรได้ ความเสี่ยงเหล่านี้เราไม่อาจแก้ได้ด้วยการกระจายความเสี่ยง นั้นทำให้ Systematic Risk ได้ถูกรู้จักกันในอีกชื่อนหนึงคือ Undiversified risk เพราะมันเกิดกันทั้งระบบนั้นเอง ความเสี่ยงที่ไม่เป็นระบบ (Unsystematic Risk) ก็คือความเสี่ยงที่เกิดกับบริษัทที่เราไปลงทุนโดยเฉพาะเจาะจงครับไม่ได้แอฟเฟคไปทั้งระบบครับ เป็นปัจจัยภายในของตัวบริษัท หรือ ธุรกิจนั้นๆเอง เช่น CEO ของบริษัทลาออก…

หลักการทำงานของ ARIMA ในการทำนายค่าของ Time Series

ARIMA model หรือ ชื่อเต็มๆ ก็คือ “(AutoRegressive Integrated Moving Average)” คิดว่าหลายท่านที่ทำงานคุ้นเคยกับข้อมูลที่มีลักษณะเป็นอนุกรมเวลา (Time Series) คงจะเคยได้ยินกันนะครับ โมเดลนี้ สำหรับตัวผมเอง ก็เป็นโมเดลที่ศึกษาเป็นโมเดลแรกๆ เลยก็ว่าได้ ตั้งแต่ก้าวเข้ามาทำงานกันข้อมูลหุ้น วันนี้ ผมจะมาเล่าให้ฟังเท่าที่เข้าใจนะครับ ว่าเจ้า ARIMA นี่มันมีหลักการทำงานอย่างไร ARIMA(AutoRegressive Integrated Moving Average) ประกอบไปด้วย Combination ของ Time Series 3 เทคนิค คือ AR (Autoregressive), I (Integrated), MA (Moving average) โดยผมจะค่อยๆ อธิบายให้ฟังทีละตัวนะครับ แต่โดยหลักๆ แล้วทุกเทคนิค คือการร่วมกันกำจัด “Noise” ออกจากข้อมูลเพื่อพยายามลด Error term ให้ได้มากสุดจนสามารถมั่นใจได้ว่า ข้อมูลนั้น Reliable หรือ เชื่อถือได้ ซึ่งจะทำให้การทำนาย (Forecast) ในขั้นตอนต่อไปมีประสิทธิภาพมากขึ้นนั่นเองครับ…

7 ปัจจัยอันตรายที่ทำให้กองทุนที่ใช้ Machine Learning ต้องพบจุดจบ ในมุมมองของคุณ Marcos Lopez de Prado

❌ 7 ปัจจัยอันตรายที่ทำให้กองทุนที่ใช้ Machine Learning ต้องพบจุดจบ ในมุมมองของคุณ Marcos Lopez de Prado ผู้จัดการกองทุนระดับมหายักษ์ใหญ่ ของโลกอย่าง AQR Capital และ หัวหน้ากลุ่ม วิจัย Machine Learning ของกองทุน ⚠️ เนื้อหาเชิงเทคนิคระดับสูง ในงานวิจัยของ Quants ในองกรใหญ่ อาจจะมีความซับซ้อนไปนิด แอดพยายามเขียนให้เข้าใจง่ายแล้ว ได้แค่นี้จริงๆ ค่ะ ⚠️ 1. The Sisyphean Quants (รูปที่ #1) ปัญหาข้อแรก ได้นำชื่อมาจาก “Sisyphean task” ที่เป็นเรื่องราวของชายชาวกรีกคนหนึ่งที่โดนลงโทษให้เข็ญก้อนหินก้อนมหึมาขึ้นไปบนยอดเขา ซึ่งเป็นงานที่แทบจะเป็นไปไม่ได้ การออกแรงดันทุกครั้ง ก็เพื่อที่จะพบกับการกลิ้งตกลงมาอีกครั่งของก้อนหินเท่านั้น คุณ Marcos พบว่า สาเหตุแรกเลยที่ทำให้กองทุนที่ใช้ Machine Learning ต้องประสบกับความล้มเหลว ก็คือ ปัญหาพื้นๆ ของการบริหารงาน ที่ขาดการทำงานในลักษณะของ “การร่วมมือกัน” เพื่อดึงคุณลักษณะเด่นของแต่ละบุคคลออกมาใช้…