Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 1045

 
Igemon:
Cosa c'è che non va? Non ho inserito il resto del codice perché lì è tutto a posto. Il ciclo è necessario per non dipendere dai tick, quando si definiscono gli eventi, per non riavviare il PC è dormire a 100mlsec

OnTimer() e OnChartEvent() non ti dicono niente, bene... scusa, Ygemon...

E come pensi di fermare il ciclo?

 
artmedia70:


Come pensi di fermare il ciclo?

Perché fermarlo? Sul computer, tieni premuto il pulsante per 4 secondi e si ferma...
 
AlexeyVik:
Perché fermarlo? Su un computer, si tiene il pulsante per 4 secondi e si ferma...
Puoi anche versarci sopra dell'acqua...
 
Ciao, potresti per favore dirmi quale funzione può restituire una cifra specifica dopo il punto decimale per i numeri frazionari, ad esempio il prezzo è 1,54321, ho bisogno che la funzione restituisca l'ultima cifra, o qualsiasi altro punto decimale?
 
Rogoza:
Ciao, Potresti per favore dirmi quale funzione può restituire una particolare cifra dopo il punto decimale per un numero frazionario, ad esempio il prezzo è 1.54321, ho bisogno che la funzione restituisca l'ultima cifra, o qualsiasi altra dopo il punto decimale?

1. Potete tradurre in una stringa, prendere un carattere per numero di posizione e tradurre di nuovo in un numero.

2. Moltiplicare per 10 alla potenza richiesta, scartare la parte frazionaria e ottenere il resto della divisione per 10

int result = int(1.54321 * 100000) % 10;
 
artmedia70:

OnTimer() e OnChartEvent() vi dicono qualcosa?

E come pensi di fermare il ciclo?

Non ho familiarità con queste funzioni... mi informerò su di esse.

Il ciclo è fatto in modo che Expert Advisor non dipenda dai tick. Non c'è bisogno di fermarlo: se voglio fermare il robot, lo spengo semplicemente.

 

Buon pomeriggio.

Come determinare il numero di elementi in un array di serie temporali, per esempio in iClose.

La funzione iBars restituisce il valore 2048, cioè non è il numero totale di barre nello strumento per il dato timeframe, ma le barre che rientrano nella finestra del grafico...

Grazie.

 
AlexeyVik:

1. Potete tradurre in una stringa, prendere un carattere per numero di posizione e tradurre di nuovo in un numero.

2. Moltiplicare per 10 alla potenza richiesta, scartare la parte frazionaria e ottenere il resto della divisione per 10

Grazie mille!
 

Ciao a tutti. Sto ottimizzando un EA utilizzando il tester di strategia integrato in MT4 con la funzione "algoritmo genetico". 1280 passaggi in 36 ore. Ho cercato su Internet e mi sono imbattuto in un articolo che descrive come salvare tutti i passaggi calcolati durante l'ottimizzazione a riposo normale in un file di cache. Ma ero preoccupato che dopo aver ripreso l'ottimizzazione, a giudicare dalla barra di stato, l'ottimizzazione non continua dalla corsa in cui l'ottimizzazione è stata fermata come descritto nell'articolo. In totale ho eseguito tutte le 30 ore e il file di cache sta crescendo in dimensione, ma ogni volta che avvio l'ottimizzazione vedo le stesse 36-40 ore e 1/1280 di stato di passaggio.

Allo stesso tempo c'è una registrazione nei registri.

2016.05.16 11:55:47.103 Tester: cache file "C:\Users\*****\AppData\Roaming\MetaQuotes\Terminal\1FC724C8C211BFE8ECF8B599A855301E\tester\caches\Ilan Dynamic New.EURUSD15.0" found and can be used for further optimization

Inoltre di tanto in tanto appaiono nei log la voce successiva, il che significa che nella cache è stata trovata una corrispondenza che sarà presa in considerazione nei risultati. Ma questi casi sono molto pochi, nonostante il fatto che in una cache dovrebbero essere già scritti tutti i passaggi possibili.

2016.05.17 09:21:18.547 Optimization cacher: pass 11450 skipped due test limit 'maximal drawdown %=50' reached with inputs: risk=0.55; MaxTrades=15; LotExponent=1.55; LockLotExponent=1.6; 

Domanda: Come ottenere l'ottimizzazione per continuare dall'ultimo arresto (passaggio) dopo un arresto e un riavvio di routine. Naturalmente, non ho cambiato le impostazioni di ottimizzazione o il periodo di test in alcun modo. Ho premuto "Stop"; la cache è stata sovrascritta; ho chiuso il terminale; ho spento il computer; l'ho riavviato; ho avviato il terminale; ho avviato le ultime impostazioni di ottimizzazione (che vengono salvate automaticamente) usando il pulsante "Start".

Citazione dall'articolo:

При генетической оптимизации промежуточные результаты сохраняются в кэше после расчета каждого поколения (файл папка_данных_платформы/tester/cache/*.gen). Таким образом, процесс генетической оптимизации можно прерывать в любой момент. Даже если процесс генетической оптимизации будет прерван из-за внешних причин (например, отключения электричества), оптимизация будет автоматически продолжена с последнего рассчитанного поколения при последующем запуске. Кэш генетической оптимизации хранится до изменения настроек оптимизации или до завершения процесса оптимизации.

Quando l'ottimizzazione viene fermata normalmente (con il pulsante "Stop"), tutti i passaggi calcolati in precedenza vengono salvati. Quando l'ottimizzazione viene ripresa, il processo continuerà da dove è stato interrotto.

Fonte: https://www.metatrader5.com/ru/terminal/help/strategy_optimization

 

come spostareFileMove() dalla cartella Alpari Limited MT4\tester\files a Alpari Limited MT4\MQL4\Files\ ??????????? è possibile ????????

o come faccio a leggere il file da Alpari Limited MT4\tester\files ?????????? - non funziona perché vuole mangiare da Alpari Limited MT4\MQL4\Files\.