ตอนที่ 2 : MetaEditor ขุมพลังของ MT4 ที่ถูกซ่อนเอาไว้
โดยปกติแล้วผู้ใช้งานโปรแกรม MT4 จะสัมผัสกับโปรแกรม 2 ตัวคือ MetaTrader 4 Terminal สำหรับ Windows หรือ MetaTrader 4 Terminal สำหรับ Mobile (iPhone/Android) แต่หากคุณสนใจที่จะพัฒนาหุ่นยนต์สำหรับช่วยในการส่งคำสั่งซื้อขาย หรือแจ้งเตือนราคาหรือสัญญาณเทรดสักตัว โปรแกรมที่ควรศึกษาก็คงจะหนีไปไม่พ้น MetaEditor
อ้าว .. MT4 เทรด Mobile ได้ด้วยเหรอ ถ้าอยากลอง กดเลย |
MetaEditor คืออะไร เรียกใช้อย่างไร
MetaEditor เป็นโปรแกรมสำหรับสร้าง แก้ไขและคอมไพล์โปรแกรมที่ถูกเขียนด้วยภาษา MQL4 และถูกติดตั้งมาพร้อมกับโปรแกรม MT4 Terminal อยู่แล้วรอแค่ให้คุณเข้ามาใช้งานแค่นั้นเอง วิธีการเรียกใช้แบบง่ายๆ ก็มี 2 วิธี คือ 1) เรียกจากไอคอน MetaEditor บน Desktop 2) เรียกจากโปรแกรม MT4 Terminal
รูปที่ 1 : แสดงการเรียกใช้โปรแกรม MetaEditor
ไฟล์ Script, Expert Advisor และ Indicator เก็บไว้ที่ไหน
MT4 Terminal และ MetaEditor จะใช้งานไฟล์ด้วยกันกล่าวคือ MetaEditor จะใช้ในการเขียนโปรแกรมเสริมเช่น Script หรือ Expert Advisor ตามที่ได้กล่าวไปแล้วหลังจากนั้นจะถูกเรียกใช้โดยโปรแกรม MT4 Terminal ซึ่งหากเราต้องการใช้งาน MetaEditor จำเป็นที่จะต้องรู้เสียก่อนว่าไฟล์เหล่านี้ถูกเก็บไว้ที่ไหน ทดลองกันเลยดังนี้
1.ที่ MT4 Terminal กด File -> Open Data Folder
รูปที่ 2 : แสดงวิธีการเปิด Data Folder
2.แสดง Folder ต่างๆ ของโปรแกรม MT4
รูปที่ 3 : แสดงโครงสร้าง Folder หลักของโปรแกรม MT4 Terminal
โปรแกรมทั้งหมดเช่น Expert Advisor, Script, Indicators จะถูกเก็บใน Folder MQL4 ลองกดเข้าไปดูกันนะครับ
รูปที่ 3.1 แสดงโครงสร้างภายในโฟลเดอร์ MQL4
โปรแกรมที่เขียนแล้วไปแสดงที่ MT4 Terminal ที่ไหน
เพื่อให้เห็นภาพ จะเปรียบเทียบไฟล์ที่อยู่ใน Folder MQL4 และที่แสดงบน MT4 Terminal เพื่อเปรียบเทียบให้เห็น
โดยที่ด้านซ้ายมือคือ Navigator ของ MT4 Terminal และด้านขวามือคือ Sub Folder ภายใต้ MQL4
1. Expert Advisor : เก็บไฟล์ประเภท Expert Advisor ทั้งหมด
รูปที่ 4 : แสดงโครงสร้างไฟล์ ของ Expert Advisor
ประเภทของไฟล์ใน Folder นี้จะมี 2 ประเภทคือ .MQ4 และ EX4 โดยที่ MQ4 คือไฟล์ Source Code สามารถนำมาแก้ไขและ
ปรับแต่งได้ สำหรับ EX4 คือไฟล์ MQ4 ที่ผ่านการ Complie ด้วยโปรแกรม MetaEditor แล้ว ตอนรัน EA บน MT4 Terminal ก็จะใช้ไฟล์ประเภทนี้รันนะครับ
2. Indicators : เก็บไฟล์ประเภท Indicator ทั้งหมด
รูปที่ 5 : แสดงโครงสร้างไฟล์ ของ Indicator
จะเห็นว่า Indicator ที่ติดมากับ MT4 Terminal ตอนติดตั้งบางไฟล์จะมีไฟล์ MQ4 ติดมาด้วยดังนั้นเราสามารถปรับแต่ง Build-in Indicator ได้เลยหากต้องการ … ว้าวว
3. Script : เก็บไฟล์ประเภท Scripts ทั้งหมด
รูปที่ 6 : แสดงโครงสร้างไฟล์ ของ Scripts
สำหรับรายละเอียดของ Folder อื่นๆ สามารถเข้าไปอ่านรายละเอียดจากที่นี่ [Link to MQL4 Articles]
ปรับแต่งตัวอย่าง Expert Advisor ตัวอย่างให้เทรด TFEX ได้
ที่นี้เรามาดูตัวอย่างโค้ดที่ติดมาพร้อมกับตอนที่ติดตั้ง MT4 Terminal บ้างนะครับ
1. เปิดโปรแกรม Meta Editor ขึ้นมาก่อนด้วยช่องทางที่เคยเล่าไว้
รูปที่ 7 : ไอคอนสำหรับเรียกใช้งาน MT4 Terminal
2. หน้าตาของโปรแกรม MetaEditor
รูปที่ 8: แสดงโปรแกรม MetaEditor
3. ตรง Navigator ขยาย Folder Expert แล้วดับเบิ้ลคลิ๊กที่ EA ชื่อ MACD Sample.mq4 โปรแกรมจะเปิด Source Code ตัวอย่างมาให้
รูปที่ 9 : แสดงการเปิดตัวอย่างไฟล์ MACD Sample.mq4
4. แก้ไข Lot จากเดิม 0.1 ให้เป็น 1 ดังรูป (เนื่องจากตลาด TFEX กำหนดให้ขนาดสัญญาณต่ำสุดอยู่ที่ 1 Contracts) หลังจากนั้นกดปุ่ม Complile จะปรากฎ Message ตรง Tab “Errors” ดังรูป # Error ต้อง = 0 โปรแกรมจึงจะสามารถทำงานกับ MT4 Terminal ได้
รูปที่ 10 : แสดงการแก้ไขไฟล์ MACD Sample.mq4
ลองนำโปรแกรมที่ปรับปรุงแล้วลองมาทำ Backtesting กัน
1. เปิดโปรแกรม MT4 Terminal ดังรูป
รูปที่ 11 : แสดงโปรแกรม MT4 Terminal
2. ที่เมนู View เลือก Strategy Tester
รูปที่ 12 : การเปิดโปรแกรม Strategy Tester
3. จะปรากฎหน้าต่าง Tester ขึ้นข้างล่างของ Terminal
รูปที่ 13 : ตัวอย่างโปรแกรม Tester (Strategy Tester)
4. เลือกกลยุทธ์ที่เพิ่งปรับปรุง ตามขั้นตอนที่ผ่านมา
รูปที่ 14 : การเลือก Strategy เพื่อนำมาทดสอบ
5. เลือกกำหนดค่าพารามิเตอร์อื่นๆ ดังนี้ ตามรูป
Symbols = S50_DUMMY
Model = Every Tick
Period = H1
Spread = Current
จากนั้นกดปุ่ม Start
รูปที่ 15: แสดงการปรับพารามิเตอร์ให้กับโปรแกรม Tester
6. หลังจากกดปุ่ม Start แล้ว โปรแกรม Tester จะเริ่มทำงาน กดที่ Tab “Journal” เพื่อดูสถานะการทำงาน ซึ่งหากเป็นการทดสอบครั้งแรก โปรแกรมจะดึงข้อมูลย้อนหลังจากเซิร์ฟเวอร์ เพื่อนำมาใช้ในการทดสอบ
รูปที่ 16: แสดงหน้าต่าง Journal
7. กลับมาที่ Tab “Setting” หากแถบสถานะเป็นสีน้ำเงินเต็ม เหมือนรูปข้างล่างแล้ว แสดงว่าโปรแกรมได้ทำการทดสอบระบบ กับข้อมูลย้อนหลังเรียบร้อยแล้ว
รูปที่ 17 : แสดงสถานะการทำ Back Testing สำเร็จ
8. ดูรายการเทรด ของระบบที่ Tab “Result” จะเห็นว่ามีการเทรด 1 รายการ
รูปที่ 18 : แสดง Tab “Result”
9. ดู Balance เป็นแบบกราฟ โดยกดที่ Tab “Graph”
รูปที่ 19 : แสดง Tab “Graph”
10. ดูรายงานการทดสอบโดยกดที่ Tab “Report”
รูปที่ 20 : แสดง Tab “Report”
11. ดู Error ต่างๆ ที่เกิดจากการทำงานของ EA ของเรา โดยกดที่ Tab “Journal” จากตัวอย่างพบ Error ที่ต้องแก้ไข
รูปที่ 21 : แสดง Tab “Journal”