Bài 16: Hàm Latest Lots lấy ra số Lots mới nhất MT4

Bài 16: Hàm Latest Lots lấy ra số Lots mới nhất MT4
Để lấy số lots của lệnh mới nhất, bạn có thể sử dụng hàm OrdersTotal() để lấy số lượng lệnh đang mở trong thời điểm hiện tại, sau đó sử dụng vòng lặp để lấy thông tin về mỗi lệnh và tìm ra lệnh mới nhất. Ví dụ, để lấy số lots của lệnh mới nhất, bạn có thể sử dụng đoạn mã sau:

double LayLotMoiNhat(string type)
{
   double Lotmoinhat = 0;
   for(int i = 0; i < OrdersTotal(); i++)//>
    {
      if(OrderSelect(i, SELECT_BY_POS,MODE_TRADES))
     if(OrderSymbol()==Symbol() && OrderMagicNumber()== MagicNumber)
         {
            if(OrderType()==OP_BUY && type== "OP_BUY")   Lotmoinhat = OrderLots();
            if(OrderType()==OP_SELL && type== "OP_SELL") Lotmoinhat = OrderLots();
         }
    }
   return Lotmoinhat ;
}

Hàm LayLotMoiNhat có chức năng lấy số lô của lệnh mở mới nhất của loại lệnh được chỉ định (OP_BUY hoặc OP_SELL). Dưới đây là mô tả chi tiết về hàm này:

  1. Tham số đầu vào:
    • type: Một chuỗi string, chỉ định loại lệnh mà bạn muốn lấy số lô. Có thể là “OP_BUY” hoặc “OP_SELL”.
  2. Biến cục bộ:
    • double Lotmoinhat = 0: Biến này được khởi tạo với giá trị mặc định là 0. Nó sẽ lưu số lô của lệnh mở mới nhất của loại lệnh được chỉ định.
  3. Vòng lặp qua các lệnh đã mở:
    • Vòng lặp for chạy qua tất cả các lệnh đã mở bằng cách sử dụng hàm OrdersTotal() để lấy tổng số lệnh hiện tại.
    • Với mỗi lệnh, sử dụng hàm OrderSelect() để chọn lệnh hiện tại theo vị trí (SELECT_BY_POS) trong danh sách lệnh.
    • Sau đó, kiểm tra nếu lệnh được chọn có cùng cặp tiền (OrderSymbol()) và mã Magic (OrderMagicNumber()) với cặp tiền và mã Magic được chỉ định trong hàm.
    • Tiếp theo, kiểm tra nếu loại lệnh của lệnh hiện tại là OP_BUY và type được truyền vào cũng là “OP_BUY”, hoặc nếu loại lệnh của lệnh hiện tại là OP_SELL và type là “OP_SELL”, thì lấy số lô của lệnh đó bằng cách sử dụng hàm OrderLots() và gán cho Lotmoinhat.
  4. Trả về số lô của lệnh mới nhất:
    • Khi kết thúc vòng lặp, hàm sẽ trả về số lô của lệnh mở mới nhất của loại lệnh được chỉ định. Nếu không có lệnh nào được tìm thấy hoặc không phù hợp với loại lệnh được chỉ định, hàm sẽ trả về giá trị mặc định là 0.

Lưu ý rằng bạn cần chắc chắn gọi hàm này với loại lệnh thích hợp và kiểm tra kết quả trước khi sử dụng số lô trả về trong chiến lược giao dịch của bạn.

[block_content id=”3041″]

Leave a Reply

Your email address will not be published. Required fields are marked *