MQL4:Expert Advisor 101 — สร้าง Expert Advisor แบบง่ายๆ— EP11

Attaphon One
3 min readMay 10, 2021

EP นี้ เรามาทำความเข้าใจเรื่องการสร้าง Expert Advisor เพื่อใช้งานกันแบบง่ายๆ โดยเราจะยังไม่สั่งให้ EA ส่งคำสั่งซื้อขายนะครับ แค่ลองแสดงข้อมูลพวกราคาต่างๆ บน chart กราฟคู่เงินกันก่อน

เริ่มต้นกันที่โปรแกรม MetaEditor ให้เรากดปุ่ม New เพื่อสร้างไฟล์ code ใหม่

MetaEditor จะแสดงหน้าต่างโปรแกรม MQL Wizard ขึ้นมา ให้เลือกสร้าง Expert Advisor ( template ) ดังรูป

เช่นเดิม ให้เราตั้งชื่อ EA ตัวนี้ ในตัวอย่างขอตั้งชื่อว่า EA_101 ต่อท้ายคำว่า Experts\ เลยนะครับ ตามรูปตัวอย่าง ส่วน Author และ Link ถ้าอยากเปลี่ยนข้อมูลเป็นอะไรก็ใส่ข้อมูลเข้าไปครับ

จากนั้นโปรแกรมจะถามว่า จะให้เพิ่มพวก Event handling function อะไรบ้าง ตอนนี้เราจะยังไม่ใช้ฟังก์ชันพวกนี้ ให้เรากด Next เพิ่มทำงานในขั้นต่อไป และกด Finished เพื่อสร้าง code file ที่ชื่อ EA_101.mq4 ขึ้นมาครับ

หลังจากกด Finished แล้ว โปรแกรม MetaEditor ก็จะ Generate code file ขึ้นมาดังรูปข้างล่าง ซึ่งไฟล์นี้จะประกอบไปด้วยฟังก์ชัน OnInit() , OnDeinit() และ OnTick() ซึ่งต่อไป เราจะมาเขียน code เพิ่มในฟังก์ชัน OnTick() กัน

ในบทนี้เราจะใช้งานตัวแปร predefined variable คือ พวกค่าราคาต่างๆ ที่ภาษา MQL4 เตรียมไว้ให้เราไปดึงมาใช้ง่ายๆ ซึ่งเราสามารถเข้าไปอ่านข้อมูลเพิ่มเติมได้จากเวปไซต์นี้ https://docs.mql4.com/predefined

ตัวอย่างค่า predefined ที่เราสามารถดึงมาใช้งานได้ มีดังนี้

ต่อมา เราจะเขียน EA ที่ให้แสดงค่าราคาที่เปลี่ยนแปลงทุกครั้งที่สัญญาณ Tick เข้ามา โดยเราเขียน code เพิ่มเข้าไปในฟังก์ชัน OnTick() ดังรายละเอียดนี้

จาก Code ตัวอย่าง

  • code บรรทัดที่ 22 , 23 และ 29 , 30 เราสั่งให้ EA แสดงค่า _Symbol ค่าคู่เงินบนกราฟปัจจุบัน , _Period ค่า TimeFrame ปัจจุบัน (เป็นเลขจำนวนนาที ) , Bid ค่าราคาเสนอซื้อ , Ask ค่าราคาเสนอขาย
  • code บรรทัดที่ 24 , 25 , 26 , 27 เราสั่งให้ EA แสดงค่าราคาของแท่งเทียนปัจจุบัน ซึ่งตัวแปร Open,Close,High และ Low พวกนี้เป็นตัวแปร Array เราต้องกำหนดแท่งเทียนที่จะดึงค่ามาใช้งานด้วย ซึ่งแท่งเทียนที่ 0 หมายถึงแท่งเทียนปัจจุบัน

เมื่อเพิ่ม code เข้าไปเรียบร้อย ให้เรา กด Compile เพื่อให้โปรแกรมสร้างไฟล์ .ex4 มาใช้งานในโปรแกรม MetaTrader ต่อไป และเมื่อ Compile เรียบร้อยแล้ว ควรจะไม่มี Error เหมือนดังรูปด้านล่าง

ขั้นตอนนี้เป็นการใช้งาน Expert Advisor ที่เราเพิ่งสร้างกันเสร็จไปครับ ให้เรามาที่โปรแกรม MetaTrader แล้วลองมองหา EA ที่เราสร้าง ( EA_101.ex4 ) ที่อยู่ในช่อง Navigator แล้วลากไฟล์ EA มาวางบน Chart กราฟคู่เงินได้เลยครับ

จะมีหน้าต่างของ EA_101 ขึ้นมาดังรูปด้านล่าง

ในขั้นตอนนี้ให้เราไปตั้ง Setting เพิ่มที่แทบ Common โดยการ ติ๊กเครื่องหมายถูกที่ช่อง Allow live trading ( ซึ่งหมายถึงตั้งให้ EA สามารถส่งคำสั่งซื้อขายได้ ) หลังจากนั้นกดปุ่ม OK เพื่อให้ EA เริ่มทำงาน

Note เพิ่มเติม : ให้เรากดที่ปุ่ม AutoTrading ด้วย เพื่อเป็นการ enable ให้ EA ทำงานบน chart และสามารถส่งคำสั่งซื้อขายได้ตามปกติ

ผลลัพท์ของการทำงาน EA_101.ex4 จะเป็นดังรูปข้างล่างครับ คือจะมีการแสดงราคาประเภทต่างๆ จากตัวแปร Predefined ที่เราดึงค่ามาใช้ ตาม hightlight สีเหลือง และถ้า EA ทำงานได้อย่างปกติ สังเกตุที่มุมขวาบนของกราฟคู่เงิน จะมี Emoji เป็นรูปคนยิ้มอยู่ครับ ตามรูปวงกลมสีส้ม

หลังจากสร้าง Expert Advisor กันได้แล้ว ใน EP หน้าเราจะมาสร้างฟังก์ชันเพื่อตัดสินใจส่งคำสั่งซื้อขาย ต่อจากนั้นมาเรียนรู้ฟังก์ชันที่ใช้ในการส่งคำสั่งซื้อขายกัน

อย่าลืมกดปุ่มตบมือถ้าคิดว่าบทความนี้มีประโยชน์ต่อท่านและผู้อื่น หรือถ้ามีข้อสงสัยก็ทิ้ง Comment ไว้ได้ครับ เจอกันในตอนต่อไป …

--

--