Librerie: MultiTester - pagina 29

 
pcdeni #:

quindi, no.

 
Gestire il LiveUpdate del terminale.
// Commutazione dello stato LiveUpdate del terminale.

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

void OnStart()
{
  const bool IsLiveUpdate = MTTESTER::IsTerminalLiveUpdate();
                     
  if (MessageBox("Current LiveUpdate - " + (IsLiveUpdate ? "ON" : "OFF") + ".\n\nWant to switch?",
                 "LiveUpdate Status", MB_YESNO) == IDYES)
   MessageBox("Current LiveUpdate - " + ((IsLiveUpdate ? !MTTESTER::TerminalLiveUpdateOFF() : MTTESTER::TerminalLiveUpdateON()) ? "ON." : "OFF."));
}
 
fxsaber #:
Gestione del terminale LiveUpdate.
Grazie!
 
Abilita/disabilita la scrittura su disco dei registri durante l'ottimizzazione.
// // Abilita/disabilita i log del tester (ottimizzazione).
#include <fxsaber\MultiTester\MTTester.mqh> // https://www.mql5.com/it/code/26132

#define  INPUT_TESTER_LOG inTesterLog
#define  TOSTRING(A) #A

sinput bool INPUT_TESTER_LOG = true; // Abilita/disabilita i log del tester

void OnTesterInit()
{
  string Settings;
  
  if (MTTESTER::GetSettings(Settings))  
    MessageBox("TesterLog - " + (((MTTESTER::GetValue(Settings, TOSTRING(INPUT_TESTER_LOG)) == "true")
                                   ? MTTESTER::TesterLogON(true)
                                   : !MTTESTER::TesterLogOFF(true)) ? "ON." : "OFF."));
  
  ChartClose();
}

void OnTesterDeinit() {}

input int inRange = 0;


Abilita.


Disattiva (velocizza l'ottimizzazione).


S

Forum sul trading, sui sistemi di trading automatico e sul test delle strategie di trading

Errori, bug, domande

fxsaber, 2022.09.04 17:55

#property script_show_inputs

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

sinput bool inTesterLog = true; // Abilita/disabilita i log del tester

void OnStart()
{
  MessageBox("TesterLog - " + ((inTesterLog ? MTTESTER::TesterLogON(true) : !MTTESTER::TesterLogOFF(true)) ? "ON." : "OFF."));
}
 
Aggiunto a MTTester.mqh un workaround per possibili conflitti quando si lavora con tester paralleli.
Несколько MT5-тестеров параллельно на одной машине.
Несколько MT5-тестеров параллельно на одной машине.
  • www.mql5.com
Автоматизация MT5-Тестера потребовала параллельного использования нескольких Тестеров на одной машине: оптимизация ( MultiTester ) и одиночные проходы ( Validate и TesterDashboard ). Необходимость
 

fxsaber #:
В MTTester.mqh добавлен обход возможных конфликтов при работе с параллельными Тестерами.

Si noti l'indirizzo evidenziato di ciascun agente nella schermata: 127.0.0.1:30xx. Non si sovrappongono. Cioè, ogni core della CPU è occupato dal proprio agente. MT5 alloca gli agenti nel modo corretto.

Domanda sulla frase del blog. Non sono sicuro che l'allocazione automatica dei processi in base al numero di porta garantisca che essi siano distribuiti su diversi core senza potenziali sovrapposizioni. Quanti core ci sono nella schermata di cui sopra? E per esempio, cosa succede se si eseguono 2 ottimizzazioni in parallelo?

 
Stanislav Korotky #:

Domanda su una frase del blog. Non sono sicuro che il partizionamento automatico dei processi in base al numero di porta garantisca la distribuzione dei processi su diversi core senza potenziali sovrapposizioni. Quanti core ci sono nella schermata qui sopra? E, ad esempio, cosa succede se si eseguono 2 ottimizzazioni in parallelo?

Nella schermata sono presenti 20 core: 18 per l'ottimizzazione su un terminale e uno per i singoli passaggi su un altro terminale. TaskManager mostra che 19 core su 20 sono completamente carichi (5% ciascuno). Libero ~4%.

Non ho praticato l'ottimizzazione in parallelo. Per ora non è necessario.

 
fxsaber #:

Ci sono 20 core sullo schermo: 18 per l'ottimizzazione su un terminale e uno per i singoli passaggi su un altro terminale. TaskManager mostra che 19 core su 20 sono completamente carichi (5% ciascuno). Libero ~4%.

Grazie. Per quanto ho capito, si tratta solo di "parallelizzazione" dell'accesso ai file, e le impostazioni dei core per gli agenti devono ancora essere fatte manualmente?

 
Stanislav Korotky #:

Grazie. Per quanto ho capito, si tratta solo di "parallelizzazione" dell'accesso ai file,

accesso agli appunti di sistema. Non riguarda i file.

Devo ancora eseguire le impostazioni del kernel agent a mano?

Non faccio nulla.

 
fxsaber #:

Accesso alla clipboard di sistema. I file non sono coinvolti.

Non sto facendo nulla.

Nelle modifiche al codice sorgente non ho visto che è stato fatto qualcosa con gli appunti.

Se si esegue l'ottimizzazione, non vengono utilizzati tutti i core disponibili in una volta sola? Non capisco come un singolo test abbia "tolto" un core all'ottimizzazione (infatti, anche 2 agenti di MT ottimizzanti sono contrassegnati come disabilitati).