Dưới đây là một ví dụ đơn giản về một robot MQL4 sử dụng mô hình nến để mở lệnh. Robot này sẽ vào lệnh BUY nếu nến hiện tại là nến xanh và vào lệnh SELL nếu nến hiện tại là nến đỏ:
void Ontick() { // Lấy giá trị giá đóng cửa của nến hiện tại double currentClose = Close[0]; // Lấy giá trị giá mở cửa của nến hiện tại double currentOpen = Open[0]; // Kiểm tra xem nến hiện tại là nến xanh hay đỏ bool isBullish = currentClose > currentOpen; // Nếu nến hiện tại là nến xanh, mở lệnh BUY if (isBullish) { int ticket = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 0, Bid - StopLoss * Point, Bid + TakeProfit * Point, "Buy Order", 0, 0, Green); if (ticket > 0) { Print("Buy order opened successfully. Ticket:", ticket); } else { Print("Buy order failed to open. Error code:", GetLastError()); } } // Nếu nến hiện tại là nến đỏ, mở lệnh SELL else { int ticket = OrderSend(Symbol(), OP_SELL, 0.1, Bid, 0, Ask + StopLoss * Point, Ask - TakeProfit * Point, "Sell Order", 0, 0, Red); if (ticket > 0) { Print("Sell order opened successfully. Ticket:", ticket); } else { Print("Sell order failed to open. Error code:", GetLastError()); } } return 0; }
Trong ví dụ này, chúng ta sử dụng hai biến currentClose
và currentOpen
để lấy giá trị đóng cửa và mở cửa của nến hiện tại. Sau đó, chúng ta kiểm tra xem nến hiện tại là nến xanh hay đỏ bằng cách so sánh giá đóng cửa và giá mở cửa.
+ Nếu nến hiện tại là nến xanh, chúng ta sử dụng hàm
OrderSend()
để mở lệnh BUY. Tham số OP_BUY
được sử dụng để đặt loại lệnh là BUY. Tham số Ask được sử dụng để đặt giá mua hiện tại của cặp tiền tệ. Tham số Bid - StopLoss * Point
được sử dụng để đặt giá Stop Loss cho lệnh BUY. Tham số Bid + TakeProfit * Point
được sử dụng để đặt giá Take Profit cho lệnh BUY. + Nếu nến hiện tại là nến đỏ, chúng ta sử dụng hàm
OrderSend()
để mở lệnh SELL. Tham số OP_SELL được sử dụng để đặt loại lệnh là SELL. Tham số Bid được sử dụng để đặt giá bán hiện tại của cặp tiền tệ. Tham số Ask + StopLoss * Point
được sử dụng để đặt giá Stop Loss cho lệnh SELL. Tham số Ask - TakeProfit * Point
được sử dụng để đặt giá Take Profit cho lệnh SELL.+ Bạn có thể thay đổi giá trị của Stop Loss và Take Profit bằng cách thay đổi giá trị của biến StopLoss và TakeProfit. Ngoài ra, bạn cũng có thể thêm các điều kiện kiểm tra khác để xác định lệnh mở và đóng trong robot của mình.
[block_content id=”3041″]