Librerie: MultiTester - pagina 56

 

A volte è necessario visualizzare una parte della storia dei prezzi sotto forma di tabella. Ciò può essere fatto con CTRL+U, selezionando la scheda Barre/Ticks. Inserire a mano l'intervallo necessario. È noioso.


Per questo motivo ho creato una funzionalità aggiuntiva, dimostrata dal seguente Expert Advisor.

#include <fxsaber\MultiTester\MTTester.mqh> // https://www.mql5.com/it/code/26132
#include <fxsaber\Keyboard\Keyboard.mqh> // https://www.mql5.com/it/code/48393

input bool inTicks = true; // true - Ticks, false - Bars
input int inBefore = -60; // Prima in secondi
input int inAfter = 60;   // Dopo in secondi
input ENUM_TIMEFRAMES inPeriod = PERIOD_CURRENT; // Periodo (modalità Bars)

datetime GetTime( const int X )
{
  int Window;
  datetime Res;
  double Price;
    
  return(ChartXYToTimePrice(0, X, 0, Window, Res, Price) ? Res : 0);
}

void OnChartEvent( const int32_t id, const long &lparam, const double&, const string& )
{
  if ((id == CHARTEVENT_CLICK) && KEYBOARD::IsControl())
  {
    const datetime Time = GetTime((int)lparam);

    if (Time)
    {
      if (inTicks)
        MTTESTER::CopyTicks(_Symbol, Time + inBefore, Time + inAfter);
      else
        MTTESTER::CopyRates(_Symbol, inPeriod, Time + inBefore, Time + inAfter);      
    }    
  }
}


Facendo clic (con CTRL premuto) sul punto necessario del grafico, si ottengono automaticamente i dati tabellari corrispondenti.

Le funzioni selezionate compilano semplicemente alcuni campi di dati e li interrogano. Poi, attraverso l'interfaccia grafica, si vede ciò che interessa. Automazione, in generale.

 
Forse l'idea di scrivere uno strumento EA che combini varie funzioni pratiche sarebbe una buona idea.
 

5430 Le finestre continuano a lampeggiare quando si prepara un'attività.

Come si può risolvere questo problema?

 
Aleksei Skrypnev #:

5430 Windows continua a lampeggiare durante la preparazione di un compito.

Come si può risolvere questo problema?

In questo modo.
Попробуйте загрузить все файлы в архиве.
Попробуйте загрузить все файлы в архиве.
  • 2025.12.22
  • www.mql5.com
если бы время файлов в архиве совпадало со временем модификации в кодобазе. Не соответствует времени изменения конкретного файла. Я вижу корректную структуру после разархивирования а ведь сам редактор позволяет загрузить все эти файлы именно так
 
fxsaber #:
Così.

È un grande tema. Ma ho scaricato prima di tutto separatamente ancora lampeggia.

Ho visto che nel file MultiTester_Example.mq5

aggiunto linee al file MultiTester_Example.mq5.

#define  FAKE // Rimuovere - bypassare per inserire il codice nella KB.

#ifdef  FAKE
  void OnStart() {}
#else // #ifdef FAKE
#endif // #ifdef FAKE #else

Ho commentato così o devo farlo in modo diverso? Oppure posso eliminare tutte queste 4 righe?

//#define FAKE // Rimuovere - bypassare per inserire il codice nella KB.

#ifdef FAKE// void OnStart() {}

#else // #ifdef FAKE

#endif // #ifdef FAKE #else


P.S. Ho visto che ho preso il vecchio elenco di attività senza queste linee e sfarfallava. Con le nuove righe non sfarfalla.

Ma ho commentato correttamente solo 1 riga?

 
Aleksei Skrypnev #:

È un grande tema. Ma ho scaricato prima che tutto separatamente ancora lampeggia.

Ho visto che nel file MultiTester_Example.mq5

sono state aggiunte le righe

Ho commentato in questo modo o devo farlo in modo diverso? Oppure posso eliminare tutte queste 4 righe in generale?


P.S. Ho visto che ho preso la vecchia task list senza queste righe e lampeggiava. Con le nuove righe non lampeggia.

Ma ho commentato correttamente solo 1 riga?

La tua comprensione è corretta: rimuovi i commenti o elimina completamente queste 4 righe.