老师下午好!帮我改一下mt4 (文华财经WH6赢顺V6.7)

投资者咨询:老师下午好!帮我改一下mt4 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-9-11 17:43
 DDZB 顶底指标  MT4指标改赢顺指标

//+------------------------------------------------------------------+
//|                                                         X-ZZ.mq4 |
//+------------------------------------------------------------------+
#property copyright ""
#property link      "http://www.125808047.com/"

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Silver

extern bool AlarmWithBox = FALSE;
extern string SoundWAV = "alert.wav";
extern int ExtDepth = 33;
extern int ExtDeviation = 5;
extern int ExtBackstep = 3;
extern int barn = 1500;
extern int from = 0;
double g_ibuf_108[];
double g_ibuf_112[];
int g_time_116 = 0;

int init() {
   IndicatorBuffers(2);
   SetIndexStyle(0, DRAW_ARROW, STYLE_SOLID, 3);
   SetIndexArrow(0, 108);
   SetIndexBuffer(0, g_ibuf_108);
   SetIndexBuffer(1, g_ibuf_112);
   SetIndexEmptyValue(0, 0.0);
   ArraySetAsSeries(g_ibuf_108, TRUE);
   ArraySetAsSeries(g_ibuf_112, TRUE);
   IndicatorShortName("ZigZag(" + ExtDepth + "," + ExtDeviation + "," + ExtBackstep + ")");
   return (0);
}

int deinit() {
Comment("www.125808047.com");
   return (0);
}


int start() {
   double ld_16;
   double ld_24;
   double ld_32;
   double ld_40;
   double ld_48;
   double ld_56;
   int lia_64[2];
   double ld_72;
   int li_0 = barn;
   for (li_0 = barn - ExtDepth; li_0 > from; li_0--) {
      ld_16 = Low[iLowest(NULL, 0, MODE_LOW, ExtDepth, li_0)];
      if (ld_16 == ld_56) ld_16 = 0.0;
      else {
         ld_56 = ld_16;
         if (Low[li_0] - ld_16 > ExtDeviation * Point) ld_16 = 0.0;
         else {
            for (int li_4 = 1; li_4 <= ExtBackstep; li_4++) {
               ld_24 = g_ibuf_108[li_0 + li_4];
               if (ld_24 != 0.0 && ld_24 > ld_16) g_ibuf_108[li_0 + li_4] = 0.0;
            }
         }
      }
      g_ibuf_108[li_0] = ld_16;
      ld_16 = High[iHighest(NULL, 0, MODE_HIGH, ExtDepth, li_0)];
      if (ld_16 == ld_48) ld_16 = 0.0;
      else {
         ld_48 = ld_16;
         if (ld_16 - High[li_0] > ExtDeviation * Point) ld_16 = 0.0;
         else {
            for (li_4 = 1; li_4 <= ExtBackstep; li_4++) {
               ld_24 = g_ibuf_112[li_0 + li_4];
               if (ld_24 != 0.0 && ld_24 < ld_16) g_ibuf_112[li_0 + li_4] = 0.0;
            }
         }
      }
      g_ibuf_112[li_0] = ld_16;
   }
   ld_48 = -1;
   int li_8 = -1;
   ld_56 = -1;
   int li_12 = -1;
   for (li_0 = barn - ExtDepth; li_0 > from; li_0--) {
      ld_32 = g_ibuf_108[li_0];
      ld_40 = g_ibuf_112[li_0];
      if (ld_32 == 0.0 && ld_40 == 0.0) continue;
      if (ld_40 != 0.0) {
         if (ld_48 > 0.0) {
            if (ld_48 < ld_40) g_ibuf_112[li_8] = 0;
            else g_ibuf_112[li_0] = 0;
         }
         if (ld_48 < ld_40 || ld_48 < 0.0) {
            ld_48 = ld_40;
            li_8 = li_0;
         }
         ld_56 = -1;
      }
      if (ld_32 != 0.0) {
         if (ld_56 > 0.0) {
            if (ld_56 > ld_32) g_ibuf_108[li_12] = 0;
            else g_ibuf_108[li_0] = 0;
         }
         if (ld_32 < ld_56 || ld_56 < 0.0) {
            ld_56 = ld_32;
            li_12 = li_0;
         }
         ld_48 = -1;
      }
   }
   for (li_0 = barn - 1; li_0 > from; li_0--) {
      if (li_0 >= barn - ExtDepth) g_ibuf_108[li_0] = 0.0;
      else {
         ld_24 = g_ibuf_112[li_0];
         if (ld_24 != 0.0) g_ibuf_108[li_0] = ld_24;
      }
   }
   int index_68 = 0;
   for (li_0 = from + 1; index_68 < 2 && li_0 < barn; li_0++) {
      if (g_ibuf_108[li_0] != 0.0) {
         lia_64[index_68] = li_0;
         index_68++;
      }
   }
   if (index_68 > 0) {
      if (g_time_116 != Time[lia_64[0]]) {
         g_time_116 = Time[lia_64[0]];
         ld_72 = g_ibuf_108[lia_64[0]] - g_ibuf_108[lia_64[1]];
        /* if (ld_72 > 0.0) {
            Alert("Tada! ", Symbol(), " ", Period(), " @ ", Bid);
            PlaySound(SoundWAV);
         } else {
            if (ld_72 < 0.0) {
               Alert("Tada! ", Symbol(), " ", Period(), " @ ", Bid);
               PlaySound(SoundWAV);
            } else {
               if (index_68 == 1) {
                  Alert("Tada! ", Symbol(), " ", Period(), " @ ", Bid);
                  PlaySound(SoundWAV);
               }
            }
         }*/
      }
   }
   return (0);
}

   
技术人员回复
日期:2018-9-11 17:47
 语言差异过大,我们分析一下可否改写,预计周五前给您回复
投资者咨询:老师下午好!帮我改一下mt4 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-9-11 17:43
 好的,
投资者咨询:老师下午好!帮我改一下mt4 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-9-11 17:43
 老师,今天看了吗?

技术人员回复
日期:2018-9-12 8:56
 还在分析中,还请您耐心等待
投资者咨询:老师下午好!帮我改一下mt4 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-9-11 17:43
 谢谢老师,希望尽快解决
投资者咨询:老师下午好!帮我改一下mt4 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-9-11 17:43
  老师,今天分析好了吗?
技术人员回复
日期:2018-9-12 13:19
语言差异过大,而且指标含有FOR循环,而wh6是大众看盘软件,不支持这类复杂的循环函数的

您可以直接提供下看盘指标的编写思路,给您分析下
投资者咨询:老师下午好!帮我改一下mt4 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-9-11 17:43
 编写思路:就是波段的高点或低点时,发出黄色点信号
技术人员回复
日期:2018-9-12 14:24
需要您说明一下如何判断的波段高低点呢?

通常波段高低点准确的指标都是含有未来函数的,

您可以参考一下ZIGZAG可以描绘出波段高低点,