Errors, bugs, questions - page 581

 
Vict:
Of course I could do VPS or some other twisted thing, the Quad has already set a pretty high level, and if I move to something no worse (because I could do it all easier there). And then, in my opinion, the platform should be the trader's friend, it's his "machine", and now one has to think how to get around it.
I haven't met brokers who use MT4 and are going to give it up. Have you?
 
Interesting:
I haven't met any brokers who use MT4 and are going to give it up. Have you?
I'm closer to fours.
 
papaklass:
I've tried this, but for some reason it doesn't work for more than one month. The testing stops and the agent is unloaded.

This is already a cause for investigation by the Service Desk.

Could you please send your expert with a detailed explanation of how and what you are doing step by step so that we can reproduce the problem? After researching, the expert sent will be irretrievably wiped out.

 
papaklass:
... If they also made a tab in the 'windows' menu so that the graphs could be arranged cascodically. It would be even more convenient.
Yes, it would be a useful addition. What's missing is the ability to view more than one graph at a time.
 
papaklass:
False alarm. I had a fault. Haven't used the visualiser for a long time. Didn't put the indicator in the expert correctly. It's fine now. I just checked.
The thing is, we have visualizer crashes due to indicators (apparently also incorrectly enabled). We have not been able to reproduce these crashes in our place, but we would really like to get to the bottom of it
 
papaklass:
If they also made a tab in the 'windows' menu so that the graphs could be arranged cascodically. It would be even more convenient.
Unfortunately, this is not going to happen. The architecture of the one-document application does not allow
 
papaklass:
I mean, should I still send an expert AND make the agent unload?
Yes, please, if you can.
 
papaklass:
Shall I send it to the servicedeck?
Yes. It'll be quicker to disassemble
 

Below is a script which should output the labels for the selected character, regardless of which character it is thrown on. However, it only outputs the labels when thrown on the same character. Plz need a nudge.

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   datetime LeftTime ,RighTime ;
   double   LeftPrice,RighPrice ;
   MqlRates price[];
   CopyRates(Symbol(),0,0,10,price);
   ArraySetAsSeries(price,true);
   LeftTime=price[9].time ;
   LeftPrice=price[9].open ;
   RighTime=price[0].time ;
   RighPrice=price[0].open ;
   Visual_v("EURUSD",LeftPrice,LeftTime,OBJ_ARROW_LEFT_PRICE,clrBlue) ;
   Visual_v("EURUSD",RighPrice,RighTime,OBJ_ARROW_RIGHT_PRICE,clrBlue,LeftPrice,LeftTime);
  }
//+------------------------------------------------------------------+
void  Visual_v(string InstrVis,double price_vis,datetime time_vis,int kodmet_vis,color color_vis,double BegLeftPrice=0,datetime BegLeftTime=0)
   {//InstrVis инструмент на котором рисуются метки
   // price_vis  цена на которой будет установлена метка 
    //  time_vis   время цены открытия бара на котором будет установлена метка
    //  kodmet_vis код метки если код==SYMBOL_RIGHTPRICE то позиция закрывается необходимо прорисовать
    //  траекторию движения позиции в виде линии от цены открытия 
    //  BegLeftPrice цена от которой будет рисоваться линия 
    // BegLeftTime время от которой будет рисоваться линия 
    static int CntMet=0 ;
    long currChart,prevChart=ChartFirst();
    int   i ;
    bool PresentChart=false ;
    if(ChartSymbol(prevChart) == InstrVis) { PresentChart=true; currChart=prevChart;}// первый открытый график с нашим символом 
    else
      {//перебираем все открытые графики
         for(i=0;i<100;i++)
         {  
            currChart=ChartNext(prevChart); // на основании предыдущего получим новый график
            if(currChart<0) break;          // достигли конца списка графиков
            if(ChartSymbol(currChart) == InstrVis)
               {//нашли график с нашим символом 
                  PresentChart=true ; break ;
               }
            prevChart=currChart ;// выбираем следующий график 
            //Print(limit," Номер ","  Финансовый инструмент ",ChartSymbol(currChart)," ID =",currChart);
         }
      }  // нет окрытого графика с нашим символом некуда ставить метку    
    if(!PresentChart){ Print(" Нет открытого графика с указанным инструментом ") ; return ;}
    string NameMet ;
    NameMet="Metka"+IntegerToString(CntMet);
    switch(kodmet_vis)
      {
       case 29 :// код левой ценовой метки
         NameMet="Metka"+IntegerToString(CntMet);//имя ценовой метки
         if (!ObjectCreate(currChart,NameMet,OBJ_ARROW_LEFT_PRICE,0,time_vis,price_vis));//создаем обьект метка
            { Print(" Ошибка создания обьекта ",GetLastError());
            }
         ObjectSetInteger(currChart,NameMet,OBJPROP_COLOR,color_vis);//рисуем метку выбранного цвета 
         CntMet++ ;
         break;
       case 30://код правой ценовой метки 
         NameMet="Metka"+IntegerToString(CntMet);//имя ценовой метки
         ObjectCreate(currChart,NameMet,OBJ_ARROW_RIGHT_PRICE,0,time_vis,price_vis);//создаем обьект метка
         ObjectSetInteger(currChart,NameMet,OBJPROP_COLOR,color_vis);//рисуем метку выбранного цвета 
         CntMet++ ;
         NameMet="Metka"+IntegerToString(CntMet);//имя линии траектория позиции
         ObjectCreate(currChart,NameMet,OBJ_TREND,0,time_vis,price_vis,BegLeftTime,BegLeftPrice);//создаем обьект линия 
         CntMet++ ;
          break;
       default:
         break;
      }
   }
 
ivandurak:

Below is a script which should output the labels for the selected character, regardless of which character it is thrown on. However, it only outputs the labels when thrown on the same character. Plz need a nudge .


Objects are created (present in object list). The question is probably the coordinates you want them to appear on.