Investic
investic
Published in
1 min readJan 31, 2022

--

สร้าง Moving Average บน Time Series Data บอกเทรนด์ และ สร้างสัญญาณซื้อขายหุ้นสนุกๆ

Moving Average(MA) คือเส้นค่าเฉลี่ยเคลื่อนที่ เป็นการคำนวณค่าเฉลี่ยของข้อมูล ที่เป็นลักษณะ Time Series ในที่นี้เราจะประยุกต์ใช้กับราคาหุ้น

ประโยชน์โดยทั่วไป

1. ใช้เพื่อลด noise เพราะ MA นั้นจะ Smooth กว่าราคา เนื่องจากเป็นการเฉลี่ยค่าออกมา(ตัดความผันผวนออกไปบางส่วน) เพื่อให้ดูได้ง่ายขึ้น

2. สร้างสัญญาณซื้อขาย

เรามาดูตัวอย่างที่ 1 กัน โดยเส้น MA จะเคลื่อนที่ไปกับหุ้น แต่รูปแบบการเคลื่อนที่จะช้ากว่ากราฟราคา ดังนั้นนักวิเคราะห์ทั้งหลายมักใช้ระบุทิศทางหรือแนวโน้มการเคลื่อนที่ของ Data (บอก Trend)

ยิ่งเราใช้ MA ช่วงเวลาน้อย เช่น 3 วัน 5 วัน 10 วัน ก็ย่อมลด noise ได้น้อยกว่า MA 1 เดือน 2 เดือน (เส้นจะยึกยือกว่า MA ช่วงเวลาเยอะๆ) ส่วนต้องทำเท่าไหร่ จำไว้จงถามหัวหน้างานคุณ 555 เช่น Weekly Data เราจะเฉลี่ย 1 เดือน หรือ 3 เดือน ดี อยู่ที่ว่ามันแกว่งขนาดไหน จริงๆก็กึ่งๆแล้วแต่คนชอบ หรือนำไปเข้าโมเดลอะไรต่อ ดังนั้นจงถามหัวหน้าก่อน

ตัวอย่างที่ 2 นำไปสร้างสัญญาณซื้อขายหุ้น

เราอาจจะได้ยินคำว่า Golden Cross อะไรแบบนี้กันอยู่บ้าง นั่นก็คือการที่มีเส้นค่าเฉลี่ยระยะสั้น (สมมติว่า สัก 50-Day MA) มาตัดขึ้น เส้นค่าเฉลี่ยระยะยาว (เช่น 200-Day MA)

จริงๆแล้ว เราทำได้หลายท่ามาก การวิเคราะห์หุ้นแบบนี้ เรียกว่า Technical Analysis

หากเราเน้นใช้ Moving Average (MA) ก็จะแบ่งได้หลักๆ 2 อย่าง คือ SMA(Simple Moving Average) และ EMA(Exponential Moving Average)

SMA ตามชื่อก็คือเส้นค่าเฉลี่ยแบบง่าย ก็คือเส้นของค่าเฉลี่ยจะนำเอาราคาทั้งหมดมาเฉลี่ยไปตามช่วงที่เรากำหนดเช่น 3 เดือน 6 เดือนโดยที่มีการถ่วงน้ำหนักที่เท่าๆกันในทุกค่า โดยใช้หลักการธรรมดาคือหาค่า Mean แต่ก็อย่างที่เห็นเมื่อมันให้น้ำหนักเท่าๆกัน ถ้าวันไหนราคาสวิงไปมากกว่าปกติ เราก็จะเห็นเส้น SMA จะเคลื่อนได้ช้ากว่ากราฟราคา (จริงๆก็คือ MA ทั่วๆไปที่กล่าวมาตลอดแหละ)

EMA เป็นการคำนวณ Moving Average ในรูปแบบการถ่วงน้ำหนัก และมีผลกับการเปลี่ยนของราคาค่อนข้างเร็ว ซึ่งการถ่วงน้ำหนักของ EMA จะให้ค่าข้อมูลใหม่สูงกว่า ดังนั้นถ้าหากเราลอง Plot ดู จะเห็นว่า EMA นั้นอยู่ชิดกับราคากว่าเส้น SMA

โดยสูตรการหา EMA จะยุ่งยากนิดนึง

EMA = factor(ราคาปิด) + (1-factor) (EMA Period ก่อนหน้า)

factor = 2/(T+1)

T = จำนวน Period

แต่อย่าได้กังวล เราไม่ได้ต้องไปปวดหัวกับโมเดลเหล่านี้ เนื่องจาก Python เองก็มี library มารองรับตรงนี้เรียบร้อย แถมเรามีสอน Library ไว้ในคอร์ส Python for Investing ด้วยนะ

Investic

--

--