LearnForexHub
EA

EA: Gator Oscillator Trend Expert Advisor

เขียนโดย , ผู้ก่อตั้งและบรรณาธิการอัปเดตล่าสุด วิธีที่เราเขียนและตรวจทานบทเรียน

Expert Advisor (EA) ต่างจากไฟล์ดาวน์โหลดอื่นๆ บนเว็บไซต์นี้ อินดิเคเตอร์ทำได้แค่พล็อตกราฟหรือแจ้งเตือน แต่ EA จะส่งคำสั่งเทรดแทนคุณจริงๆ EA ฟรีตัวนี้เทรดด้วยกลยุทธ์ trend-following ที่สร้างขึ้นทั้งหมดจาก Alligator และ Gator Oscillator ของ Bill Williams ที่ทำงานร่วมกัน คือ Gator ยืนยันว่า Alligator ตื่นขึ้นจริงๆ ก่อนที่จะพิจารณาเทรดใดๆ และลำดับเส้นของ Alligator เองจะตัดสินว่าเทรนด์ที่ยืนยันแล้วนั้นเอนเอียงไปทางไหนจริงๆ

กลยุทธ์ทำงานอย่างไร

EA ตัวนี้ใช้ logic การเข้าเทรดเดียวกับที่กล่าวถึงในบทเรียน Gator Oscillatorโดยตรง คือต้องการให้ histogram ทั้งสองของ Gator (ระยะห่าง Jaw-Teeth และ Teeth-Lips) โตขึ้นในแท่งเดียวกัน ซึ่งเป็นลายเซ็นเชิงกลไกของเส้น Alligator ที่กำลังกางออกจากกันอย่างจริงจัง ไม่ใช่แค่พันกันอยู่หรือกางออกเต็มที่แล้วและกำลังแบนราบลง การโตขึ้นอย่างเดียวไม่ได้บอกว่าควรเทรดทิศทางไหน ดังนั้น EA จึงอ่านลำดับ Jaw/Teeth/Lips ของ Alligator เองในแท่งเดียวกันนั้นด้วย คือ fan แบบ bullish (Lips อยู่เหนือ Teeth อยู่เหนือ Jaw) ชี้ไปทาง long ส่วน fan แบบ bearish (Lips อยู่ต่ำกว่า Teeth อยู่ต่ำกว่า Jaw) ชี้ไปทาง short EA จะพิจารณาเข้าเทรดก็ต่อเมื่อทั้งสองเงื่อนไขตรงกันในแท่งเดียวกันเท่านั้น คือ การโตขึ้นที่กำลังเกิดขึ้นจริง และ ลำดับ fan ที่ชัดเจน ซึ่งตั้งใจให้เข้มงวดกว่าการเทรดตามสัญญาณใดสัญญาณหนึ่งเพียงลำพัง

Stop Loss, Take Profit และขนาดโพซิชัน

Price + AlligatorTake Profit (TP)Stop Loss (SL) = ATR × multiplierBUY0Gator Oscillator: both histograms growing confirms the trend before entry
Entry conditions: BUYwhen both Gator histograms are growing and Lips > Teeth > Jaw — SELL on the mirrored bearish fan — SL and TP are placed automatically from ATR

ต่างจาก Fractals Breakout EA หรือ Parabolic SAR Trend EA ตัว Gator Oscillator เองไม่มีระดับราคาตามธรรมชาติให้ยึด stop ไว้ด้วย เพราะค่า histogram ไม่ใช่ราคา จึงไม่มีอะไรบนกราฟที่เทียบเท่ากับ fractal ที่ถูกทะลุ หรือจุด SAR ให้วาง Stop Loss เทียบด้วย EA ตัวนี้ใช้วิธีอิง ATR แบบเดียวกับ EA ตัวอื่นส่วนใหญ่บนเว็บไซต์นี้แทน คือระยะ Stop Loss = ATRMultiplier × ATR (ค่าเริ่มต้น multiplier 2.0) คำนวณใหม่ทุกครั้งที่เปิดเทรด ทำให้กว้างขึ้นอัตโนมัติในคู่เงินที่ผันผวนมาก และแคบลงในช่วงที่นิ่ง Take Profit ถูกตั้งเป็น RiskRewardRatio × ระยะ Stop Loss นั้น (ค่าเริ่มต้น 2.0) ทำให้ความเสี่ยงและผลตอบแทนของทุกเทรดอยู่ในสัดส่วนคงที่ที่รู้ล่วงหน้าได้

ขนาดโพซิชันใช้วิธีเดียวกับตัวอย่างการคำนวณที่สอนไว้ในพื้นฐานการบริหารความเสี่ยง คือ RiskPercent ของยอดเงินในบัญชี (ค่าเริ่มต้น 1.0%) หารด้วยระยะ Stop Loss ที่มาจาก ATR แปลงผ่านมูลค่า tick ของสัญลักษณ์นั้น และปรับให้เข้ากับ lot step ของ broker มี input UseFixedLot พร้อมค่า FixedLotSize ให้เลือกใช้เป็นทางเลือกสำหรับเทรดเดอร์ที่ต้องการเทรดด้วยขนาด lot คงที่แทนการคำนวณตามความเสี่ยง

เงื่อนไขการเข้าเทรด

  • BUY — ในแท่งเทียนที่เพิ่งปิดสมบูรณ์ล่าสุด histogram ทั้งสองของ Gator โตขึ้น (แต่ละตัวมีค่าสัมบูรณ์มากกว่าแท่งก่อนหน้า) และเส้น Alligator อ่านได้ว่า Lips อยู่เหนือ Teeth อยู่เหนือ Jaw
  • SELL — histogram ทั้งสองของ Gator โตขึ้น และเส้น Alligator อ่านได้ว่า Lips อยู่ต่ำกว่า Teeth อยู่ต่ำกว่า Jaw

EA จะประเมินเงื่อนไขเหล่านี้เพียงครั้งเดียวต่อแท่งเทียนใหม่เท่านั้น ติดตามจากเวลาเปิดของแท่งเทียนปัจจุบัน ไม่ใช่ทุก tick EA เปิดได้ครั้งละ 1 โพซิชันเท่านั้น นับและกรองด้วย magic number ของตัวเอง (MagicNumber ค่าเริ่มต้น 20260801) จึงไม่มีทางสับสนระหว่างโพซิชันที่ตัวเองเปิดกับโพซิชันที่คุณเปิดเองด้วยมือ หรือของ EA ตัวอื่นในบัญชีเดียวกัน ก่อนเปิดเทรดทุกครั้ง EA ยังตรวจสอบ spread ปัจจุบันเทียบกับ MaxSpreadPoints และข้ามการเข้าเทรดไปเลยหากตลาดมีสภาพคล่องต่ำเกินไปในขณะนั้น

Parameters

ส่วนที่เหลือไม่ได้เป็นของกลยุทธ์ตัวนี้โดยเฉพาะ แต่เป็นการตั้งค่า risk engine ที่ใช้ร่วมกันทั้งคอลเลกชัน EA ของเว็บ ดูคำอธิบายรวมได้ที่หน้ารวม EA EA ตัวนี้ระบุไม้ของตัวเองด้วย magic number 20260801

  • JawPeriod / JawShift, TeethPeriod / TeethShift, LipsPeriod / LipsShift (ค่าเริ่มต้น 13/8, 8/5, 5/3) — การตั้งค่า Alligator เดียวกับที่กล่าวถึงในบทเรียน AlligatorและGator Oscillator เพราะสัญญาณของ EA ตัวนี้สร้างขึ้นจากการคำนวณร่วมกันของอินดิเคเตอร์ทั้งสองตัวนั้นทั้งหมด
  • MAMethod / AppliedPrice (ค่าเริ่มต้น SMMA / Median Price) — วิธี smoothing และแหล่งราคาที่ใช้โดยการคำนวณทั้ง Alligator และ Gator
  • UseFixedLot / FixedLotSize — เทรดด้วยขนาด lot คงที่แทนการคำนวณตามความเสี่ยง

ทำไมต้องมีทั้งการโตขึ้นและลำดับ Fan

ควรอธิบายให้ชัดเจนว่าทำไม EA ตัวนี้ถึงเช็คสองเงื่อนไขแทนที่จะเป็นเงื่อนไขเดียว เพราะแต่ละเงื่อนไขเพียงลำพังก็เขียนโค้ดได้ง่ายกว่า การเทรดตามลำดับ fan เพียงอย่างเดียว (Lips เหนือ Teeth เหนือ Jaw โดยไม่เช็คการโตขึ้นของ Gator) จะจับ fan ที่ตั้งตัวสมบูรณ์แล้วและอาจกำลังแบนราบลง เทรนด์อาจแก่ตัวแล้วหรือใกล้หมดแรงแล้วในตอนที่เส้นเรียงตัวเป็นลำดับที่ชัดเจน เพราะตัว Alligator เองเป็นอินดิเคเตอร์ที่ smooth และมี lag หนัก การเทรดตามการโตขึ้นของ Gator เพียงอย่างเดียวโดยไม่เช็คว่า fan ชี้ไปทางไหน จะจับสัญญาณแรกสุดที่บอกว่าเส้นกำลังแยกออกจากกัน แต่ไม่มีข้อมูลทิศทางเลย การกำหนดให้ต้องมีทั้งสองอย่างพร้อมกันจะเล็งไปที่ช่วงเวลาที่แคบและเจาะจงกว่า คือเส้นของ Alligator กำลังแยกออกอย่างจริงจัง (ไม่ใช่แยกออกแล้วและกำลังหยุดนิ่ง) และกำลังทำแบบนั้นในทิศทางที่ยืนยันแล้ว สิ่งนี้ทำให้ EA เสียโอกาสเข้าเทรดที่เร็วที่สุดบางส่วนที่ระบบเงื่อนไขเดียวอาจจับได้ แลกกับการกรอง fan ที่เก่าและยืดตัวไปแล้ว รวมถึงการโตขึ้นที่ไร้ทิศทางซึ่งยังไม่คลี่คลายเป็นเทรนด์ที่ชัดเจนออกไป

ข้อควรระวัง

เริ่มจากบัญชีเดโมเสมอ และปล่อยให้มันเจอตลาดหลากรูปแบบก่อนใช้เงินจริง เพราะผลตอบแทนที่ผ่านมาไม่ว่าจะจากที่ไหนไม่ใช่หลักประกันของอนาคต ระบบเทรดทุกระบบมีไม้ขาดทุน และตัวนี้ไม่ใช่ข้อยกเว้น ทั้ง Alligator และ Gator มี lag โดยธรรมชาติของการออกแบบ ดังนั้นแม้แต่สัญญาณที่ยืนยันแล้วว่าโตขึ้นและกางออกเป็น fan ก็เป็นการยืนยันเทรนด์ที่เกิดขึ้นไปแล้วบางส่วน ไม่ใช่การทำนายล่วงหน้า เทรดที่เข้าจาก EA ตัวนี้จะมาถึงช้ากว่าจุดกลับตัวจริงอย่างเป็นระบบ ตลาดที่แกว่งตัวไซด์เวย์ก็สามารถสร้างแท่งหนึ่งหรือสองแท่งที่ Gator ดูเหมือนโตขึ้นได้เป็นครั้งคราวโดยไม่มีเทรนด์จริงเกิดขึ้น เพราะการโตขึ้นถูกวัดเทียบกับแค่แท่งก่อนหน้าเพียงแท่งเดียวเท่านั้น ควรพิจารณาเช็คเทรนด์กับ Rangeก่อนเปิดใช้งานบนบัญชีจริง ทั้งสองไฟล์แจกเป็นซอร์สโค้ดล้วน ๆ เปิดอ่านตั้งแต่ต้นจนจบ และอย่ารันจนกว่าจะอธิบายได้ว่าอินพุตแต่ละตัวมีไว้ทำไม หน้านี้อธิบายกลไกการทำงานของเครื่องมือเท่านั้น ไม่ได้แนะนำให้คุณนำเงินจริงไปเทรดตาม

ดาวน์โหลด gator-oscillator-trend-ea.mq4

สำหรับ MetaTrader 4 — นี่คือ source code (.mq4) เปิดและตรวจสอบให้ครบถ้วนก่อนใช้งาน

ดาวน์โหลดไฟล์

ดาวน์โหลด gator-oscillator-trend-ea.mq5

สำหรับ MetaTrader 5 — นี่คือ source code (.mq5) เปิดและตรวจสอบให้ครบถ้วนก่อนใช้งาน

ดาวน์โหลดไฟล์

วิธีติดตั้ง

EA ติดตั้งลงโฟลเดอร์ Experts ไม่ใช่ Indicators — เป็นขั้นตอนที่คนพลาดบ่อยที่สุด

MetaTrader 4

  1. ดาวน์โหลดไฟล์ gator-oscillator-trend-ea.mq4 ด้านบน
  2. เปิด MetaTrader 4FileOpen Data Folder
  3. นำไฟล์ไปวางในโฟลเดอร์ MQL4/Experts
  4. รีสตาร์ท MetaTrader 4 จากนั้นลากจากหน้าต่าง Navigator ไปวางบนกราฟ
  5. เปิด AutoTrading (MT4) หรือ Algo Trading (MT5) ใน toolbar — EA จะไม่เปิดออร์เดอร์ใด ๆ ขณะที่ปิดอยู่ แม้จะแนบบนกราฟแล้วก็ตาม
  6. ตรวจสอบและปรับค่า input parameter ใน settings dialog ก่อนยืนยัน

MetaTrader 5

  1. ดาวน์โหลดไฟล์ gator-oscillator-trend-ea.mq5 ด้านบน
  2. เปิด MetaTrader 5FileOpen Data Folder
  3. นำไฟล์ไปวางในโฟลเดอร์ MQL5/Experts
  4. รีสตาร์ท MetaTrader 5 จากนั้นลากจากหน้าต่าง Navigator ไปวางบนกราฟ
  5. เปิด AutoTrading (MT4) หรือ Algo Trading (MT5) ใน toolbar — EA จะไม่เปิดออร์เดอร์ใด ๆ ขณะที่ปิดอยู่ แม้จะแนบบนกราฟแล้วก็ตาม
  6. ตรวจสอบและปรับค่า input parameter ใน settings dialog ก่อนยืนยัน

ทั้งสองไฟล์เป็นซอร์สโค้ด เปิดอ่านใน MetaEditor ก่อนนำไปรันกับบัญชีใด ๆ เสมอ

บทเรียนที่เกี่ยวข้อง

อินดิเคเตอร์

อินดิเคเตอร์: Gator Oscillator คืออะไร? อ่านปากที่โตขึ้นและหุบลงของ Alligator

Gator Oscillator แปลงระยะห่าง Jaw-Teeth และ Teeth-Lips ของ Alligator ให้เป็น histogram สองเส้นได้อย่างไร แสดงช่วงหลับ ตื่น และล่าเหยื่อในภาพเดียว พร้อมไฟล์แจ้งเตือน MT4/MT5 พร้อมใช้งาน

ดาวน์โหลดได้ · MetaTrader 4 / MetaTrader 5
อินดิเคเตอร์

อินดิเคเตอร์ Alligator: Jaw, Teeth และ Lips คืออะไร

วิธีที่อินดิเคเตอร์ Alligator ของ Bill Williams ใช้ moving average สามเส้นแบบ shift เพื่อแยกตลาดที่ sleeping (ranging) ออกจากตลาดที่ awake (trending)

ดาวน์โหลดได้ · MetaTrader 4 / MetaTrader 5
พื้นฐาน

พื้นฐานการบริหารความเสี่ยง: ขนาดล็อต, Stop Loss, Risk:Reward

หลักการบริหารความเสี่ยงที่ช่วยให้อยู่รอดในตลาดได้ในระยะยาว ก่อนไปศึกษาเรื่องอินดิเคเตอร์