MQL4 Reference

From binary option
Jump to navigation Jump to search
Баннер1
  1. MQL4 Reference

บทความนี้เป็นคู่มืออ้างอิงสำหรับผู้เริ่มต้นในการทำความเข้าใจภาษา MQL4 (MetaQuotes Language 4) ซึ่งเป็นภาษาโปรแกรมที่ใช้ในการพัฒนา Expert Advisors (EAs), Custom Indicators และ Scripts สำหรับแพลตฟอร์มการซื้อขาย MetaTrader 4 (MT4) ที่นิยมใช้กันอย่างแพร่หลายในการซื้อขาย Forex และ Binary Options. การเรียนรู้ MQL4 จะช่วยให้คุณสามารถสร้างระบบการซื้อขายอัตโนมัติและเครื่องมือวิเคราะห์ทางเทคนิคที่ปรับแต่งได้ตามความต้องการของคุณ

    1. บทนำสู่ MQL4

MQL4 เป็นภาษาโปรแกรมที่มีโครงสร้างคล้ายกับภาษา C++ โดยมีไวยากรณ์ที่ค่อนข้างง่ายต่อการเรียนรู้สำหรับผู้ที่มีพื้นฐานการเขียนโปรแกรมมาก่อน อย่างไรก็ตาม ผู้ที่ไม่มีประสบการณ์การเขียนโปรแกรมก็สามารถเรียนรู้ MQL4 ได้เช่นกัน ด้วยแหล่งข้อมูลและบทเรียนออนไลน์มากมาย

      1. โครงสร้างของโปรแกรม MQL4

โปรแกรม MQL4 ประกอบด้วยส่วนต่างๆ ดังนี้:

  • **Properties:** ส่วนที่ใช้กำหนดคุณสมบัติของโปรแกรม เช่น ชื่อ, ผู้เขียน, และคำอธิบาย
  • **Includes:** ส่วนที่ใช้เรียกใช้ไลบรารีหรือไฟล์ส่วนหัวอื่นๆ
  • **Global Variables:** ตัวแปรที่สามารถเข้าถึงได้จากทุกส่วนของโปรแกรม
  • **Functions:** กลุ่มคำสั่งที่ทำงานเฉพาะอย่าง และสามารถเรียกใช้ซ้ำได้
  • **Event Handlers:** ฟังก์ชันพิเศษที่ถูกเรียกใช้เมื่อเกิดเหตุการณ์ต่างๆ ใน MT4 เช่น การเปิดแท่งเทียนใหม่, การรับคำสั่งซื้อขาย, หรือการเริ่มต้นโปรแกรม
      1. ประเภทข้อมูลใน MQL4

MQL4 รองรับประเภทข้อมูลพื้นฐานต่างๆ ดังนี้:

  • **int:** จำนวนเต็ม
  • **double:** จำนวนทศนิยม
  • **bool:** ค่าจริง (true) หรือ เท็จ (false)
  • **string:** ข้อความ
  • **datetime:** วันที่และเวลา
    1. การพัฒนา Expert Advisors (EAs)

Expert Advisors (EAs) คือโปรแกรมที่สามารถทำการซื้อขายในตลาด Forex และ Binary Options ได้โดยอัตโนมัติ EAs ถูกเขียนด้วยภาษา MQL4 และถูกติดตั้งใน MT4 เพื่อทำงานตามเงื่อนไขที่กำหนดไว้ล่วงหน้า

      1. โครงสร้างพื้นฐานของ EA

EA ต้องมีอย่างน้อยหนึ่งฟังก์ชันที่เรียกว่า `OnInit()` ซึ่งจะถูกเรียกใช้เมื่อ EA เริ่มต้นทำงาน และฟังก์ชัน `OnTick()` ซึ่งจะถูกเรียกใช้เมื่อมีแท่งเทียนใหม่เกิดขึ้น

ตัวอย่างโครงสร้างพื้นฐานของ EA:

```mql4 //+------------------------------------------------------------------+ //| MyFirstEA.mq4 | //| Copyright 2023, Your Name | //| https://www.example.com | //+------------------------------------------------------------------+

  1. property copyright "Copyright 2023, Your Name"
  2. property link "https://www.example.com"
  3. property version "1.00"

int OnInit()

 {
  // Initialization code here
  return(INIT_SUCCEEDED);
 }

void OnTick()

 {
  // Trading logic here
 }

```

      1. การจัดการคำสั่งซื้อขาย

MQL4 มีฟังก์ชันต่างๆ ที่ใช้ในการจัดการคำสั่งซื้อขาย เช่น:

  • `OrderSend()`: ส่งคำสั่งซื้อขายไปยังตลาด
  • `OrderModify()`: แก้ไขคำสั่งซื้อขายที่มีอยู่
  • `OrderClose()`: ปิดคำสั่งซื้อขาย
  • `OrdersTotal()`: นับจำนวนคำสั่งซื้อขายที่เปิดอยู่
      1. การใช้ Indicators ใน EA

Indicators เป็นเครื่องมือวิเคราะห์ทางเทคนิคที่ใช้ในการระบุแนวโน้มและสัญญาณการซื้อขายในตลาด MQL4 สามารถเรียกใช้ Indicators ที่มีอยู่แล้วใน MT4 หรือสร้าง Custom Indicators ขึ้นมาเองได้

ตัวอย่างการใช้ Indicator ใน EA:

```mql4 double MA = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, 0); ```

    1. การพัฒนา Custom Indicators

Custom Indicators คือเครื่องมือวิเคราะห์ทางเทคนิคที่สร้างขึ้นโดยผู้ใช้เอง โดยใช้ภาษา MQL4 Custom Indicators สามารถแสดงผลบนกราฟ MT4 เพื่อช่วยในการวิเคราะห์ตลาด

      1. โครงสร้างพื้นฐานของ Custom Indicator

Custom Indicator ต้องมีอย่างน้อยหนึ่งฟังก์ชันที่เรียกว่า `OnInit()` ซึ่งจะถูกเรียกใช้เมื่อ Indicator เริ่มต้นทำงาน และฟังก์ชัน `OnCalculate()` ซึ่งจะถูกเรียกใช้เมื่อมีการคำนวณค่า Indicator

ตัวอย่างโครงสร้างพื้นฐานของ Custom Indicator:

```mql4 //+------------------------------------------------------------------+ //| MyFirstIndicator.mq4 | //| Copyright 2023, Your Name | //| https://www.example.com | //+------------------------------------------------------------------+

  1. property copyright "Copyright 2023, Your Name"
  2. property link "https://www.example.com"
  3. property version "1.00"

int OnInit()

 {
  // Initialization code here
  return(INIT_SUCCEEDED);
 }

int OnCalculate(const int rates_total,

               const int prev_calculated,
               const datetime begin)
 {
  // Calculation logic here
  return(0);
 }

```

      1. การวาดกราฟบน Indicator

MQL4 มีฟังก์ชันต่างๆ ที่ใช้ในการวาดกราฟบน Indicator เช่น:

  • `Plot()`: วาดเส้นกราฟ
  • `PlotHistogram()`: วาดฮิสโตแกรม
  • `PlotArrows()`: วาดลูกศร
    1. การพัฒนา Scripts

Scripts คือโปรแกรม MQL4 ที่ทำงานเพียงครั้งเดียวเมื่อถูกเรียกใช้งาน Scripts มักใช้สำหรับการดำเนินการบางอย่าง เช่น การปิดคำสั่งซื้อขายทั้งหมด หรือ การคำนวณค่าบางอย่าง

      1. โครงสร้างพื้นฐานของ Script

Script ต้องมีอย่างน้อยหนึ่งฟังก์ชันที่เรียกว่า `OnStart()` ซึ่งจะถูกเรียกใช้เมื่อ Script เริ่มต้นทำงาน

ตัวอย่างโครงสร้างพื้นฐานของ Script:

```mql4 //+------------------------------------------------------------------+ //| MyFirstScript.mq4 | //| Copyright 2023, Your Name | //| https://www.example.com | //+------------------------------------------------------------------+

  1. property copyright "Copyright 2023, Your Name"
  2. property link "https://www.example.com"
  3. property version "1.00"

void OnStart()

 {
  // Script logic here
 }

```

    1. ฟังก์ชันที่สำคัญใน MQL4
  • **Math Functions:** `MathAbs()`, `MathPow()`, `MathSqrt()`, `MathSin()`, `MathCos()`
  • **String Functions:** `StringLen()`, `StringSubstr()`, `StringReplace()`, `StringFormat()`
  • **Time Functions:** `TimeLocal()`, `TimeToString()`, `StringToTime()`
  • **Array Functions:** `ArrayInitialize()`, `ArraySetAsSeries()`, `ArrayResize()`, `ArrayShift()`
  • **File Functions:** `FileOpen()`, `FileRead()`, `FileWrite()`, `FileClose()`
    1. การดีบักโปรแกรม MQL4

การดีบักเป็นขั้นตอนสำคัญในการพัฒนาโปรแกรม MQL4 เพื่อค้นหาและแก้ไขข้อผิดพลาด MT4 มีเครื่องมือดีบักในตัวที่ช่วยให้คุณสามารถตรวจสอบค่าตัวแปร และติดตามการทำงานของโปรแกรมได้

    1. แหล่งข้อมูลเพิ่มเติม
  • MQL4 Documentation: เว็บไซต์อย่างเป็นทางการของ MQL4 Documentation
  • MQL5 Community: ฟอรัมและชุมชนผู้ใช้ MQL4 และ MQL5
  • BabyPips MQL4 Tutorial: บทเรียน MQL4 สำหรับผู้เริ่มต้น
    1. กลยุทธ์การซื้อขายที่ใช้ MQL4

MQL4 สามารถใช้ในการพัฒนาและทดสอบกลยุทธ์การซื้อขายที่หลากหลาย ตัวอย่างเช่น:

  • Moving Average Crossover: กลยุทธ์ที่ใช้การตัดกันของเส้นค่าเฉลี่ยเคลื่อนที่
  • RSI Overbought/Oversold: กลยุทธ์ที่ใช้ดัชนี RSI เพื่อระบุสภาวะซื้อมากเกินไปและขายมากเกินไป
  • Bollinger Bands Breakout: กลยุทธ์ที่ใช้ Bollinger Bands เพื่อระบุการ breakout ของราคา
  • Fibonacci Retracement: กลยุทธ์ที่ใช้ Fibonacci Retracement เพื่อระบุระดับแนวรับและแนวต้าน
  • Ichimoku Cloud: กลยุทธ์ที่ใช้ Ichimoku Cloud เพื่อระบุแนวโน้มและสัญญาณการซื้อขาย
  • MACD Divergence: กลยุทธ์ที่ใช้ MACD เพื่อระบุ divergence ระหว่างราคาและ indicator
  • Three Black Crows: รูปแบบแท่งเทียนที่บ่งบอกถึงแนวโน้มขาลง
  • Engulfing Pattern: รูปแบบแท่งเทียนที่บ่งบอกถึงการกลับตัวของแนวโน้ม
  • Head and Shoulders: รูปแบบแท่งเทียนที่บ่งบอกถึงการกลับตัวของแนวโน้ม
  • Double Top/Bottom: รูปแบบแท่งเทียนที่บ่งบอกถึงการกลับตัวของแนวโน้ม
  • Cup and Handle: รูปแบบแท่งเทียนที่บ่งบอกถึงแนวโน้มขาขึ้นต่อเนื่อง
  • Triangles: รูปแบบแท่งเทียนที่บ่งบอกถึงการพักตัวของแนวโน้ม
  • Elliott Wave Theory: ทฤษฎีที่ใช้ในการวิเคราะห์รูปแบบคลื่นของราคา
  • Harmonic Patterns: รูปแบบที่ซับซ้อนที่ใช้ในการระบุโอกาสในการซื้อขาย
  • Scalping: กลยุทธ์การซื้อขายระยะสั้นที่มุ่งเน้นทำกำไรเล็กน้อย
    1. การวิเคราะห์ทางเทคนิคและการวิเคราะห์ปริมาณการซื้อขาย

การใช้ MQL4 ร่วมกับการวิเคราะห์ทางเทคนิค Technical Analysis และการวิเคราะห์ปริมาณการซื้อขาย Volume Analysis จะช่วยเพิ่มประสิทธิภาพในการซื้อขายของคุณได้ ตัวอย่างเช่น การสร้าง Custom Indicator ที่แสดงผลข้อมูลปริมาณการซื้อขายร่วมกับ Indicator ทางเทคนิคอื่นๆ

    1. การซื้อขาย Binary Options ด้วย MQL4

แม้ว่า MQL4 จะถูกออกแบบมาสำหรับ Forex แต่ก็สามารถนำมาประยุกต์ใช้กับการซื้อขาย Binary Options ได้เช่นกัน โดยการเขียน EA ที่ส่งคำสั่งซื้อขาย Binary Options ตามเงื่อนไขที่กำหนดไว้ล่วงหน้า

ตัวอย่างฟังก์ชัน MQL4 ที่ใช้บ่อย
ฟังก์ชัน คำอธิบาย
OrderSend() ส่งคำสั่งซื้อขาย
OrderModify() แก้ไขคำสั่งซื้อขาย
OrderClose() ปิดคำสั่งซื้อขาย
iMA() คำนวณค่า Moving Average
iRSI() คำนวณค่า RSI
iMACD() คำนวณค่า MACD
TimeLocal() แปลงเวลาจาก GMT เป็นเวลาท้องถิ่น
StringLen() หาความยาวของ string
StringSubstr() ดึงส่วนหนึ่งของ string

หวังว่าบทความนี้จะเป็นประโยชน์สำหรับผู้เริ่มต้นในการเรียนรู้ MQL4 และนำไปประยุกต์ใช้ในการพัฒนาโปรแกรมซื้อขายของคุณ

เริ่มต้นการซื้อขายตอนนี้

ลงทะเบียนกับ IQ Option (เงินฝากขั้นต่ำ $10) เปิดบัญชีกับ Pocket Option (เงินฝากขั้นต่ำ $5)

เข้าร่วมชุมชนของเรา

สมัครสมาชิกช่อง Telegram ของเรา @strategybin เพื่อรับ: ✓ สัญญาณการซื้อขายรายวัน ✓ การวิเคราะห์เชิงกลยุทธ์แบบพิเศษ ✓ การแจ้งเตือนแนวโน้มตลาด ✓ วัสดุการศึกษาสำหรับผู้เริ่มต้น

Баннер