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 ไว้ได้ครับ เจอกันในตอนต่อไป …

--

--