การใช้งาน indicator ทางเทคนิค (MA, RSI, MACD, Bollinger Bands)

IUX Markets Bonus

ตัวอย่างการใช้งาน indicator ทางเทคนิค (MA, RSI, MACD, Bollinger Bands)

การใช้งาน indicator ทางเทคนิค (MA RSI MACD Bollinger Bands)
การใช้งาน indicator ทางเทคนิค (MA RSI MACD Bollinger Bands)


void OnStart()
{
    int barCount = 100;
    
    // Moving Average (MA)
    double ma[];
    ArrayResize(ma, barCount);
    for(int i = 0; i < barCount; i++)
    {
        ma[i] = iMA(NULL, 0, 14, 0, MODE_SMA, PRICE_CLOSE, i);
    }
    
    // Relative Strength Index (RSI)
    double rsi[];
    ArrayResize(rsi, barCount);
    for(int i = 0; i < barCount; i++)
    {
        rsi[i] = iRSI(NULL, 0, 14, PRICE_CLOSE, i);
    }
    
    // Moving Average Convergence/Divergence (MACD)
    double macdMain[], macdSignal[], macdHist[];
    ArrayResize(macdMain, barCount);
    ArrayResize(macdSignal, barCount);
    ArrayResize(macdHist, barCount);
    for(int i = 0; i < barCount; i++)
    {
        macdMain[i] = iMACD(NULL, 0, 12, 26, 9, PRICE_CLOSE, MODE_MAIN, i);
        macdSignal[i] = iMACD(NULL, 0, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, i);
        macdHist[i] = iMACD(NULL, 0, 12, 26, 9, PRICE_CLOSE, MODE_HIST, i);
    }
    
    // Bollinger Bands
    double bbUpper[], bbMiddle[], bbLower[];
    ArrayResize(bbUpper, barCount);
    ArrayResize(bbMiddle, barCount);
    ArrayResize(bbLower, barCount);
    for(int i = 0; i < barCount; i++)
    {
        bbUpper[i] = iBands(NULL, 0, 20, 2, 0, PRICE_CLOSE, MODE_UPPER, i);
        bbMiddle[i] = iBands(NULL, 0, 20, 2, 0, PRICE_CLOSE, MODE_MAIN, i);
        bbLower[i] = iBands(NULL, 0, 20, 2, 0, PRICE_CLOSE, MODE_LOWER, i);
    }
    
    // แสดงค่า indicator สำหรับแท่งเทียนล่าสุด
    Print("MA: ", ma[0]);
    Print("RSI: ", rsi[0]);
    Print("MACD Main: ", macdMain[0], " Signal: ", macdSignal[0], " Hist: ", macdHist[0]);
    Print("Bollinger Bands Upper: ", bbUpper[0], " Middle: ", bbMiddle[0], " Lower: ", bbLower[0]);
}

คำอธิบายฟังก์ชัน

ฟังก์ชัน OnStart() นี้ใช้สำหรับคำนวณและแสดงค่า technical indicators หลายประเภทสำหรับ 100 แท่งเทียนล่าสุด

การทำงานหลัก:

  1. กำหนดจำนวนแท่งเทียนที่ต้องการวิเคราะห์ (100 แท่ง)
  2. คำนวณค่า indicators ต่อไปนี้:
    • Moving Average (MA)
    • Relative Strength Index (RSI)
    • Moving Average Convergence/Divergence (MACD)
    • Bollinger Bands
  3. แสดงค่า indicators สำหรับแท่งเทียนล่าสุด

รายละเอียดการคำนวณ Indicators:

  1. Moving Average (MA):
    • ใช้ฟังก์ชัน iMA() กับ period 14
    • เก็บค่าใน array ma[]
  2. Relative Strength Index (RSI):
    • ใช้ฟังก์ชัน iRSI() กับ period 14
    • เก็บค่าใน array rsi[]
  3. Moving Average Convergence/Divergence (MACD):
    • ใช้ฟังก์ชัน iMACD() กับ parameters (12, 26, 9)
    • คำนวณทั้ง Main, Signal, และ Histogram
    • เก็บค่าใน arrays macdMain[], macdSignal[], macdHist[]
  4. Bollinger Bands:
    • ใช้ฟังก์ชัน iBands() กับ period 20 และ deviation 2
    • คำนวณทั้ง Upper, Middle, และ Lower bands
    • เก็บค่าใน arrays bbUpper[], bbMiddle[], bbLower[]

การแสดงผล:

  • แสดงค่า indicators ทั้งหมดสำหรับแท่งเทียนล่าสุด (index 0) โดยใช้ฟังก์ชัน Print()

ฟังก์ชันนี้เหมาะสำหรับการวิเคราะห์ตลาดโดยใช้หลาย indicators พร้อมกัน ช่วยให้เห็นภาพรวมของสภาวะตลาดจากหลายมุมมอง ซึ่งเป็นประโยชน์ในการพัฒนากลยุทธ์การเทรดที่ซับซ้อน

FOREXDUCK Logo

FOREXDUCK (นามปากกา) นักเขียนของเรามีประสบการณ์การเงินการลงทุนกว่า 10 ปี มีความเชี่ยวชาญในการวิเคราะห์ตลาด Forex และคริปโต โดยเฉพาะการวิเคราะห์ทางเทคนิค รวมถึงเทคนิคต่าง

HFM Promotion