สวัสดีเพื่อนนักเทรดทุกคน! วันนี้เราจะมาพูดถึง DemoBufferPattern ซึ่งเป็นตัวชี้วัดที่น่าสนใจสำหรับ MetaTrader 5 ที่รวมฟังก์ชันต่างๆ อย่าง เช่น แท่งเทียน (Candles), แฟรคทัล (Fractals), ซิกแซก (Zigzag) และเส้นค่าเฉลี่ยเคลื่อนที่ (ColorMaLine) มาไว้ด้วยกัน
ตัวชี้วัดนี้ใช้สไตล์การวาดดังนี้:
//+------------------------------------------------------------------+ //| ฟังก์ชันสำหรับการเริ่มต้นตัวชี้วัด | //+------------------------------------------------------------------+ int OnInit() { //--- การแมพบัฟเฟอร์ของตัวชี้วัด SetIndexBuffer( 0,P1B1,INDICATOR_DATA); SetIndexBuffer( 1,P1B2,INDICATOR_DATA); SetIndexBuffer( 2,P1B3,INDICATOR_DATA); SetIndexBuffer( 3,P1B4,INDICATOR_DATA); SetIndexBuffer( 4,P1BC,INDICATOR_COLOR_INDEX); SetIndexBuffer( 5,P2B1,INDICATOR_DATA); SetIndexBuffer( 6,P3B1,INDICATOR_DATA); SetIndexBuffer( 7,P4B1,INDICATOR_DATA); SetIndexBuffer( 8,P4B2,INDICATOR_DATA); SetIndexBuffer( 9,P4BC,INDICATOR_COLOR_INDEX); SetIndexBuffer(10,P5B1,INDICATOR_DATA); SetIndexBuffer(11,P5BC,INDICATOR_COLOR_INDEX); //--- บัฟเฟอร์เสริมสำหรับการคำนวณระหว่าง SetIndexBuffer(12,P4M1,INDICATOR_CALCULATIONS); SetIndexBuffer(13,P4M2,INDICATOR_CALCULATIONS); //--- ควรวางหลังจากบัฟเฟอร์ทั้งหมดที่จะแสดง ไม่งั้น ... ลองทำดูเอง //--- ลูกศร PlotIndexSetInteger(1,PLOT_ARROW,217); PlotIndexSetInteger(2,PLOT_ARROW,218); PlotIndexSetInteger(1,PLOT_ARROW_SHIFT,-iArrowShift); PlotIndexSetInteger(2,PLOT_ARROW_SHIFT,iArrowShift); PlotIndexSetDouble(1,PLOT_EMPTY_VALUE,EMPTY_VALUE); PlotIndexSetDouble(2,PLOT_EMPTY_VALUE,EMPTY_VALUE); //--- ซิกแซก PlotIndexSetDouble(3,PLOT_EMPTY_VALUE,0.0); //--- MA maHandle=iMA(Symbol(),0,ExtPeriod,0,MODE_EMA,PRICE_CLOSE); return(0); } //+------------------------------------------------------------------+ //| ฟังก์ชันสำหรับการวนรอบตัวชี้วัด | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, const int prev_calculated, const datetime& time[], const double& open[], const double& high[], const double& low[], const double& close[], const long& tick_volume[], const long& volume[], const int& spread[]) { //--- CalcCandles(rates_total,prev_calculated,open,high,low,close); CalcFractal(rates_total,prev_calculated,high,low,P2B1,P3B1); CalcZigzag (rates_total,prev_calculated,high,low,P4B1,P4B2,P4BC,P4M1,P4M2); CalcColorMA(rates_total,prev_calculated,P5B1,P5BC); //--- คืนค่า prev_calculated สำหรับการเรียกครั้งถัดไป return(rates_total); }

โพสต์ที่เกี่ยวข้อง
- เครื่องมือ Open Range Breakout สำหรับ MetaTrader 5
- เครื่องมือ MetaCOT 2 CFTC ToolBox - ชุดตัวชี้วัดสำหรับการวิเคราะห์ใน MetaTrader 4
- FX Multi-Meter II: เครื่องมือช่วยเทรดที่ครบครันสำหรับนักลงทุน
- เครื่องมือ Master Tools - อินดิเคเตอร์สำหรับ MetaTrader 4
- สัญญาณข้ามค่าเฉลี่ยเคลื่อนที่ครั้งเดียว - เครื่องมือช่วยเทรดใน MetaTrader 4