EA Forex (Expert Advisor) คือโปรแกรมที่ผูกกับกราฟใน MT4 หรือ MT5 แล้ววิเคราะห์ราคาและส่งคำสั่งซื้อขายเองตามกฎที่เขียนไว้ มันทำงานได้ตลอดโดยไม่เหนื่อยและไม่มีอารมณ์ แต่ไม่ได้รู้อนาคต ถ้ากฎข้างในไม่มีความได้เปรียบ EA ก็แค่ทำให้ขาดทุนได้เร็วและเป็นระบบขึ้น
อัปเดตข้อมูล: พฤศจิกายน 2026
คนที่ค้นคำว่า “ea forex” มักอยากรู้สามเรื่อง มันคืออะไร ใช้ยังไง และดีจริงไหม โดยเฉพาะหลังเห็นกราฟกำไรสวย ๆ ของหุ่นยนต์เทรด บทนี้ตอบเรื่องพื้นฐานทั้งหมดด้วยเอกสารของ MetaQuotes (ผู้พัฒนา MetaTrader) และแหล่งที่เปิดอ่านได้จริง แยกให้ชัดว่าอะไรคือข้อความจากเอกสาร อะไรคือกรอบคิดของทีมงาน
บทนี้ไม่ใช่คู่มือกด backtest ทีละปุ่ม (มีบทแยกอยู่แล้ว) และไม่ได้แนะนำ EA ตัวไหน เป้าหมายคือให้คุณ อ่าน EA ออก ก่อนตัดสินใจเอาเงินจริงไปเสี่ยง
EA Forex คืออะไร
เอกสาร MetaTrader 5 Help นิยาม Expert Advisor ว่าเป็น ระบบเทรดเชิงกล (mechanical trading systems) ที่ทำให้งานวิเคราะห์และงานเทรดเป็นอัตโนมัติได้ทั้งหมด และอธิบายต่อว่า EA ควบคุมการเทรดตามสัญญาณที่ได้รับ ส่วนเอกสารภาษา MQL5 ให้นิยามที่สั้นกว่านั้นอีกว่า EA คือระบบเทรดอัตโนมัติที่ผูกอยู่กับกราฟ
ถ้าแปลเป็นภาษาคน EA คือ “กฎการเทรดที่ถูกเขียนเป็นโค้ด” เช่น ถ้าเส้นค่าเฉลี่ยเร็วตัดขึ้นเหนือเส้นช้า ให้เปิดซื้อ ตั้งจุดตัดขาดทุนไว้ที่ระยะหนึ่ง แล้วปิดเมื่อถึงเป้า คนเขียนกำหนดกฎ ส่วน EA ทำหน้าที่เฝ้าราคาและกดคำสั่งแทน
ในโลก MetaTrader มีโปรแกรมอยู่หลายชนิด ที่คนมักสับสนกับ EA คือ
| ชนิดโปรแกรม | ทำอะไร | ส่งคำสั่งเทรดเองต่อเนื่องไหม |
|---|---|---|
| Expert Advisor (EA) | ผูกกับกราฟ เฝ้าราคา และส่งคำสั่งตามกฎ | ใช่ นี่คือหน้าที่หลัก |
| Custom Indicator | คำนวณและแสดงผลบนกราฟ เช่น เส้นค่าเฉลี่ย | ไม่ใช่ มีไว้ให้ดู |
| Script | โปรแกรมที่ทำงานครั้งเดียวแล้วจบ | ไม่ใช่ รันครั้งเดียวต่อการสั่ง |
เอกสาร MQL5 ระบุไว้ตรง ๆ ว่า script คือโปรแกรมสำหรับทำงานหนึ่งครั้ง ต่างจาก EA ที่อยู่บนกราฟและทำงานไปเรื่อย ๆ ส่วนคำว่า algorithmic trading ที่ได้ยินบ่อยนั้น Wikipedia นิยามว่าเป็นวิธีส่งคำสั่งด้วยชุดคำสั่งเทรดอัตโนมัติที่เขียนไว้ล่วงหน้า EA จึงเป็นรูปแบบหนึ่งของ algorithmic trading บนแพลตฟอร์ม MetaTrader
EA ทำงานยังไงบน MT4/MT5
ลำดับการทำงานของ EA หนึ่งตัวบนกราฟ ถ้าเล่าแบบไม่ลงรายละเอียดโค้ด มีประมาณนี้
- รับข้อมูลราคา — EA อ่านข้อมูลราคาของกราฟที่มันผูกอยู่ ตามจังหวะที่โค้ดกำหนด
- เช็กเงื่อนไข — เอาราคาไปเทียบกับกฎที่เขียนไว้ เช่น สัญญาณอินดิเคเตอร์ เวลา หรือจำนวนไม้ที่เปิดอยู่
- ส่งคำสั่ง — ถ้าเงื่อนไขครบ EA ส่งคำสั่งเปิด ปิด หรือแก้ไขจุดตัดขาดทุนเอง
- จัดการไม้ที่เปิดอยู่ — เลื่อน stop loss ปิดบางส่วน หรือเปิดไม้เพิ่ม ตามที่กฎกำหนด
สิ่งที่มือใหม่มักไม่รู้มีสามข้อ ข้อแรก เอกสาร MT4 อธิบายว่า EA คือโปรแกรม ในเทอร์มินัล แปลว่ามันรันอยู่ในตัว MetaTrader บนเครื่องที่ติดตั้ง ถ้าปิดโปรแกรมหรือปิดเครื่อง EA บนเครื่องนั้นก็ไม่ได้ทำงานต่อ (ข้อสรุปของทีมงานจากนิยามนี้) คนที่ต้องการรันต่อเนื่องจึงใช้เครื่องที่เปิดตลอดอย่าง VPS (เรื่องเลือก VPS มีในบท VPS Forex รัน EA)
ข้อสอง การปิดสิทธิ์เทรดอัตโนมัติไม่ได้แปลว่า EA หายไปจากกราฟ เอกสาร MT5 ระบุว่าการปิดในหน้าตั้งค่า เป็นเพียงการห้ามไม่ให้ EA เทรด ตัวโปรแกรมยังติดอยู่บนกราฟ
ข้อสาม อย่าสมมุติว่าการใช้ EA ทำให้ spread หรือ slippage หายไป ใช้ EA แล้วก็ยังต้องตรวจต้นทุนและเงื่อนไขการดำเนินคำสั่งของบัญชีที่ใช้ เหมือนตอนกดเอง (อ่านต่อได้ในบท Slippage คืออะไร)
MT4 กับ MT5 ต่างกันยังไงสำหรับคนใช้ EA
ประเด็นสำคัญที่สุดคือ EA ของ MT4 กับ MT5 เขียนด้วยภาษาคนละตัว จึงต้องเช็กก่อนว่า EA ที่ได้มาทำมาสำหรับแพลตฟอร์มไหน เอกสาร MT4 Help ระบุว่า EA บน MT4 พัฒนาด้วย MetaQuotes Language 4 (MQL4) ส่วนบน MT5 ใช้ MQL5 ซึ่งเอกสารอธิบายว่าเป็นภาษาระดับสูงสำหรับพัฒนาอินดิเคเตอร์และหุ่นยนต์เทรด และมีไวยากรณ์คล้าย C++
| หัวข้อ | MT4 | MT5 |
|---|---|---|
| ภาษาเขียน EA | MQL4 | MQL5 (ไวยากรณ์คล้าย C++) |
| ก่อนใช้ต้องเช็ก | EA ทำมาสำหรับ MT4 หรือไม่ | EA ทำมาสำหรับ MT5 หรือไม่ |
| Strategy Tester | — | มี ใช้ทดสอบและ optimize กลยุทธ์ |
| โหมดจำลองจาก tick จริง | — | มีโหมด Every tick based on real ticks |
ช่องที่ขึ้น ”—” หมายถึงทีมงานไม่ได้ตรวจเอกสาร MT4 ในหัวข้อนั้น จึงไม่ยืนยัน ไม่ได้แปลว่าไม่มี
ในฝั่ง MT5 เอกสารอธิบายว่า Strategy Tester ใช้ ทดสอบและ optimize กลยุทธ์ และโหมด Every tick based on real ticks ให้สภาพการทดสอบที่ใกล้ของจริง นี่คือเหตุผลหลักที่ทีมงานเลือกทดสอบ EA บน MT5 ส่วนวิธีตั้งค่าทีละขั้นอยู่ในบท วิธี Backtest EA Forex ใน MT5 ถ้ายังไม่คุ้นกับตัวโปรแกรมเริ่มที่บท MT5 คืออะไร ก่อนได้
EA Forex มีกี่แบบ
เอกสารของ MetaQuotes ไม่ได้แบ่งประเภท EA ตามกลยุทธ์ การแบ่ง 4 แบบ ด้านล่างเป็นกรอบอธิบายของทีมงาน ใช้เพื่อให้มองออกว่า EA ที่เห็นในตลาดส่วนใหญ่ทำเงินและเสียเงินด้วยกลไกอะไร
| แบบ | หลักการ | หน้าตากราฟกำไรที่มักเห็น | จุดตายหลัก |
|---|---|---|---|
| Trend following | ตามทิศราคา เข้าเมื่อเกิดแนวโน้ม ตัดขาดทุนเมื่อผิดทาง | ขาดทุนเล็ก ๆ ถี่ แล้วกำไรก้อนใหญ่นาน ๆ ครั้ง | ตลาดไซด์เวย์ยาว ขาดทุนสะสมจนคนเลิกก่อนเจอเทรนด์ |
| Grid | วางคำสั่งเป็นขั้นบันไดทุกระยะราคา เก็บกำไรตอนราคาแกว่ง | เส้นขึ้นเรียบ ชนะบ่อย | ราคาวิ่งทางเดียวยาว ไม้ค้างสะสมจนพอร์ตรับไม่ไหว |
| Martingale | เพิ่มขนาดไม้เป็นทวีคูณหลังขาดทุน หวังไม้ถัดไปถอนทุนคืน | เส้นขึ้นเรียบมากในช่วงที่ยังไม่เจอแพ้ติดกันยาว | แพ้ติดกันหลายไม้ ขนาดไม้โตเกินทุน ระเบิดในครั้งเดียว |
| News | เข้าเทรดช่วงประกาศข่าวเศรษฐกิจ หวังจับราคาวิ่งแรง | ผลไม่สม่ำเสมอ ขึ้นกับข่าว | spread และ slippage ช่วงข่าว ต้องเช็กว่าการทดสอบจำลองสองอย่างนี้ไว้ยังไง |
ลักษณะกราฟในตารางเป็นภาพที่ทีมงานใช้พิจารณา ไม่ใช่ผลที่ EA ทุกตัวในแบบนั้นต้องแสดง และ EA บางตัวเป็นลูกผสม เช่น grid ที่เพิ่มขนาดไม้แบบ martingale ไปด้วย ซึ่งรวมจุดตายของทั้งสองแบบไว้ในตัวเดียว สิ่งที่ควรจำคือ กราฟกำไรที่เรียบอย่างเดียวไม่พอให้ประเมินความเสี่ยง ระบบที่ไม่ยอมปิดไม้ขาดทุนอาจมีกราฟ balance ที่เรียบ ขณะที่ไม้ติดลบยังค้างอยู่ ทีมงานจึงดู equity drawdown และไม้ที่ยังเปิดค้างประกอบทุกครั้ง
ทำไม EA martingale ถึงอันตราย
Wikipedia อธิบายระบบ martingale ว่าเป็นการ เพิ่มเดิมพันเป็นสองเท่าหลังแพ้ทุกครั้ง แนวคิดคือเมื่อชนะครั้งเดียวจะได้ทุนที่เสียไปทั้งหมดคืน แต่ตัวเลขในบทความเดียวกันแสดงให้เห็นว่าการแพ้ติดกันกินทุนเร็วแค่ไหน แพ้ 6 ครั้งแรกติดกันเสียรวม 63 หน่วย และแพ้ติดกัน 10 ครั้งเสียถึง 1,023 เท่าของเดิมพันแรก
ตารางนี้เป็นตัวอย่างสมมุติ คำนวณจากกฎคูณ 2 เริ่มที่ 1 หน่วย เพื่อให้เห็นว่าตัวเลขโตยังไง
| ไม้ที่แพ้ติดกัน | ขนาดไม้ไม้นั้น (หน่วย) | ขาดทุนสะสม (หน่วย) |
|---|---|---|
| 1 | 1 | 1 |
| 2 | 2 | 3 |
| 3 | 4 | 7 |
| 4 | 8 | 15 |
| 5 | 16 | 31 |
| 6 | 32 | 63 |
ตัวอย่างสมมุตินี้มีหลักเดียวที่ต้องจำ ขาดทุนสะสมหลังแพ้ติดกันตามกฎนี้จะเท่ากับขนาดไม้ถัดไปลบหนึ่งหน่วย แปลว่าทุกครั้งที่ไปต่ออีกไม้ คุณต้องวางเงินเท่ากับที่เสียไปทั้งหมดบวกอีกหนึ่งหน่วย และถ้าไม้นั้นชนะโดยได้กำไรเท่ากับเงินที่วางและไม่มีต้นทุนใด ๆ จะเหลือกำไรสุทธิแค่ 1 หน่วย ในการเทรดจริงกำไรต่อไม้ไม่จำเป็นต้องเท่ากับเงินที่วาง และมี spread กับ slippage หักออกด้วย
Wikipedia สรุปไว้ว่าเมื่อขนาดเดิมพันมีเพดาน martingale ชนะในระยะยาวไม่ได้ ในบัญชีเทรด เพดานนั้นมีอยู่จริง ทั้งทุนที่มีจำกัด และ margin ที่บัญชีเรียกเก็บ ทีมงานเคยเทส EA grid martingale บนทองจนพอร์ตระเบิดให้ดูแล้วในบท EA grid ทองดีไหม บทนี้จึงไม่เล่าผลซ้ำ
ก่อนใช้ EA ต้องเช็กอะไรบ้าง
ไม่ว่า EA จะมาจากไหน ฟรีหรือเสียเงิน เขียนเองหรือมีคนแชร์มา หลักเช็กเหมือนกัน ด้านล่างคือรายการที่ทีมงานใช้ เรียงจากสำคัญที่สุด
1. ทดสอบเองบนข้อมูลที่ใกล้ของจริง
อย่าเชื่อภาพรายงานที่คนอื่นส่งมา ให้รัน EA ใน Strategy Tester เองบนสินทรัพย์และช่วงเวลาที่จะใช้จริง เลือกโหมดที่ใช้ tick จริงถ้ามีข้อมูล และตั้ง spread ให้ใกล้กับบัญชีที่จะใช้ ถ้า EA เป็นไฟล์ปิดที่ไม่ยอมให้ทดสอบ ถือเป็นสัญญาณเตือนในตัวมันเอง
2. ดู drawdown ก่อนดูกำไร
Wikipedia นิยาม drawdown ว่าเป็น การวัดการลดลงจากจุดสูงสุดในอดีต และ maximum drawdown คือ drawdown ที่ลึกที่สุดตลอดประวัติ ในรายงานผลทดสอบของ MT5 มีค่าที่ควรอ่านเป็นชุดนี้
| ค่าในรายงาน MT5 | นิยามตามเอกสาร | อ่านยังไง |
|---|---|---|
| Equity Drawdown Relative | ส่วนต่างเป็นเปอร์เซ็นต์ระหว่าง equity สูงสุดเฉพาะช่วงกับค่าต่ำถัดไป | นับไม้ที่ยังเปิดค้างด้วย สำคัญกว่า balance drawdown สำหรับระบบที่ถือไม้ขาดทุน |
| Profit Factor | อัตราส่วนกำไรรวมต่อขาดทุนรวม | ต่ำกว่า 1 แปลว่าขาดทุนรวมมากกว่ากำไรรวม |
| Recovery Factor | กำไรที่ได้หารด้วย drawdown สูงสุด | บอกว่ากำไรคุ้มกับความเจ็บที่ต้องทนไหม |
| Total Trades | จำนวนดีลที่ปิดเป็นกำไรหรือขาดทุน | จำนวนน้อย ผลอาจมาจากโชค |
จุดที่ต้องระวังคือ balance drawdown ของระบบ grid หรือ martingale มักดูต่ำ เพราะระบบไม่ยอมปิดไม้ขาดทุน ขาดทุนจึงไปซ่อนอยู่ใน equity แทน ถ้าดูแต่ balance จะเห็นภาพสวยกว่าความจริงมาก
3. จำนวนเทรดต้องมากพอ และต้องผ่านหลายสภาพตลาด
ไม่มีเอกสารที่ทีมงานอ่านได้กำหนดตัวเลขขั้นต่ำตายตัว หลักคิดของทีมงานคือดูจำนวนเทรดคู่กับความหลากหลายของสภาพตลาด ผลจากเทรดจำนวนน้อยในช่วงที่ตลาดวิ่งทางเดียวบอกอะไรได้น้อยกว่าผลจากเทรดจำนวนมากที่ผ่านทั้งช่วงเทรนด์ ไซด์เวย์ และช่วงผันผวน ให้ดูด้วยว่ากำไรกระจุกอยู่ในไม่กี่ไม้หรือไม่ ถ้าเอากำไรก้อนใหญ่ที่สุดออกแล้วระบบกลายเป็นขาดทุน แปลว่าผลขึ้นกับไม้ไม่กี่ไม้ ต้องถามต่อว่าไม้เหล่านั้นเกิดจากกลไกของกลยุทธ์จริง หรือเป็นเหตุการณ์ที่อาจไม่เกิดซ้ำ เรื่องอัตราชนะที่สูงแต่ยังขาดทุนได้อธิบายไว้ในบท win rate forex
4. ทดสอบช่วงที่ไม่ได้ใช้จูน (forward)
ปัญหาใหญ่ของ EA ที่ขายกันคือ overfitting Wikipedia นิยามว่าเป็นการวิเคราะห์ที่ตรงกับข้อมูลชุดหนึ่งมากเกินไป จนอาจทำนายข้อมูลใหม่ได้ไม่น่าเชื่อถือ และโมเดลที่ overfit คือโมเดลที่มีพารามิเตอร์มากกว่าที่ข้อมูลรองรับ EA ที่มี input เป็นสิบตัวแล้วจูนจนกราฟอดีตเรียบกริบจึงน่าสงสัยมากกว่าน่าเชื่อ
MT5 มีเครื่องมือช่วยเรื่องนี้ เอกสารอธิบายว่า forward testing คือ การรัน EA ซ้ำบนช่วงเวลาอื่น ทีมงานใช้มันตรวจผลนอกช่วงข้อมูลที่ใช้จูน หลักง่าย ๆ คือจูนด้วยข้อมูลช่วงหนึ่ง แล้วดูผลบนอีกช่วงที่ EA ไม่เคยเห็น ถ้าผลพังทันที ค่าที่จูนมาก็เชื่อไม่ได้
5. รันบัญชีทดลองและเงินเล็กก่อน
หลัง backtest ผ่าน ให้รันบนบัญชีทดลองหรือเงินก้อนเล็กที่เสียได้ระยะหนึ่ง เพื่อเทียบว่าผลจริงห่างจากผลทดสอบแค่ไหน แล้วหาสาเหตุของส่วนต่าง เช่น spread หรือ slippage ที่ต่างจากที่ตั้งไว้ในการทดสอบ จากนั้นค่อยกำหนดขนาดไม้จากความเสี่ยงต่อไม้ที่รับได้ ตามหลักในบท money management
EA Forex ดีไหม คุ้มที่จะใช้หรือเปล่า
คำตอบตรงที่สุดคือ EA ดีหรือไม่ดีเท่ากับกฎที่อยู่ข้างใน ตัว EA เป็นแค่ช่องทางทำตามกฎ ไม่ได้เพิ่มความได้เปรียบให้กลยุทธ์ที่ไม่มีความได้เปรียบ
| สิ่งที่ EA ช่วยได้ | สิ่งที่ EA ช่วยไม่ได้ |
|---|---|
| ทำตามกฎที่เขียนไว้ ไม่ลังเล ไม่แก้แค้นตลาด | ทำให้กลยุทธ์ที่ไม่มีความได้เปรียบกลายเป็นกำไร |
| เฝ้าราคาได้ตลอดเวลาที่เครื่องเปิดอยู่ | หยุดเองเมื่อสภาพตลาดเปลี่ยน ถ้าไม่ได้เขียนกฎนั้นไว้ |
| ทดสอบย้อนหลังได้เป็นระบบ | รับรองว่าผลในอดีตจะเกิดซ้ำในอนาคต |
| ลดความผิดพลาดจากอารมณ์ตอนกดเอง | ลบต้นทุน spread และ slippage |
สัญญาณที่ทีมงานมองว่าควรถอยออกมาก่อน ได้แก่ กราฟกำไรเรียบเกินจริงแต่ไม่บอก equity drawdown, ไม่ยอมให้ทดสอบเอง, เคลมผลตอบแทนต่อเดือนสูงลิ่วโดยไม่มีช่วงขาดทุนให้เห็น และอธิบายกลยุทธ์ไม่ได้เลยว่าได้เงินจากอะไร ถ้าอยากเห็นว่ารายงานผลทดสอบที่เปิดเดือนแย่ ๆ ให้ดูด้วยหน้าตาเป็นยังไง ดูตัวอย่างได้ในบท รายงานผลทดสอบ EA เทรดทอง ซึ่งตั้งใจโชว์ทั้งช่วงที่ไม่ได้อะไรและเดือนที่ขาดทุนหนัก
สรุป
- EA Forex คือโปรแกรมที่ผูกกับกราฟ ใน MT4 (เขียนด้วย MQL4) หรือ MT5 (เขียนด้วย MQL5) แล้ววิเคราะห์และส่งคำสั่งเองตามกฎ
- EA ของสองแพลตฟอร์มเขียนด้วยภาษาคนละตัว ต้องเช็กว่าทำมาสำหรับแพลตฟอร์มไหน และ EA รันอยู่ในตัว MetaTrader บนเครื่องที่ติดตั้ง
- กรอบของทีมงานแบ่ง EA เป็น trend, grid, martingale และ news และกราฟกำไรที่เรียบอย่างเดียวไม่พอให้ประเมินความเสี่ยง
- martingale แพ้ติดกัน 10 ครั้งเสียถึง 1,023 เท่าของไม้แรก ทีมงานจึงมองว่าทุนจำกัดเป็นข้อจำกัดสำคัญที่สุดของการเพิ่มไม้แบบนี้
- ก่อนใช้ ให้ทดสอบเอง ดู equity drawdown ก่อนกำไร ดูจำนวนเทรด ทดสอบช่วงที่ไม่ได้จูน แล้วเริ่มจากเงินเล็ก
EA ไม่ใช่เครื่องพิมพ์เงิน มันคือเครื่องขยายผลของกฎที่คุณใส่เข้าไป กฎดีมันขยายความสม่ำเสมอ กฎแย่มันขยายการขาดทุนให้เร็วขึ้น