MACD คืออะไร ดูยังไง ตั้งค่าเท่าไหร่ดี — และเรื่องที่ไม่มีใครบอก คือ MACD ในโปรแกรมคุณอาจไม่ใช่ตัวเดียวกับในตำรา
MACD คือผลต่างระหว่างเส้นค่าเฉลี่ยแบบ EMA สองเส้น แล้วเอาผลต่างนั้นมาหาค่าเฉลี่ยอีกทีเป็น “เส้นสัญญาณ” คำค้นยอดนิยมของคนไทยเกือบทั้งหมดเป็นเรื่องการตั้งค่า — “ควรตั้งเท่าไหร่” “ตั้งค่าเทรดสั้น” “ตั้งค่า 2 เส้น mt5” หน้านี้ตอบคำถามพวกนั้น แต่ต้องเริ่มจากเรื่องที่สำคัญกว่าและแทบไม่มีใครพูดถึงก่อน: MACD ที่ติดมากับ MetaTrader ใช้สูตรเส้นสัญญาณคนละแบบกับตำราและคนละแบบกับ TradingView — และเราเปิดซอร์สโค้ดของ MetaQuotes เองมายืนยัน พร้อมวัดว่ามันทำให้สัญญาณต่างกันแค่ไหน
MACD คืออะไร — สามบรรทัดจบ
MACD (Moving Average Convergence Divergence) ประกอบด้วยของสามชิ้น และทุกชิ้นเป็นแค่ค่าเฉลี่ย
- เส้น MACD = EMA 12 − EMA 26 (คำนวณจากราคาปิด) · ตัวเลขนี้เป็นบวกเมื่อค่าเฉลี่ยสั้นอยู่เหนือค่าเฉลี่ยยาว และเป็นลบเมื่ออยู่ใต้
- เส้นสัญญาณ = ค่าเฉลี่ย 9 คาบ ของเส้น MACD (ไม่ใช่ของราคา) · ตรงนี้แหละที่โปรแกรมแต่ละตัวไม่ตรงกัน อ่านหัวข้อถัดไป
- ฮิสโตแกรม = แท่งที่วาดอยู่รอบเส้นศูนย์ · ตรงนี้ก็ไม่ตรงกันอีกเช่นกัน ในตำราคือ (เส้น MACD − เส้นสัญญาณ) แต่ใน MetaTrader แท่งพวกนั้นคือตัวเส้น MACD เอง
สังเกตว่า MACD ไม่มีอะไรใหม่เลยนอกจาก เส้นค่าเฉลี่ยเคลื่อนที่ สามชั้นซ้อนกัน — ซึ่งแปลว่าความช้าของมันก็เป็นความช้าของค่าเฉลี่ยตามปกติ ไม่มีเวทมนตร์อะไรมาหักล้าง
🔑 หลักฐานจากซอร์สโค้ด: MetaTrader ใช้ SMA ทำเส้นสัญญาณ ไม่ใช่ EMA
MetaQuotes แจกซอร์สโค้ดอ้างอิงของอินดิเคเตอร์มาตรฐานมาพร้อมกับ MT5 อยู่แล้ว ไฟล์อยู่ที่ MQL5/Indicators/Examples/MACD.mq5 เปิดดูได้จากเครื่องตัวเอง ไม่ต้องเชื่อใคร บรรทัดที่สำคัญมีสี่บรรทัด
| บรรทัด | โค้ดจริงในไฟล์ | แปลว่า |
|---|---|---|
| 23 | input int InpFastEMA=12; | เส้นเร็ว = EMA 12 ✔ ตรงกับตำรา |
| 24 | input int InpSlowEMA=26; | เส้นช้า = EMA 26 ✔ ตรงกับตำรา |
| 25 | input int InpSignalSMA=9; | ชื่อตัวแปรเขียนว่า SMA ตรง ๆ — ไม่ใช่ EMA |
| 119 | SimpleMAOnBuffer(...) | เรียกฟังก์ชันค่าเฉลี่ยแบบ Simple ทั้งที่ในไฟล์เดียวกันมี ExponentialMAOnBuffer ให้ใช้อยู่แล้ว |
และในส่วนหัวของไฟล์เดียวกัน บรรทัด indicator_type1 DRAW_HISTOGRAM คู่กับ indicator_label1 "MACD" ยืนยันข้อที่สอง: แท่งฮิสโตแกรมที่คุณเห็นใน MetaTrader คือเส้น MACD ที่วาดเป็นแท่ง ไม่ใช่ผลต่างระหว่าง MACD กับเส้นสัญญาณอย่างที่ตำรานิยามไว้
รูปแบบนี้ตกทอดมาตั้งแต่ MT4 ซึ่งเป็นเหตุผลที่ห้องเทรดไทยมีอินดิเคเตอร์ชื่อทำนอง “MACD 2 line” แจกกันมานานหลายปี ถ้าคุณเคยงงว่าทำไม MACD ในเครื่องตัวเองหน้าตาไม่เหมือนในคลิป — นี่คือคำตอบ และมันไม่ใช่ความผิดของคุณ
วัดจริง: ความต่างนี้ทำให้สัญญาณเพี้ยนไปเท่าไหร่
รู้ว่าสูตรต่างกันแล้ว คำถามถัดมาคือ “แล้วมันต่างกันจนมีผลไหม” — เราคำนวณ MACD(12,26,9) ทั้งสองแบบบนข้อมูลชุดเดียวกัน แล้วนับจุดที่เส้น MACD ตัดเส้นสัญญาณ
| สิ่งที่วัด | EURUSD (D1) | ทองคำ XAUUSD (D1) |
|---|---|---|
| จุดตัด · เส้นสัญญาณแบบ MetaTrader (SMA 9) | 35 ครั้ง = 24.5/ปี | 50 ครั้ง = 26.0/ปี |
| จุดตัด · เส้นสัญญาณแบบตำรา (EMA 9) | 37 ครั้ง = 25.9/ปี | 44 ครั้ง = 22.9/ปี |
| ตัดกันตรงแท่งเดียวกันทั้งสองเวอร์ชัน | 19 จาก 35 = 54% | 27 จาก 50 = 54% |
| จุดตัดที่โผล่เฉพาะเวอร์ชัน MetaTrader | 16 จุด | 23 จุด |
| จุดตัดที่โผล่เฉพาะเวอร์ชันตำรา | 18 จุด | 17 จุด |
| ตอนที่ไม่ตรงกัน ห่างกันเฉลี่ย | 1.8 แท่ง (สูงสุด 7) | 3.3 แท่ง (สูงสุด 16) |
| ตอนที่ไม่ตรงกัน ราคาต่างกัน (มัธยฐาน) | 30.6 pip | $38.56 ต่อออนซ์ |
| ราคาต่างกันสูงสุดที่เจอ | 86.5 pip | $140.33 ต่อออนซ์ |
ให้เทียบกับสิ่งที่คนถกเถียงกันบ่อยกว่า: ค่าสเปรดของ EURUSD ในบัญชีที่วัดคือ 0.8 pip ส่วนทองคำคือ $0.16 ต่อออนซ์ แปลว่าความต่างที่เกิดจาก “ใช้ MACD คนละเวอร์ชัน” ใหญ่กว่าค่าสเปรดราว 38 เท่าบน EURUSD และราว 240 เท่าบนทองคำ — ในขณะที่คนส่วนใหญ่เลือกโบรกเกอร์เพราะสเปรดต่างกัน 0.2 pip แต่ไม่เคยรู้เลยว่าอินดิเคเตอร์ที่ใช้อยู่เป็นคนละสูตรกับที่เรียนมา
แล้ว “ตั้งค่าเท่าไหร่ดี” — คำตอบที่ตรงไปตรงมา
เลข 12, 26, 9 มาจากยุคที่ตลาดหุ้นอเมริกาเปิดสัปดาห์ละ 6 วัน — 26 คือประมาณหนึ่งเดือนทำการ 12 คือครึ่งหนึ่ง 9 คือสองสัปดาห์ มันไม่ใช่เลขที่ผ่านการพิสูจน์ว่าดีที่สุด มันคือเลขที่ติดมาแล้วไม่มีใครเปลี่ยน
สิ่งที่เกิดขึ้นจริงเมื่อคุณเปลี่ยนเลขคือความเร็ว ไม่ใช่ความแม่น และความเร็วมีราคาของมัน
| ถ้าคุณ… | สิ่งที่เกิดขึ้น | ราคาที่ต้องจ่าย |
|---|---|---|
| ลดเลขลง (เช่น 6,13,5 “เทรดสั้น”) | เส้นตอบสนองไวขึ้น จุดตัดถี่ขึ้น | จำนวนไม้เพิ่ม → ค่าสเปรดต่อปีเพิ่มตามสัดส่วนตรง ๆ |
| เพิ่มเลขขึ้น (เช่น 24,52,18) | เส้นนิ่งขึ้น จุดตัดน้อยลง | เข้าช้าลง และจำนวนสัญญาณต่อปีน้อยจนประเมินไม่ได้ว่าระบบดีจริงไหมในเวลาไม่กี่ปี |
| ใช้ 12,26,9 ตามค่ามาตรฐาน | ~23–26 จุดตัด/ปี บน D1 (วัดได้ข้างบน) | EURUSD ~$200/ปี ต่อ 1 ล็อต · ทองคำ ~$416/ปี ต่อ 1 ล็อต |
| เปลี่ยนไทม์เฟรมแทนการเปลี่ยนเลข | ได้ผลเหมือนเปลี่ยนเลข แต่ควบคุมง่ายกว่าเพราะรู้ว่าหนึ่งแท่งคือเวลาเท่าไหร่ | — |
ไดเวอร์เจนซ์ของ MACD — และข้อจำกัดที่ต้องรู้
การใช้งานที่คนพูดถึงบ่อยรองจากจุดตัด คือ “ราคาทำจุดสูงใหม่แต่ MACD ไม่ทำตาม” หรือที่เรียกว่าไดเวอร์เจนซ์ — แนวคิดนี้ใช้ได้จริงและมีบทความแยกไว้แล้วที่ Divergence และ Convergence คืออะไร
แต่มีข้อจำกัดสองข้อที่ต้องพูดพร้อมกันเสมอ
- ไดเวอร์เจนซ์ยืนยันได้หลังจากยอดที่สองก่อตัวเสร็จแล้วเท่านั้น — ระหว่างที่ราคายังวิ่งอยู่ คุณยังไม่รู้ว่ายอดนั้นคือยอดจริงหรือแค่พักกลางทาง สิ่งที่เห็นบนกราฟย้อนหลังจึงชัดกว่าสิ่งที่เห็นตอนเทรดเสมอ
- ไดเวอร์เจนซ์เกิดได้ยาวมากในเทรนด์ที่แข็ง — ราคาทำจุดสูงใหม่ต่อกันสิบครั้งโดยที่ MACD อ่อนแรงลงเรื่อย ๆ เป็นเรื่องปกติ การสวนทุกครั้งที่เห็นไดเวอร์เจนซ์คือการสวนเทรนด์ ซึ่งเป็นคนละเรื่องกับที่โพสต์ส่วนใหญ่บอกไว้
ถ้าจะใช้ไดเวอร์เจนซ์ ให้ใช้คู่กับกฎที่เขียนไว้ก่อนว่าจะยอมผิดถึงตรงไหน ไม่ใช่ใช้เป็นเหตุผลให้เข้าไม้ — วิธีเขียนกฎแบบนั้นอยู่ที่ การสร้างระบบเทรดของตัวเอง
สิ่งที่ MACD ทำไม่ได้
- ไม่ได้บอกว่าเทรนด์แรงแค่ไหนในเชิงสัมบูรณ์ — ค่าของ MACD เป็นหน่วยราคา ทองคำที่ $4,600 กับ EURUSD ที่ 1.16 ให้ตัวเลข MACD คนละสเกลกันคนละโลก เทียบข้ามสินค้าไม่ได้
- ไม่ได้เป็นตัวชี้วัดอิสระจากราคา — มันคือราคาที่ผ่านการเฉลี่ยสองชั้น ถ้าราคาไม่ขยับ MACD ก็ไม่มีข้อมูลใหม่ให้บอก
- ไม่ได้บอกขนาดไม้หรือจุดตัดขาดทุน — ซึ่งเป็นสองตัวแปรที่มีผลต่อพอร์ตมากกว่าการเลือกเลข 12/26/9 · คำนวณขนาดล็อตให้ทุกไม้เสี่ยงเท่ากัน
ถ้าอยากเห็นตัวอย่างของสัญญาณที่ระบุจุดเข้า จุดตัดขาดทุน และเป้าหมายไว้ครบตั้งแต่ก่อนเปิดออเดอร์ — คือข้อมูลชุดที่เอาไปวัดย้อนหลังได้จริง ไม่ใช่แค่ลูกศรบนกราฟ — ดูวิธีที่ AlphaSignals บันทึกไว้ แล้วเอาโครงเดียวกันไปใช้กับระบบของตัวเองได้
สรุป — 4 ข้อที่ยืนยันได้ และ 1 ข้อที่ยืนยันไม่ได้
- MACD ใน MetaTrader ใช้ SMA ทำเส้นสัญญาณ ไม่ใช่ EMA — ยืนยันจากซอร์สโค้ดอ้างอิงของ MetaQuotes เอง (
MACD.mq5บรรทัด 25 และ 119) - แท่งฮิสโตแกรมใน MetaTrader คือเส้น MACD ไม่ใช่ผลต่าง MACD กับเส้นสัญญาณ — ยืนยันจาก
DRAW_HISTOGRAMคู่กับ label ชื่อ "MACD" ในไฟล์เดียวกัน - สองเวอร์ชันให้สัญญาณตรงวันกันเพียง 54% — วัดบนสองตลาด ได้ตัวเลขเดียวกัน
- ตอนที่ไม่ตรงกัน ราคาต่างกันมัธยฐาน 30.6 pip (EURUSD) และ $38.56 ต่อออนซ์ (ทองคำ) — ใหญ่กว่าค่าสเปรดของบัญชีเดียวกันหลายสิบถึงหลายร้อยเท่า
อ่านต่อในเรื่องที่ใช้คู่กันโดยตรง: Moving Average ตั้งค่าเท่าไหร่ดี (ฉบับวัดจริง) · Overbought / Oversold คืออะไร · ค่า spread คิดเป็นเงินจริงเท่าไร · สารบัญคู่มือ Forex ทั้งหมดของบล็อกนี้
บทความนี้จัดทำเพื่อการศึกษาเท่านั้น ไม่ใช่คำแนะนำการลงทุน ตัวเลขที่ระบุว่า “วัดจริง” มาจากแท่งราคา D1 บนเทอร์มินัล MetaTrader 5 ของโบรกเกอร์รายหนึ่งในช่วงเวลาที่ระบุไว้ในบทความ ส่วนบรรทัดโค้ดที่อ้างถึงมาจากไฟล์ตัวอย่างที่ติดมากับ MetaTrader 5 ซึ่งเปิดดูได้จากเครื่องของคุณเอง เลขบรรทัดอาจขยับได้ตามเวอร์ชันที่ติดตั้ง
ความคิดเห็น
แสดงความคิดเห็น