Errori, bug, domande - pagina 1813

 
Sergey Dzyublik:
È necessario cancellare i cookie per www.mql5.com.
Può dirmi come?
 
Sergey Dzyublik:

Su chrome 56.0.2924.87 il volo va bene, sia con che senza refresh manuale della pagina di revisione.

Non appare"lamentati|rispondi" sulla tua pagina? Non posso modificare o cancellare le mie recensioni.
 
fxsaber:
Può dirmi come?
Google vi aiuterà.

Ma in Chrome si può fare così:
Premi F12 su www.mql5.com => nel dashboard vai su Applicazione => Cookie => clicca su cookie => Cancella tutto da...
 
Sergey Dzyublik:
Google aiuta.

Ma in Chrome si può fare così:
Premi F12 mentre navighi su www.mql5.com => nel dashboard vai alla scheda Applicazione => Cookie => PCM sui cookie => Cancella tutto da...

Non ce n'è uno.

 
Sergei Vladimirov:

Sta giocando. Scritto il tuo codice nello script, ha dato il valore corretto (1001199) quando viene eseguito in modalità debug, ma se compilo la release e la eseguo dall'albero in MT5, dà 11199 in modo stabile. È stato in grado di localizzare.

Questo è davvero un bug del compilatore, scrivi a servicedesk.

Grazie, scrivi al Service Desk.
 
fxsaber:

Non ce n'è uno.

Vedere l'immagine. Versione 56.0.2924.87
File:
Ch.jpg  187 kb
 

Si prega di avvisare

MT4 ha iniziato a pesare 1,8 Gbyte (RAM). Si è mangiato tutto l'UPU, il secondo terminale non può essere acceso correttamente. Qualche suggerimento su come "pulire" la RAM da MT?

 
Ivan Butko:

Si prega di avvisare

MT4 ha iniziato a pesare 1,8 Gbyte (RAM). Si è mangiato tutto l'UPU, il secondo terminale non può essere acceso correttamente. Qualche suggerimento su come "pulire" la RAM da MT?

Hai provato a riavviare il terminale?

La memoria si libera se riduco il numero di barre sul grafico, ma dopo devo riavviare.

 
-Aleks-:

Hai provato a riavviare il terminale?

La memoria si libera se si riduce il numero di barre sul grafico, ma in quel caso è necessario riavviare.

L'ho provato prima, è durato una settimana, ora di nuovo. Rimosso le barre al minimo (era al massimo), proverò questo, grazie
 

Errore nella determinazione del tipo di parametro indicatore ENUM_DATATYPE.

Sto eseguendo un indicatore di prova. Nei parametri di input ogni parametro ha un tipo unico:

#property indicator_chart_window
#property indicator_plots 0
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
input bool inpBool = false;    //1
input char inpChar = 0;        //2
input uchar inpUChar = 0;      //3
input short inpShort = 0;      //4
input ushort inpUShort=0;      //5
input color inpColor=clrWhite; //6
input int inpInt=0;            //7
input uint inpUInt=0;          //8
input datetime inpDatetime=0;  //9
input long inpLong=0;          //10
input ulong inpULong = 0;      //11
input float inpFloat = 0.0;    //12
input double inpDouble = 0.0;  //13
input string inpString = "";   //14
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
   IndicatorSetString(INDICATOR_SHORTNAME,"DATATYPE");
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
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[])
  {

   return(rates_total);
  }
//+------------------------------------------------------------------+

Poi, lo cerco attraverso lo script e faccio la disattivazione del suo tipo di parametri:

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- Проверяем количество аналогичных индикаторов на всех открытых окнах
   long id=ChartFirst();
   int indicatorsTotal=0;
   int windowsTotal=0;
//---
   int ctr=0;
//---
   do
     {
      windowsTotal=(int)ChartGetInteger(id,CHART_WINDOWS_TOTAL);
      for(int i=0; i<windowsTotal; i++)
        {
         indicatorsTotal=ChartIndicatorsTotal(id,i);
         for(int j=0; j<indicatorsTotal; j++)
           {
            //Print( __FUNCTION__,": Имя индикатора: "+ChartIndicatorName( id, i, j ) );
            //---
            string shortName=ChartIndicatorName(id,i,j);
            if(StringFind(shortName,"DATATYPE")<0)
               continue;
            else
              {
               //--- получим хэндл индикатора
               int handle=ChartIndicatorGet(id,i,shortName);
               //---
               if(handle==INVALID_HANDLE) // Если хэндл не получен
                 {
                  Print(__FUNCTION__,": ОШИБКА #",GetLastError(),": хэндл индикатора "+shortName+" не получен!");
                  return;                                 // Ошибка! Переходим к следующему индикатору
                 }
               //--- Получаем параметры индикатора
               MqlParam parameters[];                            // Массив-приемник параметров
               ENUM_INDICATOR indicator_type;                      // Тип индикатора
               //--- Получение..
               int params=IndicatorParameters(handle,indicator_type,parameters);
               //---
               for(int p=1; p<params; p++)
                  Print(__FUNCTION__,": p#",p,": type = ",EnumToString(parameters[p].type));
              }
           }
        }
     }
   while(( id=ChartNext(id))>=0);
  }

Nell'output ottengo:

2017.02.20 09:08:58.144 test_DATATYPE (BR-3.17,M1)      OnStart: p#1: type = TYPE_BOOL
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#2: type = TYPE_CHAR
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#3: type = TYPE_UCHAR
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#4: type = TYPE_SHORT
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#5: type = TYPE_USHORT
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#6: type = TYPE_UINT
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#7: type = TYPE_INT
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#8: type = TYPE_UINT
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#9: type = TYPE_LONG
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#10: type = TYPE_LONG
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#11: type = TYPE_ULONG
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#12: type = TYPE_DOUBLE
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#13: type = TYPE_DOUBLE
2017.02.20 09:08:58.147 test_DATATYPE (BR-3.17,M1)      OnStart: p#14: type = TYPE_STRING

Posso vedere che invece del tipo TYPE_COLOR(#6) mostra il tipo TYPE_UINT, invece del tipo TYPE_DATETIME (#9) mostra il tipo TYPE_LONG, invece del tipo TYPE_FLOAT (#12) mostra il tipo TYPE_DOUBLE. Anche se i tipi TYPE_COLOR, TYPE_DATETIME e TYPE_FLOAT sono descritti nell'enumerazione e dovrebbero avere i loro propri valori!

Servicedesk#1677120
Motivazione: