Xin chào! Để lấy giá vào lệnh mới nhất trong n lệnh trên MT4, bạn có thể sử dụng hàm
OrderSelect()
để chọn lệnh cuối cùng được mở. Sau đó, bạn có thể sử dụng hàm
OrderOpenPrice()
để lấy giá vào lệnh của lệnh đó. Dưới đây là một ví dụ đơn giản:
double GiaMoiNhat(int mode)
{
double GiaVaoLenh = 0;
for(int i = 0; i < OrdersTotal(); i++)//>
{
if(OrderSelect(i, SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol() && OrderMagicNumber()== MagicNumber)
{
if(mode == 0 && OrderType()==OP_BUY) GiaVaoLenh = OrderOpenPrice();
if(mode == 1 && OrderType()==OP_SELL ) GiaVaoLenh = OrderOpenPrice();
}
}
return GiaVaoLenh;
}
Trong ví dụ này, chúng ta sử dụng biến
double GiaVaoLenh = 0
để xác định số lệnh mà chúng ta muốn lấy giá vào lệnh mới nhất.
Sau đó, chúng ta sử dụng một vòng lặp for để lặp qua các lệnh từ lệnh cuối cùng đến lệnh mới nhất. Trong mỗi vòng lặp, chúng ta sử dụng hàm
OrderSelect()
để chọn lệnh ở vị trí thứ
i
(bằng cách sử dụng
SELECT_BY_POS
), và kiểm tra xem lệnh có được chọn thành công hay không. Nếu lệnh được chọn thành công, chúng ta sử dụng hàm
OrderOpenPrice()
để lấy giá vào lệnh của lệnh đó.
Nếu bạn chưa hiểu hay có vấn để gì thắc mắc cần giải đáp, vui lòng bình luận ở bên dưới nhé. BDOFOREX sẽ cố gắng giải đáp hết tất cả những gì mà chúng tôi biết để giúp bạn.
👉 Group ZALO trao đổi CODE:
TẠI ĐÂY