Старая версия советников

 

Здравствуйте, что делать все брокеры дружно по-видимому перестали поддерживать предыдущие версии терминалов МТ4, пишет в терминале старая версия, из за этого не работают старые советники 

То есть если билд старый или назовем его предыдущий, то в терминале просто справа внизу где соединение пишет старая версия 

 
JRJett:

Здравствуйте, что делать все брокеры дружно по-видимому перестали поддерживать предыдущие версии терминалов МТ4, пишет в терминале старая версия, из за этого не работают старые советники 

То есть если билд старый или назовем его предыдущий, то в терминале просто справа внизу где соединение пишет старая версия 

Пора избавляться от старых декомпилированных советников и индикаторов.

 
Надо обновиться на новый билд, или скачать его у брокера.
 
если обновить билд, не работают старые советники, я поэтому и спросил что делать 
 
JRJett #:
если обновить билд, не работают старые советники, я поэтому и спросил что делать 

Если есть исходники советников, то перекомпилировать в новом билде. Если нет, то искать автора (обычно он указан на вкладке "About") и просить его перекомпилировать в новом билде.

 
Ihor Herasko #:

Если есть исходники советников, то перекомпилировать в новом билде. Если нет, то искать автора (обычно он указан на вкладке "About") и просить его перекомпилировать в новом билде.

Никакие обычные советники не пострадали на новых билдах. И их не надо перекомпилировать, так как совместимость не нарушалась.

Перестали работать исключительно взломанные продукты из Маркета. "Скачал из интернета и перестало работать"  - это именно и есть взломанное и сворованное.

 
MetaQuotes #:

Никакие обычные советники не пострадали на новых билдах. И их не надо перекомпилировать, так как совместимость не нарушалась.

Перестали работать исключительно взломанные продукты из Маркета. "Скачал из интернета и перестало работать"  - это именно и есть взломанное и сворованное.

После обновления перестал работать индикатор Мюррея который тут https://www.mql5.com/ru/code/8157

Он ведь бесплатный, не взломанный, не сворованный. На старом билде работает.

Текущий билд 1425. Что делать?

Уровни Мюррея
Уровни Мюррея
  • www.mql5.com
Вобщем-то в названии все сказано. В этом индикаторе поправлена ошибка, которая была в предыдущих реализациях.
 
Ramil Sungatov #:

После обновления перестал работать индикатор Мюррея который тут https://www.mql5.com/ru/code/8157

Он ведь бесплатный, не взломанный, не сворованный. На старом билде работает.

Текущий билд 1425. Что делать?

Перекомпилировать в новом билде.

 
Ramil Sungatov #:

После обновления перестал работать индикатор Мюррея который тут https://www.mql5.com/ru/code/8157

Он ведь бесплатный, не взломанный, не сворованный. На старом билде работает.

Текущий билд 1425. Что делать?

Возможно перекомпилировался с обновлением билда терминала.
И возможно что при компиляции вылезли ошибки, которые раньше таковыми не считались.
Попробуй в редакторе открыть исходник и скомпилировать вручную.
Если будут ошибки транслируй сюда - поможем.

 
Ihor Herasko #:

Перекомпилировать.

Это как я понял, делается так? Не помогает.


Аналогичный бесплатный индикатора Мюррея тоже не работает.


//+------------------------------------------------------------------+

//|                                                                  |

//|                 Copyright © 1999-2007, MetaQuotes Software Corp. |

//|                                         http://www.metaquotes.ru |

//+------------------------------------------------------------------+

#property indicator_chart_window

//----

extern int P=64;

extern int StepBack=0;

//----

double  dmml=0,dvtl=0,sum =0,v1=0,v2=0,mn=0,mx=0,x1=0,x2=0,x3=0,x4=0,x5=0,x6=0,y1=0,y2=0,y3=0,y4=0,y5=0,y6=0,octave=0,fractal=0,range  =0,finalH =0,finalL =0,mml[13];

string  ln_txt[13],

buff_str="";

int

bn_v1  =0,

bn_v2  =0,

OctLinesCnt=13,

mml_thk=8,

mml_clr[13],

mml_shft=3,

nTime=0,

CurPeriod=0,

nDigits=0,

i=0;

//+------------------------------------------------------------------+

//|                                                                  |

//+------------------------------------------------------------------+

  int init() 

  {

   ln_txt[0] ="[-2/8]P";

   ln_txt[1] ="[-1/8]P";   ln_txt[2] ="ПОДДЕРЖКА [0/8]";

   ln_txt[3] ="ОСТАНОВКА_РАЗВОРОТ [1/8]";

   ln_txt[4] ="ВРАЩЕНИЕ_РАЗВОРОТ [2/8]";

   ln_txt[5] ="ДНО_КАНАЛА [3/8]";

   ln_txt[6] ="СОПРОТИВЛЕНИЕ_ПОДДЕРЖКА [4/8]";

   ln_txt[7] ="ВЕРХ_КАНАЛА [5/8]";

   ln_txt[8] ="ВРАЩЕНИЕ_РАЗВОРОТ [6/8]";

   ln_txt[9] ="ОСТАНОВКА_РАЗВОРОТ [7/8]";

   ln_txt[10]="СОПРОТИВЛЕНИЕ [8/8]";

   ln_txt[11]="[+1/8]P";// "overshoot [+1/8]";

   ln_txt[12]="[+2/8]P";// "extremely overshoot [+2/8]";

//----

   mml_shft=25;

   mml_thk =3;

//----

   mml_clr[0] =Magenta;

   mml_clr[1] =Pink;

   mml_clr[2] =Blue;

   mml_clr[3] =Orange;

   mml_clr[4] =Red;

   mml_clr[5] =OliveDrab;

   mml_clr[6] =Blue;

   mml_clr[7] =OliveDrab;

   mml_clr[8] =Red;

   mml_clr[9] =Orange;

   mml_clr[10]=Blue;

   mml_clr[11]=Pink;

   mml_clr[12]=Magenta;

//----

   return(0);

  }

//+------------------------------------------------------------------+

//|                                                                  |

//+------------------------------------------------------------------+

  int deinit() 

  {

   Comment(" ");

     for(i=0;i<OctLinesCnt;i++) 

     {

      buff_str="mml"+i;

      ObjectDelete(buff_str);

      buff_str="mml_txt"+i;

      ObjectDelete(buff_str);

     }

//----

   return(0);

  }

//+------------------------------------------------------------------+

//|                                                                  |

//+------------------------------------------------------------------+

  int start() 

  {

     if((nTime!=Time[0]) || (CurPeriod!=Period()))

     {

      bn_v1=Lowest(NULL,0,MODE_LOW,P+StepBack,0);

      bn_v2=Highest(NULL,0,MODE_HIGH,P+StepBack,0);

//----

      v1=Low[bn_v1];

      v2=High[bn_v2];

//----

      if(v2<=250000 && v2>25000 )

         fractal=100000;

      else

         if(v2<=25000 && v2>2500 )

            fractal=10000;

         else

            if(v2<=2500 && v2>250 )

               fractal=1000;

            else

               if(v2<=250 && v2>25 )

                  fractal=100;

               else

                  if(v2<=25 && v2>12.5 )

                     fractal=12.5;

                  else

                     if(v2<=12.5 && v2>6.25)

                        fractal=12.5;

                     else

                        if(v2<=6.25 && v2>3.125 )

                           fractal=6.25;

                        else

                           if(v2<=3.125 && v2>1.5625 )

                              fractal=3.125;

                           else

                              if(v2<=1.5625 && v2>0.390625 )

                                 fractal=1.5625;

                              else

                                 if(v2<=0.390625 && v2>0)

                                    fractal=0.1953125;

      range=(v2-v1);

      sum=MathFloor(MathLog(fractal/range)/MathLog(2));

      octave=fractal*(MathPow(0.5,sum));

      mn=MathFloor(v1/octave)*octave;

      if((mn+octave)>v2 )

         mx=mn+octave;

      else

         mx=mn+(2*octave);

      if((v1>=(3*(mx-mn)/16+mn)) && (v2<=(9*(mx-mn)/16+mn)) )

         x2=mn+(mx-mn)/2;

      else x2=0;

      if((v1>=(mn-(mx-mn)/8))&& (v2<=(5*(mx-mn)/8+mn)) && (x2==0) )

         x1=mn+(mx-mn)/2;

      else x1=0;

      if((v1>=(mn+7*(mx-mn)/16))&& (v2<=(13*(mx-mn)/16+mn)) )

         x4=mn+3*(mx-mn)/4;

      else x4=0;

      if((v1>=(mn+3*(mx-mn)/8))&& (v2<=(9*(mx-mn)/8+mn))&& (x4==0) )

         x5=mx;

      else  x5=0;

      if((v1>=(mn+(mx-mn)/8))&& (v2<=(7*(mx-mn)/8+mn))&& (x1==0) && (x2==0) && (x4==0) && (x5==0) )

         x3=mn+3*(mx-mn)/4;

      else x3=0;

      if((x1+x2+x3+x4+x5) ==0 )

         x6=mx;

      else x6=0;

      finalH=x1+x2+x3+x4+x5+x6;

      if(x1>0 )

         y1=mn;

      else y1=0;

      if(x2>0 )

         y2=mn+(mx-mn)/4;

      else y2=0;

      if(x3>0 )

         y3=mn+(mx-mn)/4;

      else y3=0;

      if(x4>0 )

         y4=mn+(mx-mn)/2;

      else y4=0;

      if(x5>0 )

         y5=mn+(mx-mn)/2;

      else y5=0;

      if((finalH>0) && ((y1+y2+y3+y4+y5)==0) )

         y6=mn;

      else y6=0;

      finalL=y1+y2+y3+y4+y5+y6;

        for( i=0; i<OctLinesCnt; i++) 

        {

         mml[i]=0;

        }

      dmml=(finalH-finalL)/8;

      mml[0] =(finalL-dmml*2); //-2/8

        for( i=1; i<OctLinesCnt; i++) 

        {

         mml[i]=mml[i-1] + dmml;

        }

        for( i=0; i<OctLinesCnt; i++ )

        {

         buff_str="mml"+i;

           if(ObjectFind(buff_str)==-1) 

           {

            ObjectCreate(buff_str, OBJ_HLINE, 0, Time[0], mml[i]);

            ObjectSet(buff_str, OBJPROP_STYLE, STYLE_SOLID);

            ObjectSet(buff_str, OBJPROP_COLOR, mml_clr[i]);

            ObjectMove(buff_str, 0, Time[0],  mml[i]);

           }

           else 

           {

            ObjectMove(buff_str, 0, Time[0],  mml[i]);

           }

         buff_str="mml_txt"+i;

           if(ObjectFind(buff_str)==-1) 

           {

            ObjectCreate(buff_str, OBJ_TEXT, 0, Time[mml_shft], mml_shft);

            ObjectSetText(buff_str, ln_txt[i], 8, "Arial", mml_clr[i]);

            ObjectMove(buff_str, 0, Time[mml_shft],  mml[i]);

           }

           else 

           {

            ObjectMove(buff_str, 0, Time[mml_shft],  mml[i]);

           }

        }

      nTime   =Time[0];

      CurPeriod= Period();

     }

//----

   return(0);

  }

//+------------------------------------------------------------------+
MetaQuotes — разработчик торговых платформ для брокеров, банков, бирж и хедж-фондов
MetaQuotes — разработчик торговых платформ для брокеров, банков, бирж и хедж-фондов
  • www.metaquotes.net
Торговая платформа MetaTrader 5 - это бесплатный инструмент трейдера, позволяющий торговать на форексе и фондовых биржах
 
Ramil Sungatov #:

Это как я понял, делается так? Не помогает.

Есть ли какие-то записи в журнале экспертов после запуска индикатора?