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

เทมเพลต Divergences Indicator สำหรับ MetaTrader 4: สัญญาณที่คุณไม่ควรพลาด

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

DivEurusd

เทมเพลตนี้ทำงานอย่างไร?

Indicator ตัวนี้จะช่วยให้คุณสร้างเทมเพลตสำหรับการวิเคราะห์ Divergence โดยอิงจาก oscillator ที่คุณเลือกใช้งาน

ไม่ว่าจะเป็น CCI, RSI หรือ Indicator ที่คุณสร้างเอง คุณสามารถปรับเปลี่ยนโค้ดในส่วนนี้ได้:

   /////////////////////////////////////////////
   //โหลดข้อมูล indicator ลงใน buffer
   //คุณสามารถเปลี่ยน RSI เป็น indicator ตัวอื่นที่คุณต้องการได้
   int BARS=MathMax(rates_total-IndicatorCounted()-pivots_period,1);
   for(int i=BARS;i>=0;i--)
   {
      indicatorBuffer[i]=iRSI(_Symbol, PERIOD_CURRENT, 14, PRICE_CLOSE, i);
   }
   //จบการโหลดข้อมูล indicator
   /////////////////////////////////////////////


สัญญาณที่สร้างขึ้น

Indicator นี้มี buffer ที่ใช้ในการติดตามสัญญาณสี่ตัวดังต่อไปนี้ โดยจะมีสัญญาณเกิดขึ้นเมื่อ buffer ที่เกี่ยวข้องมีค่าที่ไม่ว่างเปล่า
   SetIndexBuffer(3,bull_reg_divBuffer);
   SetIndexBuffer(4,bear_reg_divBuffer);
   SetIndexBuffer(5,bull_hid_divBuffer);
   SetIndexBuffer(6,bear_hid_divBuffer);


ส่วนการตั้งค่า

input int pivots_period=5; //ระยะเวลาที่ใช้ในการหาจุด pivot
input int alert_confirm_candles=1; //#แท่งเทียนสำหรับการยืนยัน (0=ปิดการแจ้งเตือน)

การหาจุด pivot highs และ pivot lows ใน indicatorBuffer ขึ้นอยู่กับการตั้งค่า pivots_period ที่คุณเลือก ถ้าคุณเลือกค่าที่ใหญ่ขึ้น มันจะค้นหาสวิงที่ใหญ่ขึ้นสำหรับ Divergence ที่เป็นไปได้

อีกหนึ่งค่าคือ alert_confirm_candles ที่กำหนดจำนวนแท่งเทียนที่ต้องรอเพื่อยืนยันสัญญาณ โดยทั่วไปแล้ว Indicator Divergence มักจะมีความล่าช้าและอาจสร้างสัญญาณเท็จมากมาย การเลือกค่าที่ใหญ่ขึ้นจะทำให้คุณรอนานขึ้นและลดจำนวนสัญญาณเท็จ แต่ก็เป็นการแลกเปลี่ยนระหว่างการได้รับสัญญาณทันทีหรือการได้รับสัญญาณที่ยืนยันแล้ว

โดยทั่วไปแล้วคุณจะไม่สามารถใช้ pivots_period ที่น้อยกว่า 2 ได้


ปัญหา Repaint

Indicators ที่อิงจากการคำนวณ pivot จะต้องรอจนกว่า pivots_period จะได้การยืนยันจาก high/low ล่าสุด ดังนั้น Indicator นี้จึงต้องมีการรีเพนต์สัญญาณย้อนหลังตาม pivots_period

   BARS=MathMax(rates_total-IndicatorCounted()-pivots_period,pivots_period);
   for(int i=BARS;i>=0;i--)
   {
      PHBuffer[i]=pivothigh(indicatorBuffer, pivots_period, pivots_period, i);
      PLBuffer[i]=pivotlow(indicatorBuffer, pivots_period, pivots_period, i);
      bull_reg_divBuffer[i]=BullRegDiv(i);
      bear_reg_divBuffer[i]=BearRegDiv(i);
      bull_hid_divBuffer[i]=BullHidDiv(i);
      bear_hid_divBuffer[i]=BearHidDiv(i);
   }   

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

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