Expert Advisor (EA) ต่างจากไฟล์ดาวน์โหลดอื่นๆ บนเว็บไซต์นี้ — อินดิเคเตอร์ทำได้แค่พล็อตกราฟหรือแจ้งเตือน แต่ EA จะส่งคำสั่งเทรดแทนคุณจริงๆ EA ฟรีตัวนี้เทรดด้วยกลยุทธ์ momentum เดียวที่สร้างขึ้นจาก Awesome Oscillator (AO) ทั้งหมด — มันเข้าเทรดทันทีที่ AO ตัดผ่านเส้นศูนย์ (zero line) จากนั้นจัดการ Stop Loss, Take Profit และขนาดโพซิชันให้อัตโนมัติด้วยเครื่องมือบริหารความเสี่ยงชุดเดียวกับที่สอนไว้ในบทเรียนอื่นบนเว็บไซต์นี้
กลยุทธ์ทำงานอย่างไร
สัญญาณเข้าเทรดคือการที่ Awesome Oscillator ตัดผ่านเส้นศูนย์ — สัญญาณเดียวกับที่อธิบายไว้ในบทเรียน Awesome Oscillator ของเว็บไซต์นี้ แต่นำมาใช้ที่นี่โดยไม่มี pattern หรือตัวกรองเสริมใดๆ AO คำนวณจากราคาตรงกลางของแท่งเทียน (midpoint) คือ (High + Low) / 2 ไม่ใช่ราคาปิด โดยนำ simple moving average ระยะสั้น 5 period ของ midpoint นั้น ลบด้วย simple moving average ระยะยาว 34 period ของ midpoint เดียวกัน เมื่อค่าเฉลี่ยระยะสั้นอยู่เหนือค่าเฉลี่ยระยะยาว AO จะอ่านค่าเป็นบวก หมายความว่า momentum ล่าสุดแรงกว่าค่าเฉลี่ยระยะยาว และเมื่อค่าเฉลี่ยระยะสั้นอยู่ต่ำกว่าค่าเฉลี่ยระยะยาว AO จะอ่านค่าเป็นลบ เส้นศูนย์คือจุดที่ค่าเฉลี่ยทั้งสองเท่ากันพอดี ดังนั้นการตัดผ่านเส้นนี้จึงเป็นช่วงเวลาที่ค่าเฉลี่ยระยะสั้นแซงขึ้นเหนือ (หรือถูกแซงลงโดย) ค่าเฉลี่ยระยะยาว ซึ่งเป็นการเปลี่ยนแปลงที่แท้จริงว่า momentum ช่วงเวลาไหนกำลังควบคุมตลาดอยู่ ไม่ใช่แค่การกระเพื่อมของความสูง histogram เท่านั้น เพราะ AO เปรียบเทียบแค่ moving average สองเส้นของราคา โดยไม่มีการปรับความเรียบ (smoothing) หรือเส้น signal เพิ่มเติมใดๆ การตัดผ่านเส้นศูนย์จึงเป็นสัญญาณ momentum ที่ตรงไปตรงมาที่สุดและผ่านการประมวลผลน้อยที่สุดที่ AO จะให้ได้ ซึ่งเป็นเหตุผลว่าทำไม EA ตัวนี้จึงถูกสร้างขึ้นรอบสัญญาณนี้ แทนที่จะเป็น pattern ที่ซับซ้อนกว่าอย่าง twin peaks ที่กล่าวถึงในบทเรียนอินดิเคเตอร์
Stop Loss, Take Profit และขนาดโพซิชัน
ทั้ง Stop Loss และ Take Profit คำนวณจาก ATR แทนที่จะใช้ระยะ pip คงที่ — คู่เงินหรือ session ที่ผันผวนมากจะได้ stop ที่กว้างขึ้นโดยอัตโนมัติ ส่วนช่วงที่นิ่งจะได้ stop ที่แคบลง ดังนั้น stop จึงสะท้อนสิ่งที่ตลาดกำลังทำอยู่จริงในขณะนั้นเสมอ แทนที่จะเป็นตัวเลขที่กำหนดไว้ครั้งเดียวแล้วไม่เคยเปลี่ยน ระยะ Stop Loss คือ ATRMultiplier × ATR (ค่าเริ่มต้น multiplier คือ 2.0) และ Take Profit ถูกตั้งเป็น RiskRewardRatio × ระยะ Stop Loss (ค่าเริ่มต้น 2.0) ดังนั้นทุกเทรดที่ EA ตัวนี้เปิดจะมีสัดส่วนผลตอบแทนต่อความเสี่ยงที่คงที่และรู้ล่วงหน้าได้ ไม่ว่าจะเทรดคู่เงินหรือ timeframe ไหนก็ตาม
ขนาดโพซิชันคำนวณจาก RiskPercent (ค่าเริ่มต้น 1.0%) เทียบกับยอดเงินในบัญชีและระยะ Stop Loss — ด้วยวิธีเดียวกับตัวอย่างการคำนวณใน พื้นฐานการบริหารความเสี่ยง คือ จำนวนเงินที่ยอมเสี่ยง ÷ ระยะ Stop Loss = ขนาด lot เมื่อ stop ที่คำนวณจาก ATR กว้างขึ้นในคู่เงินที่ผันผวน lot จะเล็กลงโดยอัตโนมัติ และเมื่อ stop แคบลงในคู่เงินที่นิ่ง lot จะใหญ่ขึ้น ทำให้ความเสี่ยงเป็นเงินดอลลาร์ต่อเทรดคงที่ในระดับหนึ่ง แม้ระยะราคาไปถึง stop จะเปลี่ยนไปในแต่ละเทรดก็ตาม parameter UseFixedLot มีไว้เป็นทางเลือกสำรองสำหรับเทรดเดอร์ที่อยากเทรดด้วยขนาด lot คงที่แทนการคำนวณตามความเสี่ยง — มีประโยชน์สำหรับการทดสอบ หรือสำหรับบัญชีขนาดเล็กที่การคำนวณตามเปอร์เซ็นต์จะปัดลงเหลือ lot ขั้นต่ำของ broker อยู่ดี
เงื่อนไขการเข้าเทรด
- BUY — Awesome Oscillator ตัดจากค่าลบ (หรือศูนย์) ขึ้นเป็นค่าบวก บนแท่งเทียนที่ปิดแล้วสองแท่งติดกัน หมายความว่าค่า AO ของแท่งก่อนหน้าอยู่ที่ศูนย์หรือต่ำกว่า และค่าของแท่งปัจจุบันอยู่เหนือศูนย์
- SELL — Awesome Oscillator ตัดจากค่าบวก (หรือศูนย์) ลงเป็นค่าลบ — เป็นรูปแบบที่ตรงข้ามกัน
นอกเหนือจากตัวสัญญาณเองแล้ว มีกลไกความปลอดภัย 3 อย่างที่ควบคุมทุกเทรด ได้แก่ EA จะประเมินเงื่อนไขเหล่านี้เพียงครั้งเดียวต่อแท่งเทียนใหม่ (ไม่ใช่ทุก tick ดังนั้นการตัดกันครั้งเดียวจะไม่สามารถสั่งเทรดซ้ำหลายครั้งภายในแท่งเทียนเดียวกันได้) เปิดได้ครั้งละ 1 โพซิชันเท่านั้น (สัญญาณใหม่จะถูกละเว้นตราบใดที่โพซิชันจาก EA นี้ยังเปิดอยู่) และจัดการเฉพาะโพซิชันที่มี magic number ของตัวเอง (20260727) เท่านั้น จึงไม่มีทางไปยุ่งกับเทรดที่คุณเปิดเองด้วยมือ หรือเทรดที่เปิดโดย EA ตัวอื่นบนบัญชีเดียวกัน ยังมีตัวกรอง spread คอยดักอยู่หน้าทุกการเข้าเทรดด้วย — หาก spread ปัจจุบันกว้างกว่า MaxSpreadPoints EA จะข้ามแท่งเทียนนั้นไปทั้งหมด แทนที่จะเปิดเทรดในราคาที่ไม่ดีช่วงสภาพคล่องต่ำ
Parameters
- ATRPeriod (ค่าเริ่มต้น 14) — ช่วงย้อนหลังที่ใช้คำนวณ ATR สำหรับกำหนดระยะ Stop Loss
- ATRMultiplier (ค่าเริ่มต้น 2.0) — ระยะ Stop Loss = ATR × ค่านี้
- RiskRewardRatio (ค่าเริ่มต้น 2.0) — ระยะ Take Profit = ระยะ Stop Loss × ค่านี้
- UseFixedLot — เปลี่ยนวิธีคำนวณขนาดโพซิชันจากแบบตามความเสี่ยงเป็นขนาด lot คงที่
- FixedLotSize (ค่าเริ่มต้น 0.01) — ขนาด lot ที่ใช้เมื่อเปิดใช้งาน
UseFixedLot - RiskPercent (ค่าเริ่มต้น 1.0) — เปอร์เซ็นต์ของยอดเงินในบัญชีที่ยอมเสี่ยงต่อการเทรด ใช้คำนวณขนาด lot จะถูกข้ามหาก
UseFixedLotเปิดใช้งานอยู่ - MaxSpreadPoints (ค่าเริ่มต้น 30) — ข้ามการเข้าเทรดใหม่หาก spread กว้างกว่าค่านี้ เพื่อหลีกเลี่ยงการเปิดเทรดที่ราคาไม่ดีช่วงสภาพคล่องต่ำ
- MagicNumber (ค่าเริ่มต้น 20260727) — แท็กทุกคำสั่งที่ EA นี้ส่งออกไป เพื่อให้ระบบจัดการโพซิชันไม่มีวันไปยุ่งกับเทรดที่เปิดด้วยมือหรือโดย EA ตัวอื่น
- EnableTrading — สวิตช์เปิด/ปิดหลัก ใช้พักการทำงานของ EA ได้โดยไม่ต้องถอดออกจากกราฟ
สังเกตว่าไม่มีอะไรหายไปจากรายการนี้เลย นั่นคือไม่มี period input ของ AO อยู่เลยสักตัว นั่นไม่ใช่ความผิดพลาด แต่เป็นผลโดยตรงจากวิธีสร้างอินดิเคเตอร์ตัวนี้ ต่างจาก RSI หรือ CCI ที่มี period ให้ปรับได้ moving average 5 period และ 34 period ของ Awesome Oscillator ถูกกำหนดตายตัวไว้ตั้งแต่นิยามดั้งเดิมของอินดิเคเตอร์ จึงไม่มีอะไรให้เปิดเป็น setting เลย ทุกกราฟที่รัน EA ตัวนี้ ไม่ว่าจะบัญชีไหนก็ตาม จะคำนวณด้วยสูตรเดียวกันเป๊ะๆ — เป็นตัวแปรที่ต้องปรับน้อยลงไปหนึ่งตัว และเป็นช่องทางหนึ่งที่น้อยลงในการทำให้ backtest ดูดีเกินจริงด้วยการขยับค่า period ไปเรื่อยๆ จนผลลัพธ์ออกมาสวย
ทำไมต้องเป็นการตัดผ่านเส้นศูนย์แบบดิบ และเทียบกับ MACD อย่างไร
EA ตัวนี้เทรดตามการตัดผ่านเส้นศูนย์ของ AO ทุกครั้งที่เกิดขึ้นจริงๆ โดยไม่มีการยืนยันแบบ twin peaks ไม่มีตัวกรองเทรนด์ และไม่มีขนาดขั้นต่ำของ histogram ที่ต้องผ่านก่อนจึงจะนับเป็นการตัดกัน นี่คือการออกแบบที่ตั้งใจ และควรค่าแก่การเทียบกับ EA อีกตัวของเว็บไซต์นี้ที่ใช้การตัดผ่านเส้นศูนย์เหมือนกัน นั่นคือ MACD momentum EA เพราะทั้งสองกลยุทธ์ดูคล้ายกันในทางทฤษฎี แต่ทำงานต่างกันในรายละเอียด สัญญาณของ MACD มาจากการที่ exponential moving average ของราคาปิดตัดกับเส้น signal ที่ปรับความเรียบเพิ่มอีกชั้นหนึ่ง ซึ่งทำให้มันมี lag และการกรอง noise ในตัวอยู่บ้าง ส่วนการตัดผ่านเส้นศูนย์ของ AO มาจาก simple moving average ของ midpoint แท่งเทียน โดยไม่มีเส้น signal เลย — มีชั้นการปรับความเรียบน้อยกว่าหนึ่งชั้นระหว่างการเคลื่อนไหวของราคาดิบกับการตัดสินใจเข้าเทรด ดังนั้น AO จึงมักตอบสนองต่อการเปลี่ยน momentum จริงได้เร็วกว่าเล็กน้อย แต่ด้วยเหตุผลเดียวกันนี้ มันก็เปิดรับ noise จากแท่งเทียนเดี่ยวๆ ที่ทำให้ค่ากลับไปกลับมาได้ง่ายกว่าเล็กน้อยเช่นกัน
การแลกเปลี่ยนนี้สำคัญที่สุดในตลาดที่นิ่งและแกว่งตัวไซด์เวย์ เมื่อราคาลอยตัวไปด้านข้างโดยไม่มีทิศทางจริง ค่าเฉลี่ย midpoint ระยะ 5 period และ 34 period จะอยู่ใกล้กันมาก และแท่ง histogram ของ AO จะหดตัวเข้าใกล้ศูนย์และแกว่งตัดผ่านมันไปมาซ้ำๆ — แต่ละครั้งที่แกว่งผ่านถือเป็นการตัดกันที่ถูกต้องตามกฎของ EA ตัวนี้ในทางเทคนิค แต่โดยรวมแล้วมันคือรูปแบบ whipsaw ที่ขาดทุนเล็กน้อยจาก spread และ slippage ในทุกการเข้าเทรดที่ผิดพลาด ดังนั้น EA ตัวนี้จึงมักทำผลงานได้ดีที่สุดในตลาดที่กำลังมีเทรนด์หรือกำลัง breakout ออกจากกรอบราคา ซึ่งเป็นจุดที่การตัดผ่านเส้นศูนย์มักบ่งบอกจุดเริ่มต้นของการเคลื่อนไหวจริงได้อย่างน่าเชื่อถือ และทำผลงานแย่ที่สุดในสภาวะที่แคบและไม่มีทิศทาง ซึ่งเป็นจุดที่ตัวกรองเทรนด์จะช่วยกันไม่ให้เข้าเทรดเลยได้ การตรวจสอบสภาวะ เทรนด์กับตลาดไซด์เวย์ ก่อนปล่อย EA ตัวนี้ทำงานกับคู่เงินใดก็ตาม คือสิ่งเดียวที่ทรงพลังที่สุดที่เทรดเดอร์ทำได้เพื่อปรับปรุงผลลัพธ์ของมัน แม้ว่าตัว EA เองจะไม่ได้พยายามตรวจจับสภาวะนั้นโดยอัตโนมัติเลยก็ตาม — มันเทรดตามการตัดกันไม่ว่าจะเกิดขึ้นที่ไหนหรือเมื่อไหร่ก็ตาม
การติดตั้งและตั้งค่า
EA ติดตั้งในโฟลเดอร์ที่ต่างจากอินดิเคเตอร์ — เป็นขั้นตอนที่คนพลาดบ่อยที่สุด
- ดาวน์โหลดไฟล์ด้านล่างสำหรับ platform ของคุณ
- เปิด MetaTrader → คลิก
File→Open Data Folder - นำไฟล์ไปวางในโฟลเดอร์
MQL4/Experts(MetaTrader 4) หรือMQL5/Experts(MetaTrader 5) — ไม่ใช่ โฟลเดอร์ Indicators - รีสตาร์ท MetaTrader แล้วลาก EA จากหน้าต่าง Navigator ไปวางบนกราฟ
- เปิดใช้งาน AutoTrading (MT4) หรือ Algo Trading (MT5) บนแถบเครื่องมือ — EA จะไม่ส่งคำสั่งเทรดใดๆ เลยถ้าปิดสวิตช์นี้อยู่ แม้จะติดอยู่บนกราฟแล้วก็ตาม
- ตรวจสอบและปรับ parameter ในหน้าต่างตั้งค่าของ EA ก่อนยืนยัน
ข้อควรระวัง
ทดสอบบนบัญชีเดโมก่อนเสมอ ในสภาวะตลาดที่หลากหลาย ก่อนนำเงินจริงไปเสี่ยง — ผลงานที่ผ่านมา ไม่ว่าจาก backtest หรือบัญชีจริง ไม่เคยรับประกันผลลัพธ์ในอนาคต ไม่มีกลยุทธ์ใด ไม่ว่าจะอัตโนมัติหรือเทรดเอง ที่ชนะทุกครั้ง และ EA ตัวนี้สามารถขาดทุนในบางเทรดได้เช่นกัน การเทรดตามการตัดผ่านเส้นศูนย์ของ AO ทุกครั้งโดยไม่มีตัวกรองเทรนด์ หมายความว่ามันจะเจอสัญญาณผิดพลาดมากกว่ากลยุทธ์ที่มีตัวกรองในตลาดที่แกว่งตัวไซด์เวย์ ไฟล์ทั้งสองเป็น source code — เปิดและตรวจสอบให้ครบถ้วน และเข้าใจว่า parameter แต่ละตัวทำอะไร ก่อนนำไปใช้งาน เนื้อหานี้เป็นการศึกษาทั่วไป ไม่ใช่คำแนะนำการลงทุนส่วนบุคคล
ดาวน์โหลด EA
วิธีติดตั้ง — MetaTrader 4
- ดาวน์โหลดไฟล์
awesome-oscillator-momentum-ea.mq4ด้านล่าง - เปิด MetaTrader 4 → คลิก
File→Open Data Folder - นำไฟล์ไปวางในโฟลเดอร์
MQL4/Experts - รีสตาร์ท MetaTrader 4 แล้วลาก EA จากหน้าต่าง Navigator ไปวางบนกราฟ
วิธีติดตั้ง — MetaTrader 5
- ดาวน์โหลดไฟล์
awesome-oscillator-momentum-ea.mq5ด้านล่าง - เปิด MetaTrader 5 → คลิก
File→Open Data Folder - นำไฟล์ไปวางในโฟลเดอร์
MQL5/Experts - รีสตาร์ท MetaTrader 5 แล้วลาก EA จากหน้าต่าง Navigator ไปวางบนกราฟ
ไฟล์ทั้งสองเป็น source code — โปรดเปิดและตรวจสอบโค้ดทั้งหมดก่อนใช้งาน เพื่อความปลอดภัยของคุณเอง