Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ซอฟต์แวร์ >> Office

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

Exponential Moving Average (EMA) หรือ ค่าเฉลี่ยเคลื่อนที่แบบเอ็กซ์โพเนนเชียล เป็นเครื่องมือยอดนิยมสำหรับพยากรณ์ข้อมูลอนาคตและลดความผันผวนของราคาหุ้น หากคุณต้องการเข้าใจ EMA และวิธีคำนวณใน Excel บทความนี้เป็นคำตอบที่คุณต้องการ จะแนะนำ 3 วิธีที่เหมาะสม ในการคำนวณ EMA อย่างชัดเจน

Exponential Moving Average (EMA) คืออะไร?

EMA เป็นประเภทหนึ่งของ Moving Average ที่ให้น้ำหนักสำคัญกับข้อมูลล่าสุดมากกว่า Simple Moving Average (SMA) ทำให้กราฟ EMA ลื่นไหลกว่า SMA ความสำคัญของข้อมูลย้อนหลังจะลดลงตามเวลา สูตรคำนวณ EMA คือ:

EMAt = α × Yt-1 + (1-α) × EMAt-1

โดยที่:

  • EMAt = Exponential Moving Average ของรอบปัจจุบัน
  • α (Alpha) = Smoothing multiplier (ค่าระหว่าง 0 ถึง 1) ค่า α ยิ่งมาก ยิ่งให้น้ำหนักข้อมูลเก่า ค่าที่เหมาะสมอยู่ที่ 0.1 - 0.3
  • คำนวณ α ได้จากสูตร: α = 2/(n+1) โดย n = จำนวนรอบ (Periods)

สมมติมีข้อมูลยอดขาย 12 เดือนในปี 2020 ต้องการพยากรณ์ยอดขายเดือนมกราคม 2021 ด้วย EMA

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

3 วิธีคำนวณ Exponential Moving Average ใน Excel

1. ใช้ Data Analysis ToolPak

วิธีที่สะดวกที่สุดคือใช้ Data Analysis ToolPak แต่ต้องเปิดใช้งานก่อน:

  1. ไปที่แท็บ File > Options
  2. เลือกแท็บ Add-ins > กด Go
  3. ติ๊กถูก Analysis ToolPak > OK

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

หลังเปิดใช้งานแล้ว:

  1. ไปแท็บ Data > Data Analysis
  2. เลือก Exponential Smoothing > OK

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

ในหน้าต่าง Exponential Smoothing:

  • Input Range: เลือกช่วงข้อมูลยอดขาย (รวมเซลล์ว่างของเดือนพยากรณ์)
  • Damping factor: ใส่ค่า α (ตัวอย่างใช้ 0.3)
  • Output Range: เลือกตำแหน่งวางผลลัพธ์
  • ติ๊ก Chart Output หากต้องการกราฟเปรียบเทียบ
  • กด OK

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

Excel จะคำนวณ EMA ให้อัตโนมัติ รวมถึงค่าพยากรณ์เดือนมกราคม 2021

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

หมายเหตุ: EMA เดือนกุมภาพันธ์จะเท่ากับยอดขายเดือนมกราคม เพราะ ToolPak ใช้ Naive Method (สมมติ EMA แรก = ข้อมูลรอบก่อน)

กราฟเปรียบเทียบ Actual Data และ EMA:

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

2. คำนวณ EMA ด้วยตนเอง (Manual Calculation)

หากไม่ต้องการใช้ ToolPak สามารถคำนวณด้วยสูตรเองได้ ต้องหา EMA รอบแรกก่อน โดยวิธีนี้ใช้ 3-Period Moving Average (3MA) เป็นค่าเริ่มต้น

ขั้นตอนคำนวณ 3MA:

  1. ที่เซลล์ E8 (แถวเดือนเมษายน) ใส่สูตร: =(D5+D6+D7)/3
  2. ลาก Fill Handle ลงไปได้ 3MA ทุกรอบ

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

คำนวณ α: ใช้สูตร =2/(12+1) (n=12 เพราะมี 12 รอบ)

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

คำนวณ EMA รอบแรก (รอบที่ 4):

  1. ใส่สูตร: =(1-$C$3)*D7+$C$3*E8
  2. โดย $C$3 = α, D7 = ยอดขายรอบก่อน, E8 = 3MA รอบนี้ (เป็น EMA รอบก่อน)

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

คำนวณ EMA รอบต่อไป:

  1. ที่เซลล์ F9 ใส่: =(1-$C$3)*D8+$C$3*F8
  2. ลาก Fill Handle จนจบข้อมูล (รวมรอบพยากรณ์)

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

ผลลัพธ์ EMA ทุกรอบ รวมรอบพยากรณ์:

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

อ่านเพิ่ม: How to Generate Moving Average in Excel Chart (4 Methods)

3. ใช้ VBA สร้าง Custom Function คำนวณ EMA

วิธีนี้เหมาะสำหรับลดความผันผวนราคาหุ้น (Smoothing stock price) สูตรปรับเป็น:

EMAt = α × P + (1-α) × EMAt-1 โดย P = ราคารอบปัจจุบัน

สร้าง Custom Function ด้วย VBA:

  1. คลิกขวาที่ชื่อ Sheet > View Code

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

  1. ในหน้าต่าง VBA: คลิกขวาที่ชื่อ Sheet ด้านซ้าย > Insert > Module

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

  1. วางโค้ดต่อไปนี้ใน Module:
Sub AddUDF() 
    Application.MacroOptions macro:="EMA", _ 
        Description:="Returns the Exponential Moving Average." & Chr(10) & Chr(10) & _ 
        "Select last period's EMA or last period's price if current period is the first." & Chr(10) & Chr(10) & _ 
        "Followed by current price and n." & Chr(10) & Chr(10) & Chr(10) & _ 
        "The decay factor of the exponential moving average is calculated as alpha=2/(n+1)", _ 
        Category:="Technical Indicators" 
End Sub 

Public Function EMA(EMAYesterday, price, n) 
    alpha = 2 / (n + 1) 
    EMA = alpha * price + (1 - alpha) * EMAYesterday 
End Function

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

โค้ดนี้สร้างฟังก์ชัน EMA(EMAYesterday, price, n)

  1. ปิดหน้าต่าง VBA
  2. หา EMA รอบแรก (ใช้ Naive Method: EMA แรก = ราคารอบแรก)
  3. ที่เซลล์ D6 ใส่: =EMA(D5,C6,12) (D5=EMA ก่อนหน้า, C6=ราคาปัจจุบัน, 12=จำนวนรอบ)
  4. กด ENTER แล้วลาก Fill Handle ลงไป

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

ได้ EMA ทุกรอบ:

คำนวณ Exponential Moving Average (EMA) ใน Excel: คู่มือขั้นตอนละเอียด 3 วิธี

อ่านเพิ่ม: How to Calculate Average in Excel (Including All Criteria)

สรุป

ตอนนี้คุณควรเข้าใจวิธีคำนวณ Exponential Moving Average ใน Excel แล้ว 3 วิธีคือ: 1) Data Analysis ToolPak (เร็วที่สุด) 2) คำนวณเองด้วยสูตร (เข้าใจกลไก) 3) VBA Custom Function (ยืดหยุ่น สำหรับหุ้น) หากมีข้อสงสัย สามารถทิ้งคำถามได้ครับ

บทความเกี่ยวข้อง

  • How to Calculate Average, Minimum And Maximum in Excel (4 Easy Ways)
  • Calculate VLOOKUP AVERAGE in Excel (6 Quick Ways)
  • Running Average: How to Calculate Using Excel's Average(…) Function