ยินดีต้อนรับสู่โลกของ Non-stationary Time Series!
ในการศึกษาอนุกรมเวลา (Time Series) ที่ผ่านมา (เช่น แบบจำลอง AR และ MA) เราสมมติให้โลกนี้เป็น "Stationary" หรือ "มีเสถียรภาพ" ซึ่งหมายความว่าคุณสมบัติทางสถิติอย่างค่าเฉลี่ย (Mean) และการกระจายตัว (Variance) นั้นคงที่ตลอดเวลา แต่บอกตามตรงนะว่า ตลาดการเงินจริงๆ ไม่ได้ทำตัวน่ารักขนาดนั้น! ราคาหุ้นมักจะมีแนวโน้มเติบโตขึ้นเรื่อยๆ ตามกาลเวลา และความผันผวนก็อาจพุ่งกระฉูดในช่วงวิกฤต ซึ่งนี่แหละคือสิ่งที่เรียกว่า Non-stationary (อนุกรมเวลาที่ไม่มีเสถียรภาพ)
ในบทนี้ เราจะมาเรียนรู้วิธีสังเกต "ความไม่เสถียร" เหล่านี้กันว่าทำไมมันถึงหลอกให้เราเห็นรูปแบบที่ไม่มีอยู่จริง และเราจะแก้ไขมันได้อย่างไรเพื่อให้ได้โมเดลที่เชื่อถือได้ ไม่ต้องกังวลหากคณิตศาสตร์ดูน่ากลัวในตอนแรก เราจะย่อยมันด้วยการเปรียบเทียบง่ายๆ เอง!
1. Non-stationarity คืออะไร?
อนุกรมเวลาจะเป็น Stationary ก็ต่อเมื่อค่าเฉลี่ย ความแปรปรวน และความสัมพันธ์ระหว่างช่วงเวลา (Covariance) คงที่ตลอดเวลา ลองจินตนาการถึงลูกตุ้มที่แกว่งไปมาในห้องดูนะ: ถึงมันจะเคลื่อนที่ไปมา แต่สุดท้ายมันก็ยังแกว่งอยู่รอบจุดศูนย์กลางเดิม ไม่ได้จู่ๆ ก็บินทะลุออกนอกห้องไป
ส่วนอนุกรมเวลาแบบ Non-stationary คือสิ่งที่ตรงกันข้าม ค่าเฉลี่ยหรือความแปรปรวนของมันจะเปลี่ยนไปตามกาลเวลา ตัวอย่างเช่น:
ค่าเฉลี่ยเปลี่ยน: เหมือนราคาหุ้น Amazon ในช่วง 10 ปีที่ผ่านมา (มันมีแนวโน้มสูงขึ้นเรื่อยๆ)
ความแปรปรวนเปลี่ยน: เหมือนตลาดที่นิ่งสนิทมาตลอดเดือน แล้วจู่ๆ ก็ผันผวนอย่างรุนแรงในเดือนถัดมา
ทำไมเราต้องสนใจ?
ถ้าคุณพยายามทำสมการถดถอย (Regression) มาตรฐานกับข้อมูลที่เป็น Non-stationary คุณอาจเจอกับปัญหา "Spurious Regression" หรือ "สมการถดถอยลวง" ซึ่งเป็นคำสวยหรูที่สื่อว่าโมเดลแสดงให้เห็นความสัมพันธ์อันแข็งแกร่งระหว่างตัวแปรสองตัวที่จริงๆ แล้ว ไม่มีอะไรเกี่ยวข้องกันเลย เพียงเพราะว่าทั้งคู่มีแนวโน้มพุ่งขึ้นเหมือนกัน ข้อควรระวัง: อย่าหลงเชื่อค่า R-squared ที่สูงปรี๊ดระหว่างตัวแปรสองตัวที่มีเทรนด์ โดยไม่ได้ตรวจสอบความเป็น Stationary ก่อนเด็ดขาด!
สรุปสั้นๆ: Stationary = คุณสมบัติคงที่/ทำนายได้ง่าย, Non-stationary = คุณสมบัติเปลี่ยนไปตามกาลเวลา
2. แบบจำลอง Random Walk
แบบจำลอง Non-stationary ที่โด่งดังที่สุดในการเงินคือ Random Walk ซึ่งทางคณิตศาสตร์เปรียบได้กับการ "เดินโซเซของคนเมา" (Drunkard’s Walk) ลองนึกภาพคนที่ก้าวเดินไปหนึ่งก้าว แล้วก้าวถัดไปของเขาก็เป็นเรื่องสุ่มล้วนๆ ขึ้นอยู่กับว่าตอนนี้เขายืนอยู่ที่ไหน
สูตรคือ: \( Y_t = Y_{t-1} + \epsilon_t \)
โดยที่ \( \epsilon_t \) คือ White noise (สัญญาณรบกวนแบบสุ่ม)
คุณสมบัติหลักของ Random Walk:
1. ไม่มีค่าเฉลี่ยระยะยาว: ข้อมูลไม่ได้วิ่งกลับเข้าหาค่าเฉลี่ย (Mean Reversion) แต่มันเดินเตร็ดเตร่ไปเรื่อยๆ
2. ความแปรปรวนเพิ่มขึ้นตามเวลา: ยิ่งคุณมองไปในอนาคตไกลเท่าไหร่ ตำแหน่งของมันยิ่งมีความไม่แน่นอนมากขึ้นเท่านั้น โดยเฉพาะค่าความแปรปรวนที่เวลา \( t \) คือ \( t \times \sigma^2 \)
3. แรงกระแทก (Shocks) ส่งผลถาวร: หากมี "แรงกระแทก" (เช่น ข่าวสำคัญ) เข้ามากระทบราคาในวันนี้ การเปลี่ยนแปลงนั้นจะคงอยู่ในราคาไปตลอดกาล มันไม่เลือนหายไปเหมือนในแบบจำลอง AR(1) ที่เป็น Stationary
Random Walk แบบมีทิศทาง (with Drift)
บางครั้ง "คนเมา" คนนี้ก็แอบเอนตัวไปข้างหน้าเล็กน้อย นี่คือ Random Walk with Drift:
\( Y_t = \delta + Y_{t-1} + \epsilon_t \)
ที่นี่ \( \delta \) (เดลต้า) คือค่า Drift เมื่อเวลาผ่านไป อนุกรมเวลานี้จะมีแนวโน้มสูงขึ้น (ถ้า \( \delta > 0 \)) หรือต่ำลง (ถ้า \( \delta < 0 \))
คุณรู้ไหม? นักเศรษฐศาสตร์หลายคนเชื่อว่าราคาหุ้นวิ่งตาม Random Walk เพราะข้อมูลทุกอย่างที่เรารู้ตอนนี้ได้ถูก "คำนวณรวม" เข้าไปในราคาหุ้นวันนี้เรียบร้อยแล้ว
3. แนวโน้ม (Trends): Deterministic vs. Stochastic
เราต้องรู้ว่า ทำไม อนุกรมเวลาถึงมีแนวโน้ม เพราะ "วิธีแก้" ของแต่ละแบบนั้นต่างกัน
Deterministic Trend: แนวโน้มที่เป็นฟังก์ชันของเวลาอย่างง่าย เหมือนรถไฟบนราง มันวิ่งขึ้นเพราะเวลาก็แค่เดินหน้าไปเรื่อยๆ
สูตร: \( Y_t = \alpha + \beta t + \epsilon_t \)
วิธีแก้: หักลบแนวโน้มออก (Detrending)
Stochastic Trend: แนวโน้มที่เกิดจากการสะสมของแรงกระแทกแบบสุ่ม นี่คือสิ่งที่เราเรียกว่า Random Walk
สูตร: \( Y_t = Y_{t-1} + \epsilon_t \)
วิธีแก้: การหาผลต่าง (Differencing) โดยเอาค่าของวันนี้ลบด้วยค่าของเมื่อวาน
ตัวช่วยจำ: Deterministic = Destined (ถูกกำหนดชะตาไว้แล้ว/วิ่งตามเส้นทางที่ตั้งไว้), Stochastic = Shocks (เปลี่ยนเส้นทางเพราะแรงกระแทกแบบสุ่ม)
4. Unit Root และการทดสอบ Dickey-Fuller
เราจะพิสูจน์ทางคณิตศาสตร์ได้อย่างไรว่าข้อมูลเป็น Non-stationary? เราต้องมองหา Unit Root
ในแบบจำลอง AR(1): \( Y_t = \phi Y_{t-1} + \epsilon_t \)
ถ้า \( |\phi| < 1 \), ข้อมูลจะเป็น Stationary
ถ้า \( \phi = 1 \), เราจะเจอ Unit Root (และนี่ก็คือสิ่งที่เป็น Random Walk เป๊ะๆ!)
การทดสอบ Dickey-Fuller (DF Test)
เราไม่สามารถใช้ t-test แบบปกติกับ \( \phi \) ได้ เพราะการกระจายตัวของมันจะประหลาดมากเมื่อ \( \phi=1 \) ดังนั้นเราจึงจัดรูปสมการใหม่:
\( \Delta Y_t = (\phi - 1) Y_{t-1} + \epsilon_t \)
ให้ \( \gamma = \phi - 1 \). ทีนี้เราก็แค่ทดสอบว่า \( \gamma = 0 \) หรือไม่
สมมติฐาน:
Null Hypothesis (\( H_0 \)): \( \gamma = 0 \) (มี Unit Root / ข้อมูลเป็น Non-stationary)
Alternative Hypothesis (\( H_a \)): \( \gamma < 0 \) (ข้อมูลเป็น Stationary)
ประเด็นสำคัญ: ถ้าค่าสถิติที่คำนวณได้มีค่า ติดลบมากกว่า ค่าวิกฤต (Critical Value) เราจะ ปฏิเสธ Null Hypothesis และสรุปได้ว่าข้อมูลเป็น Stationary คำเตือน: เราต้องใช้ตารางค่าวิกฤตแบบพิเศษที่เรียกว่า "Dickey-Fuller Table" ไม่ใช่ตาราง t-table ปกตินะ!
ประเด็นหลักที่ต้องจำ: การทดสอบ Dickey-Fuller ใช้เพื่อหา Unit Root ถ้า "ปฏิเสธ \( H_0 \) ไม่ได้" = ข่าวร้าย (ข้อมูลเป็น Non-stationary), ถ้า "ปฏิเสธ \( H_0 \)" = ข่าวดี (ข้อมูลเป็น Stationary)
5. การแก้ไข Non-stationarity: การหาผลต่าง (Differencing)
ถ้าข้อมูลของคุณมี Unit Root (Stochastic trend) ปกติแล้วคุณสามารถ "แก้" ได้โดยใช้ Differencing นั่นหมายความว่าแทนที่คุณจะดูราคาเฉยๆ คุณก็ไปดู การเปลี่ยนแปลง ของราคาแทน
First Difference: \( \Delta Y_t = Y_t - Y_{t-1} \)
หากคุณหาผลต่างของ Random Walk (\( Y_t = Y_{t-1} + \epsilon_t \)) สิ่งที่เหลืออยู่ก็คือ \( \epsilon_t \) ซึ่งเป็น White noise และ White noise นั้นมีคุณสมบัติเป็น Stationary ที่สมบูรณ์แบบ! นี่คือเหตุผลว่าทำไมเรามักจะสร้างแบบจำลองจาก ผลตอบแทน ของหุ้นแทนที่จะใช้ ราคา หุ้นโดยตรง
เคล็ดลับ: ถ้าข้อมูลกลายเป็น Stationary หลังจากทำ Differencing เพียงหนึ่งครั้ง เราจะเรียกมันว่า Integrated of order 1 หรือ I(1) และถ้ามันเป็น Stationary ตั้งแต่แรกอยู่แล้ว เราจะเรียกมันว่า I(0)
6. Cointegration: ผลของ "สายจูง"
โดยปกติแล้วเวลาที่คุณนำตัวแปร Non-stationary สองตัวมาทำ Regression ใส่กัน คุณมักจะได้ผลลัพธ์ขยะ (Spurious regression) อย่างไรก็ตาม มันมีข้อยกเว้นพิเศษที่เรียกว่า Cointegration
การเปรียบเทียบ: ลองนึกภาพผู้ชายคนหนึ่งกำลังจูงสุนัขเดินเล่น ตัวผู้ชายเดินไปมาแบบสุ่ม (Non-stationary) สุนัขก็เดินไปมาแบบสุ่ม (Non-stationary) แต่เพราะว่ามี สายจูง กั้นไว้ พวกเขาจึงไม่มีทางเดินห่างกันเกินไปได้ ระยะห่าง ระหว่างทั้งคู่จึงเป็น Stationary
ในทางเศรษฐศาสตร์การเงิน: หุ้นสองตัวในอุตสาหกรรมเดียวกัน (เช่น Coca-Cola กับ Pepsi) อาจมีราคาที่แกว่งไปมาแบบสุ่มทั้งคู่ แต่ ส่วนต่าง (ราคาหุ้น A - ราคาหุ้น B) ของมันอาจจะคงที่ ถ้าพวกมันมี Cointegration เราก็สามารถนำมาใช้กลยุทธ์ Pairs Trading ได้
คำจำกัดความ: อนุกรมเวลา I(1) สองชุดจะเป็น Cointegrated กัน หากการรวมเชิงเส้นของทั้งสองชุดมีค่าเป็น I(0) (คือเป็น Stationary)
สรุปทบทวนบทเรียน
1. Stationarity: ค่าเฉลี่ยและความแปรปรวนคงที่ จำเป็นมากสำหรับการสร้างโมเดลที่เชื่อถือได้
2. Random Walk: \( Y_t = Y_{t-1} + \epsilon_t \). เป็น Non-stationary, ความแปรปรวนเพิ่มขึ้นตามเวลา
3. Spurious Regression: การเห็นความสัมพันธ์ปลอมๆ ระหว่างตัวแปรสองตัวที่มีเทรนด์
4. Dickey-Fuller: Null hypothesis คือข้อมูลมี Unit Root (เป็น Non-stationary)
5. Differencing: การลบด้วยค่าก่อนหน้าเพื่อทำให้ข้อมูลกลายเป็น Stationary
6. Cointegration: เมื่ออนุกรมเวลาที่เป็น Non-stationary สองชุดมีการเคลื่อนที่ไปพร้อมกันในระยะยาว
ทำได้ดีมาก! คุณผ่านด่านที่ยากของข้อมูล Non-stationary มาได้แล้ว แค่จำไว้ว่า: ถ้าไม่แน่ใจ ให้ตรวจสอบ Unit Root และทำ Differencing ข้อมูลก่อนเริ่มสร้างแบบจำลองเสมอ!