Hàm trailing stop trong MQL4 có thể được triển khai bằng cách sử dụng hàm
OrderModify()
. Bạn có thể sử dụng hàm này để thay đổi mức giá stop loss của một lệnh mở khi giá di chuyển theo hướng có lợi cho bạn. Dưới đây là một ví dụ về cách triển khai hàm trailing stop trong MQL4:
double Trailing = 50; // Đặt giá trị trailing stop của bạn ở đây
double StopLoss;
int Ticket;
void TrailingStop()
{
for (int i = 0; i < OrdersTotal(); i++)
{
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if (OrderSymbol() == Symbol() && OrderType() == OP_BUY)
{
StopLoss = Bid - Trailing * Point;
if (StopLoss > OrderStopLoss())
{
Ticket = OrderTicket();
if (OrderModify(Ticket, OrderOpenPrice(), StopLoss, OrderTakeProfit(), 0, Green))
{
Print("Trailing Stop for Order #", Ticket, " updated to ", StopLoss);
}
}
}
else if (OrderSymbol() == Symbol() && OrderType() == OP_SELL)
{
StopLoss = Ask + Trailing * Point;
if (StopLoss < OrderStopLoss())
{
Ticket = OrderTicket();
if (OrderModify(Ticket, OrderOpenPrice(), StopLoss, OrderTakeProfit(), 0, Red))
{
Print("Trailing Stop for Order #", Ticket, " updated to ", StopLoss);
}
}
}
}
}
}
Trong ví dụ này, hàm
TrailingStop()
được sử dụng để theo dõi các lệnh mở và cập nhật mức giá stop loss của chúng nếu giá di chuyển theo hướng có lợi cho bạn. Hàm
OrderModify()
được sử dụng để cập nhật mức giá stop loss mới của lệnh. Bạn có thể tùy chỉnh giá trị của biến TrailingStop để đặt mức giá trailing stop của bạn.
👉 Group ZALO hỏi đáp và trao đổi CODE:
TẠI ĐÂY
image quote pre code