Bài 9: Hàm MT4 lấy ra chỉ báo STOCHASTIC và vào lệnh trên MT4

Bài 9: Hàm MT4 lấy ra chỉ báo STOCHASTIC và vào lệnh trên MT4
Để vào lệnh dựa trên tín hiệu của chỉ báo Stochastic trên MT4, bạn có thể thực hiện các bước sau:

  1. Mở biểu đồ cho cặp tiền tệ bạn quan tâm trên MT4.
  2. Thêm chỉ báo Stochastic vào biểu đồ:
    • Nhấp chuột phải vào biểu đồ, chọn “Chỉ báo” (hoặc nhấn phím Insert trên bàn phím).
    • Chọn “Oscillators” và sau đó chọn “Stochastic Oscillator”.
    • Trong cửa sổ thiết lập, có thể bạn muốn điều chỉnh tham số (thời gian tính toán, mức dươnng, mức đường trung bình, v.v.) theo ý muốn.
  3. Đánh giá tín hiệu của Stochastic:
    • Khi đường %K vượt qua đường %D từ dưới lên và cả hai đường đều ở mức dưới 20, điều này có thể được xem là tín hiệu mua.
    • Khi đường %K vượt qua đường %D từ trên xuống và cả hai đường đều ở mức trên 80, điều này có thể được xem là tín hiệu bán.
  4. Thực hiện lệnh dựa trên tín hiệu của Stochastic:
    • Để mua: Nếu đường %K vượt qua đường %D từ dưới lên và cả hai đường đều dưới 20, bạn có thể mở lệnh mua.
    • Để bán: Nếu đường %K vượt qua đường %D từ trên xuống và cả hai đường đều trên 80, bạn có thể mở lệnh bán.
  5. Đặt các điều kiện dừng lỗ và mục tiêu lợi nhuận phù hợp cho lệnh của bạn.

Dưới đây là cách khai báo và hàm mt4 để lấy ra tính hiệu Stochatis theo thông số cài đặt trên bot và vào lệnh

input bool UseStochastis             = true;// Su Dung Stochastis
input int K_Period                   = 5;
input int D_Period                   = 3;
input int Slowing                    = 3;
input int ValueStoSELL               = 80;
input int ValueStoBUY                = 20;
input ENUM_MA_METHOD MA_METHOD_Stochastis = MODE_EMA;

Đặt Hàm dưới trong phần Ontick()


void OnTick()
  { 
// --- Khai báo iStochastic
  double Sto_Main_0 = iStochastic(Symbol(),Period(),K_Period,D_Period,Slowing,MA_METHOD_Stochastis,0,MODE_MAIN,0);// LINE BLUE
   double Sto_Signal_0 = iStochastic(Symbol(),Period(),K_Period,D_Period,Slowing,MA_METHOD_Stochastis,0,MODE_SIGNAL,0);// LINE SIGNAL
   double Sto_Main_1 = iStochastic(Symbol(),Period(),K_Period,D_Period,Slowing,MA_METHOD_Stochastis,0,MODE_MAIN,1);// LINE BLUE
   double Sto_Signal_1 = iStochastic(Symbol(),Period(),K_Period,D_Period,Slowing,MA_METHOD_Stochastis,0,MODE_SIGNAL,1);// LINE SIGNAL
   double Sto_Main_2 = iStochastic(Symbol(),Period(),K_Period,D_Period,Slowing,MA_METHOD_Stochastis,0,MODE_MAIN,2);// LINE BLUE
   double Sto_Signal_2 = iStochastic(Symbol(),Period(),K_Period,D_Period,Slowing,MA_METHOD_Stochastis,0,MODE_SIGNAL,2);// LINE SIGNAL
// --- 
      
 if(!UseStochastis || (UseStochastis && Sto_Main_1 >= ValueStoSELL&&Sto_Signal_1 >= ValueStoSELL && Sto_Main_1 > Sto_Signal_1 && Sto_Main_0 <  Sto_Signal_0 ))
        {
            // Vào lệnh Buy
            int tick = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 3, 0, 0, "Stochastic  Buy", MagicNumber, 0, Green);
        }
 if(!UseStochastis || (UseStochastis && Sto_Main_2 >= ValueStoSELL&&Sto_Signal_2 >= ValueStoSELL && Sto_Main_2 > Sto_Signal_2 && Sto_Main_1 <  Sto_Signal_1 ))
        {
            // Vào lệnh Sell
            int tick = OrderSend(Symbol(), OP_SELL, 0.1, Bid, 3, 0, 0, "Stochastic  Sell", MagicNumber, 0, Red);
        }
  }

Trong đoạn mã trên, bạn đang sử dụng chỉ báo Stochastic để tạo tín hiệu giao dịch. Dưới đây là mô tả chi tiết về nó:

  1. Tính toán chỉ báo Stochastic:
    • double Sto_Main_0 = iStochastic(Symbol(),Period(),K_Period,D_Period,Slowing,MA_METHOD_Stochastis,0,MODE_MAIN,0);: Tính toán giá trị của đường chính (MAIN) của chỉ báo Stochastic cho cây nến hiện tại.
    • double Sto_Signal_0 = iStochastic(Symbol(),Period(),K_Period,D_Period,Slowing,MA_METHOD_Stochastis,0,MODE_SIGNAL,0);: Tính toán giá trị của đường tín hiệu (SIGNAL) của chỉ báo Stochastic cho cây nến hiện tại.
    • double Sto_Main_1, Sto_Signal_1, Sto_Main_2, Sto_Signal_2: Tương tự như trên, nhưng bạn đang tính toán giá trị của Stochastic cho các cây nến trước đó (1 cây nến trước, 2 cây nến trước).
  2. Kiểm tra tín hiệu giao dịch:
    • if(!UseStochastis || (UseStochastis && ... )): Kiểm tra xem bạn có muốn sử dụng tín hiệu của Stochastic không. Nếu UseStochastis là false hoặc tất cả các điều kiện được đáp ứng, bạn sẽ mở lệnh.
    • Sto_Main_1 >= ValueStoSELL && Sto_Signal_1 >= ValueStoSELL && Sto_Main_1 > Sto_Signal_1 && Sto_Main_0 < Sto_Signal_0: Điều kiện mua. Bạn đang kiểm tra xem đường chính và đường tín hiệu của Stochastic ở cây nến trước đó có lớn hơn hoặc bằng ngưỡng mua ValueStoSELL, và nếu đường chính lớn hơn đường tín hiệu và có một sự chuyển đổi từ tín hiệu bán sang tín hiệu mua.
    • Sto_Main_2 >= ValueStoSELL && Sto_Signal_2 >= ValueStoSELL && Sto_Main_2 > Sto_Signal_2 && Sto_Main_1 < Sto_Signal_1: Điều kiện bán. Tương tự như trên, nhưng bạn kiểm tra Stochastic của 2 cây nến trước đó.
  3. Mở lệnh:
    • int tick = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 3, 0, 0, "Stochastic Buy", MagicNumber, 0, Green);: Mở lệnh mua với kích thước lô là 0.1 và giá mua (Ask).
    • int tick = OrderSend(Symbol(), OP_SELL, 0.1, Bid, 3, 0, 0, "Stochastic Sell", MagicNumber, 0, Red);: Mở lệnh bán với kích thước lô là 0.1 và giá bán (Bid).

Lưu ý rằng trong thực tế, bạn cần kiểm tra kỹ lưỡng các điều kiện giao dịch và xác định các thông số lệnh phù hợp với chiến lược giao dịch của bạn trước khi sử dụng mã này trong môi trường giao dịch thực tế.

[block_content id=”3041″]

Leave a Reply

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