Librerie: MultiTester - pagina 42

 

Buon pomeriggio!

È possibile modificare dallo script le date di inizio e fine del periodo di ottimizzazione impostate all'avvio dello script?


In questo caso sarebbe possibile ampliare le opzioni di ottimizzazione.


Saluti, Alexander

 
klycko #:

È possibile modificare dallo script le date di inizio e fine del periodo di ottimizzazione impostate al momento dell'esecuzione dello script?

MTTESTER::SetValue(Settings, "FromDate", TimeToString(D'2020.01.01', TIME_DATE));
MTTESTER::SetValue(Settings, "ToDate", TimeToString(TimeCurrent(), TIME_DATE));
 
fxsaber #:

Grazie!

 
Biblioteca fantastica!!!
 
fxsaber #:
È stato ricevuto un file opt in un array di byte. Quindi, è necessario inserirlo nella Cache.

Buon pomeriggio!


La domanda riguarda la procedura Run.

Non riesco a capire perché il comando: Settings[0] = Cache.TesterString(Pos);

incasina la stringa di impostazioni Impostazioni[0].

Di seguito il testo del codice e in allegato i dati del log.

Saluti, Alexander.


Run(Settings[0]); // Esecuzione dell'ottimizzazione genetica sul parametro TF

TESTERCACHE<ExpTradeSummary> Cache;

GLOC = MTTESTER::GetLastOptCache(Bytess); // Ottenere il file opt nell'array di byte Bytess

CL = Cache.Load(Bytess); // Alimenta l'array di byte Bytess nella Cache

Print(" GLOC = ",GLOC," CL = ",CL); // Scrittura e lettura della diagnosi

// ProfitNow = Cache[GetMaxProfitPos(Cache)].profit; // Profitto massimo https://www.mql5.com/ru/forum/318998/page2#comment_13846951

int NomProchMaxProfit = Cache[GetMaxProfitPos(Cache)].Pass; // Numero del passaggio con il massimo profitto

// Cache.GetInputs(IndexMaxProfitRuna,Paramas);

// prWrite2 = Cache.Save(OptFile); // Salva il risultato della corsa in un file opt in MQL5\Files

// prRead2 = Cache.Load(OptFile); // Leggere per il controllo da MQL5\Files

// Print(OptFile+" write = ",prWrite2," read = ",prRead2); // Diagnosi di scrittura e di lettura

Pos = GetMaxProfitPos(Cache);

Cache.SaveSet(Pos); // Creare un file di set del passaggio più redditizio in MQL5\Files


Print("Pos = ",Pos," NomProchMaxProfit = ",NomProchMaxProfit);

Print("Prima di Cache.TesterString(Pos) ",PrGenetic," NumPeriod=",NumPeriod,"\nControl Genetics: \n",Impostazioni[0]);


Impostazioni[0] = Cache.TesterString(Pos); // Scrive le nuove impostazioni nella stringa delle impostazioni correnti

// Nel comando precedente, la stringa Impostazioni[0] è molto brutta, anche se il valore TF=20 è impostato correttamente.

Print("Dopo Cache.TesterString(Pos) ",PrGenetic," NumPeriod=",NumPeriod,"\nControllo della genetica: \n",Impostazioni[0]);


Библиотеки: TesterCache - Что такое 0xCACA?
Библиотеки: TesterCache - Что такое 0xCACA?
  • 2019.08.31
  • Good Beer
  • www.mql5.com
Да и дальше взаимодействия с Оптимизатором нет никакого. в кеше Оптимизатора по каждому проходу хранятся все стат. Бонусом идет возможность запуска любого прохода из обновленной таблицы стандартными средствами в два щелчка
File:
kbrl69.txt  12 kb
 
klycko #:

// Nel comando precedente la riga Settings[0] è molto brutta, anche se il valore TF=20 è impostato correttamente.

Non capisco.
 
fxsaber #:
Non capisco.

Buon pomeriggio!

Il comando Settings[0] = Cache.TesterString(Pos); imposta informazioni altamente distorte in Settings[0], sebbene il valore ottimale trovato TF=20 sia impostato correttamente.

Ma la struttura stessa di Impostazioni[0] è già distrutta. Anche il bordo destro dell'intervallo per TF è stato cambiato da H1 a M12.

Nel log allegato viene stampata la riga Settings[0] prima e dopo l'esecuzione del comando di cui sopra.

Non riesco a capire perché questo comando distorce così tanto la stringa Settings[0].

 
klycko #:

Non riesco a capire perché questo comando distorce così tanto la stringa Settings[0].

Si prega di inviare il file opt a LS.

 
klycko #:

Ottimizzazione=1 modificato, anche se non dovrebbe essere modificato

Se si seleziona un GA, ma il numero di passaggi è ridotto, il Tester entra automaticamente nella modalità di ricerca completa. Per questo motivo il file opt dopo aver selezionato il GA a volte mostra che c'è stato un superamento completo. La lettura di questo valore è corretta.

 
klycko #:

Inoltre, le strutture dei dati sono state modificate per molti parametri:

Baza=46 Corretto dovrebbe essere: Baza=46||20|||1|||50|||N

Gli intervalli di parametri non ottimizzati non vengono scritti (eccezione: parametri bool) nel file opt. Di conseguenza, la modifica di tale intervallo non influisce sul generatore del nome del file opt. Qui il lavoro è corretto.

L'applicazione di tali impostazioni "ridotte" non viola gli intervalli precedentemente selezionati dei parametri di ingresso non ottimizzabili.