#1
Để tìm nến PinBar và vào lệnh trong MT4, bạn có thể sử dụng một số điều kiện và hàm trong ngôn ngữ lập trình MQL4. Dưới đây là một ví dụ đơn giản về cách tìm nến Pin Bar và vào lệnh:

Khai báo trên input.

extern int MagicNumber = 12369;
extern double   tile_pinbar       = 3; //Tỷ lệ râu so với thân nến
extern int    epsilon_inp       = 200;     // Body Nen Pinbar Nho Hon (Point)
  
Đặt Hàm dưới trong phần Ontick()

  void OnTick()
  {
 
// --- PINBAR
      bool pinbar = false;
      double upperWick = 0;
      double lowerWick = 0;
      double body    = MathAbs(Open[1] - Close[1]);
      double epsilon = epsilon_inp * Point;
      if(Nen(1) == "Nen_Giam")
      	{upperWick = High[1] - Open[1]; lowerWick = Close[1] - Low[1];} 
      if(Nen(1) == "Nen_Tang")
      	{upperWick = High[1] - Close[1]; lowerWick = Open[1] - Low[1];}
      if(upperWick / body > tile_pinbar && lowerWick < epsilon && pinbar == false) pinbar = true;//>
// --- END PINBAR
      
       if(pinbar == true && TimeCurrent() <= Time[0] + 2) //> Nến Pinbar == true và thời gian hiện tại không được <= Thời gian trong cây nến >
    {
        if (Open[1] < Close[1]) // Nến Xanh , mở cửa < đóng của của cây nến Pinbar  >
        {
            // Vào lệnh Buy
            int tick = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 3, 0, 0, "Pinbar  Buy", MagicNumber, 0, Green);
        }
        else if (Open[1] > Close[1]) // Nến Đỏ , mở cửa > đóng của của cây nến Pinbar 
        {
            // Vào lệnh Sell
            int tick = OrderSend(Symbol(), OP_SELL, 0.1, Bid, 3, 0, 0, "Pinbar  Sell", MagicNumber, 0, Red);
        }
    }
  }
  
Lưu ý: (Nen(1) == "Nen_Giam")(Nen(1) == "Nen_Tang") 2 hàm này các bạn quay ra Website tìm Hàm định nghĩa nến xanh, nến đỏ trong [ n ] cây nến MT4. và add vào code nhé.

Trong ví dụ này, chúng ta sử dụng một vòng lặp để duyệt qua tất cả các nến trên biểu đồ. Với mỗi nến, chúng ta sử dụng các hàm Open[1], Close[1], High[1], và Low[1] để lấy giá trị Open, Close, High, và Low của nến đó.
Sau đó, chúng ta kiểm tra xem nến đó có phải là nến Doji hay không bằng cách so sánh giá trị MathAbs(Open[1] - Close[1]) để lấy giá trị Open, Close, High, và Low của nến đó.
Sau đó, chúng ta tính toán độ dài body, upper wicklower wick của nến bằng cách sử dụng các công thức phù hợp.
Tiếp theo, chúng ta kiểm tra xem nến đó có phải là nến Pin Bar hay không bằng cách so sánh độ dài body với upper wicklower wick, và đảm bảo rằng body không bằng 0. Nếu đúng, nến đó được xem là nến Pin Bar.
Nếu nến đó là nến Pin Bar, chúng ta kiểm tra xem giá mở cửa của nến có lớn hơn giá đóng cửa hay không. Nếu có, chúng ta vào lệnh Buy bằng cách sử dụng hàm OrderSend() với tham số OP_BUY. Nếu không, chúng ta vào lệnh Sell bằng cách sử dụng hàm OrderSend() với tham số OP_SELL.

Lưu ý rằng trong ví dụ này, chúng ta sử dụng các giá trị cố định cho StopLossTakeProfit. Bạn có thể thay đổi các giá trị này để phù hợp với chiến lược và cặp tiền tệ của mình.

👉 Group ZALO trao đổi CODE: TẠI ĐÂY

image quote pre code
Xem hướng dẫn đăng nhập để đăng bình luận Tại Đây
Chia sẻ: