ในบทความนี้เราจะเอาฟังชั่นทั้ง 2 ตัว เอามาเขียนประยุกต์ใช้ด้วยกัน
โดยเราจะดึงราคา Bid และ Ask รวมถึงค่า Point เพื่อเอาไว้ใช้ในการเปิด Order นั่นเอง
int start()
{
double bid = MarketInfo(Symbol(),MODE_BID);
double ask = MarketInfo(Symbol(),MODE_ASK);
double point = MarketInfo(Symbol(),MODE_POINT);
double SL = MarketInfo(Symbol(),MODE_STOPLEVEL);
OrderSend(Symbol(),OP_BUY,0.01,ask,10,bid-SL*Point,bid+SL*Point);
Alert(GetLastError());
return;
}
**** Code นี้ หากเราไปเขียนใน EA มันจะส่งคำสั่งทุกครั้งที่มีการเคลื่อนที่ของราคา ดังนั้นควรเขียนลงใน script น่าจะดีกว่าหากต้องการส่งคำสั่งครั้งเดียว
มาอธิบายทีละบรรทัดกันครับ
double bid = MarketInfo(Symbol(),MODE_BID);
ดึงค่า Bid มาใส่ในตัวแปร bid ( Ask ก็เหมือนกัน )
double point = MarketInfo(Symbol(),MODE_POINT);
ดึงค่า Point มาเก็บไว้ในตัวแปร point
double SL = MarketInfo(Symbol(),MODE_STOPLEVEL);
ดึงค่า Stop Level มาเก็บไว้ในตัวแปร SL เนื่องจากในการส่งคำสั่ง TP หรือ Stop loss มันจะมีระยะต่ำที่สุดที่สามารถให้ใส่ค่าได้ ดังนั้นเราก็ดึงค่านั้นจาก MarketInFo มาใช้นั้นเอง
OrderSend(Symbol(),OP_BUY,0.01,ask,10,bid-SL*Point,bid+SL*Point);
เป็นคำสั่งไว้ส่ง Order ครับ ก็ใส่ค่าตามตัวแปรที่ฟังช์่นต้องการ โดยเอาตัวแปรที่เราดึงค่ามาใส่ในฟังก์ชั่นนั้นเอง
Alert(GetLastError());
เป็นการแสดงผลค่า Error ที่เกิดขึ้น มันจะแสดงเป็นตัวเลข หากเกิดปัญหาอะไรก็สามารถเช็คได้ที่
https://book.mql4.com/appendix/errors
เพื่อนๆสามารถดูคำอธิบายเพิ่มเติมได้ที่ https://book.mql4.com/trading/ordersend