หน้าแรก ตัวชี้วัดทางเทคนิค โพสต์

วิธีการใช้คลาส CMomentumOnRingBuffer ในการคำนวณ Momentum สำหรับ MetaTrader 5

ไฟล์แนบ
1396.zip (6.02 KB, ดาวน์โหลด 0 ครั้ง)

สวัสดีเพื่อนๆ เทรดเดอร์ทุกคน! วันนี้เราจะมาพูดถึงคลาส CMomentumOnRingBuffer ซึ่งออกแบบมาเพื่อช่วยในการคำนวณอินดิเคเตอร์ Momentum โดยใช้วิธีการของ Ring Buffer นะครับ

คำอธิบาย

คลาสนี้มีเป้าหมายเพื่อช่วยในการคำนวณ Momentum ได้อย่างมีประสิทธิภาพ โดยเฉพาะสำหรับเทรดเดอร์ที่ใช้ MetaTrader 5

การประกาศคลาส

class CMomentumOnRingBuffer : public CArrayRing

การตั้งค่าไฟล์

ไฟล์ CMomentumOnRingBuffer.mqh จะต้องถูกวางในโฟลเดอร์ IncOnRingBuffer ที่ตั้งอยู่ใน MQL5\Include\ นะครับ และอย่าลืมว่าไฟล์ที่ใช้ตัวอย่างจากคลาสนี้จะต้องอยู่ในโฟลเดอร์นี้ด้วยเช่นกัน

วิธีการของคลาส

//--- วิธีการเริ่มต้น:
bool Init(int period = 14, int size_buffer = 256, bool as_series = false);
//--- วิธีการคำนวณจากอาเรย์:
int MainOnArray(const int rates_total, const int prev_calculated, const double& array[]);
//--- วิธีการคำนวณจากค่าที่กำหนด:
double MainOnValue(const int rates_total, const int prev_calculated, const int begin, const long value, const int index);

การเข้าถึงข้อมูล

การดึงข้อมูลที่คำนวณจาก Ring Buffer สามารถทำได้เหมือนกับอาเรย์ปกติ เช่น:

//--- ตัวอย่างการคำนวณอินดิเคเตอร์:
CMomentumOnRingBuffer momentum;

int OnCalculate(const int rates_total, const int prev_calculated, const int begin, const double& price[]) {
    momentum.MainOnArray(rates_total, prev_calculated, price);
    for(int i=start; i<rates_total; i++)
        Momentum_Buffer[i] = momentum[rates_total-1-i];
    return (rates_total);
}

ตัวอย่างการใช้งาน

  1. ไฟล์ Test_Momentum_OnArrayRB.mq5 คำนวณอินดิเคเตอร์จากราคาซีรีส์เวลา โดยแสดงการใช้ MainOnArray()
  2. ไฟล์ Test_Momentum_OnValueRB.mq5 แสดงการใช้ MainOnValue() โดยเริ่มต้นจากการคำนวณ Momentum แล้วจึงสร้าง Momentum ตัวที่สองจาก Ring Buffer

ผลลัพธ์


ผลลัพธ์จากการทำงานของ Test_Momentum_OnArrayRB.mq5 ที่มีขนาด Ring Buffer 256 องค์ประกอบ


ผลลัพธ์จากการทำงานของ Test_Momentum_OnValueRB.mq5 ที่มีขนาด Ring Buffer 256 องค์ประกอบ

การพัฒนาครั้งนี้ได้รับแรงบันดาลใจจากผลงานของ MetaQuotes Software Corp., Integer และ GODZILLA

โพสต์ที่เกี่ยวข้อง

ความคิดเห็น (0)