Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 1012

 

Ditemi se questo ha senso:

IndicatorSetInteger(INDICATOR_DIGITS,_Digits+1)
 
Сергей Таболин:

Ditemi se questo ha senso:

È come discutere sui gusti dei pennarelli.

 

Potete dirmi se il ridimensionamento di un array dinamico utilizzando la funzione ArrayResize non dovrebbe diminuire la quantità di memoria utilizzata dall'EA? ( Lo controllo usando la funzione MQLInfoInteger(MQL_MEMORY_USED)

Ecco il codice:

Print("Первый ArrayResize вернул ",ArrayResize( TickTemp, 1000000, 0 ));
Print("Размер массива после ПЕРВОГО ArrayResize ",ArraySize( TickTemp ),"  Используем памяти. ",MQLInfoInteger(MQL_MEMORY_USED));
    
Print("Второй ArrayResize вернул ",ArrayResize( TickTemp, 500000, 0 ));
Print("Размер массива после ВТОРОГО ArrayResize ",ArraySize( TickTemp ),"  Используем памяти. ",MQLInfoInteger(MQL_MEMORY_USED));

Ecco il risultato:

Первый ArrayResize вернул 1000000
Размер массива после ПЕРВОГО ArrayResize 1000000  Используем памяти. 58

Второй ArrayResize вернул 500000
Размер массива после ВТОРОГО ArrayResize 500000  Используем памяти. 58

Francamente parlando, il risultato è un po' inaspettato per me. Mi aspettavo che il programma usasse due volte meno memoria nel secondo caso.

 
È possibile applicare il proprio modello di visualizzazione nel tester? Non un modello con il nome dell'esperto, ma uno predefinito.
 
Сергей Таболин:
È possibile applicare il proprio modello di visualizzazione nel tester? Non un modello con il nome dell'esperto, ma di default.

Aprire un nuovo orario. Disegna qualcosa su di esso. Cliccate con il tasto destro del mouse sul grafico risultante - Save template ... -> tester.tpl

Ora il test visivo verrà eseguito con il modello che hai creato.

 
Vladimir Karputov:

Aprire un nuovo orario. Disegna qualcosa su di esso. Cliccate con il tasto destro del mouse sul grafico risultante - Save template ... -> tester.tpl

Ora il test visivo verrà eseguito con il modello che hai creato.

Grazie mille.

 
Un'altra domanda. Come posso controllare programmaticamente un indicatore personalizzato senza usare iCustom? Come FileIsExist.
 
Сергей Таболин:
Un'altra domanda. Come posso controllare programmaticamente un indicatore personalizzato senza usare iCustom? Come FileIsExist.

Richiedi il numero totale di indicatori sul grafico e cerca nel ciclo per nome breve dell'indicatore.

 
Alexey Viktorov:

Interroga il numero totale di indicatori sul grafico e cerca nel ciclo il nome dell'indicatore breve.

Chiarimento. Non sul grafico, ma in generale. Per sapere se l'indicatore è nel "set". Nella cartella degli indicatori.

Qui, per esempio, ho il mio indicatore A che usa un altro indicatore personalizzato B. Se A non ottiene l'handle di B quando lo avvio, A non partirà.

Ma se avvio un gufo usando A, allora A non parte e il gufo non si chiude nonostante:

   handle_A = iCustom(Symbol(),0,"my_used\\my_A7C");
   if(handle_A == INVALID_HANDLE)                                   // проверяем наличие хендла индикатора
   {
      Print("Не удалось получить хендл индикатора handle_A");       // если хендл не получен, то выводим сообщение в лог об ошибке
      return(INIT_FAILED);                                          // завершаем работу с ошибкой
   }
   else
   {
      Print("Получен хендл индикатора handle_A");
      ChartIndicatorAdd(ChartID(),0,handle_A);                      // подключаем индикатор к графику
   }
 
Сергей Таболин:

Chiarimento. Non sul grafico, ma in generale. Per sapere se l'indicatore è nel "set". Nella cartella degli indicatori.

Puoi anche chiarire a cosa serve questo?