MetaEditor build 1463 - pagina 15

 
fxsaber:
ArrayPrint - simile.
Ecco un esempio https://www.mql5.com/ru/forum/160673/page2#comment_3827986
MetaEditor build 1467
MetaEditor build 1467
  • www.mql5.com
Объясните, почему вот этот текст, отформатированный исключительно пробелами, нет ни одного -tab-,: после применения стилизатора, преобразуется в та...
 
Rashid Umarov:
Ecco un esempio https://www.mql5.com/ru/forum/160673/page2#comment_3827986

Questo non è diverso da quello che lei stesso ha scritto sopra.

ArrayPrint ha però molti più parametri di input. L'ultimo parametro flags è interessante.

 

In generale, per quanto riguarda il tester riattacca. Sono stato in grado di identificare diverse funzioni che lo causano. Il più comune è Commento.

Qui provate ad eseguire un tale indicatore nel tester:

#property indicator_separate_window

int OnCalculate(const int rates_total, const int prev_calculated, const int begin, const double &price[])
  {
   Comment("OnCalculate");
   return rates_total;
  }

La velocità non è proprio il massimo, così che il test richiede un po' di tempo, nel processo del quale si blocca. Vero, non sempre - non capisco da cosa dipenda, se dai movimenti del mouse o da qualcos'altro. In generale, potete fare qualche prova, dovrebbe bloccarsi.

 
La funzione ArrayPrint sarà disponibile sul sito web stasera
 
Alexey Navoykov:

In generale, per quanto riguarda il tester riattacca. Sono stato in grado di identificare diverse funzioni che lo causano. Il più comune è Commento.

Qui provate ad eseguire un tale indicatore nel tester:

#property indicator_separate_window

int OnCalculate(const int rates_total, const int prev_calculated, const int begin, const double &price[])
  {
   Comment("OnCalculate");
   return rates_total;
  }

La velocità non è proprio il massimo, così che il test richiede un po' di tempo, nel processo del quale si blocca. Vero, non sempre - non capisco da cosa dipenda, se dai movimenti del mouse o da qualcos'altro. In generale si può testare più volte, dovrebbe bloccarsi.

Con tre velocità di prova:

  • massimo
  • massimo meno un passo
  • massimo meno due passi
La visualizzazione della scheda del giornale di bordo nel tester si blocca, perché si ritiene che a queste velocità, l'uscita delle stampe sarà molto lenta, ed è anche semplicemente irrealistico tenere traccia delle informazioni sulle aperture/chiusure.

In generale, fornite prove più precise di quello che è il vostro "congelamento del tester".

Aggiunto: e descrivere più precisamente la situazione: versione, build, server, simbolo, tempo, modalità di test...

Aggiunto: merda, il mio editore e il mio tester si sono bloccati. La modalità di generazione delle zecche era "Tutte le zecche".

 
Alexey Navoykov:

In generale, per quanto riguarda il tester riattacca. Sono stato in grado di identificare diverse funzioni che lo causano. Il più comune è Commento.

Qui provate ad eseguire un tale indicatore nel tester:

#property indicator_separate_window

int OnCalculate(const int rates_total, const int prev_calculated, const int begin, const double &price[])
  {
   Comment("OnCalculate");
   return rates_total;
  }

La velocità non è proprio il massimo, così che il test richiede un po' di tempo, nel processo del quale si blocca. Vero, non sempre - non capisco da cosa dipenda, se dai movimenti del mouse o da qualcos'altro. In generale si può testare più volte, dovrebbe bloccarsi.

E cosa c'è qui:

   return rates_total;

?

 

Infatti:

//+------------------------------------------------------------------+
//|                                               Indicator_Test.mq5 |
//|                                      Copyright 2012, CompanyName |
//|                                       http://www.companyname.net |
//+------------------------------------------------------------------+
#property indicator_separate_window
#property indicator_plots 0
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int OnCalculate (const int rates_total,      // размер массива price[]
                 const int prev_calculated,  // обработано баров на предыдущем вызове
                 const int begin,            // откуда начинаются значимые данные
                 const double& price[]       // массив для расчета
                 )
  {
   Comment("OnCalculate");
   return (rates_total);
  }

Test alla massima velocità, modalità di generazione di tick "All ticks" - il tester si blocca. Impiccagione significa quanto segue:

Appendere

Se si commenta la linea di commento, tutto viene testato.

File:
 
Vladimir Karputov:

Test alla massima velocità, modalità di generazione di tick "All ticks" - il tester si blocca.

Non dipende dalla velocità, dalla modalità o dal tempo. Può bloccarsi in ogni caso.

A proposito, alcune altre funzioni, per esempio ChartGetInteger(0, CHART_WIDTH_IN_BARS) portano anche a blocchi nel mio programma. Ma non posso riprodurre un esempio isolato con loro. Tuttavia, penso che Comment sarà sufficiente.

 

Che cos'è questo?

HistoryCenter   delete old files from C:\Program Files\BCS Broker MetaTrader 5 Terminal\bases\FxPro-ECN\history\EURUSD, last access time 2016.04.12 10:37
HistoryCenter   delete old files from C:\Program Files\BCS Broker MetaTrader 5 Terminal\bases\FxPro-ECN\history\GBPUSD, last access time 2016.04.12 10:37
HistoryCenter   delete old files from C:\Program Files\BCS Broker MetaTrader 5 Terminal\bases\FxPro-ECN\history\USDCHF, last access time 2016.04.12 10:37
HistoryCenter   delete old files from C:\Program Files\BCS Broker MetaTrader 5 Terminal\bases\FxPro-ECN\history\USDJPY, last access time 2016.04.12 10:37
 
fxsaber:
Si prega di cambiare MqlTick in
struct MqlTick
  {
   datetime     time;          // Время последнего обновления цен
   double       bid;           // Текущая цена Bid
   double       ask;           // Текущая цена Ask
   double       last;          // Текущая цена последней сделки (Last)
   ulong        volume;        // Объем для текущей цены Last
   datetime_msc time_msc;      // Время последнего обновления цен в миллисекундах
   uint         flags          // Флаги тиков
  };
Cioè introdurre un nuovo tipo datetime_msc.
Sarebbe meglio fare solo il campo msc e scriverci separatamente i millisecondi (0-999).