Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
La proprietà #property tester_file ha lo scopo preciso di evitare di mettere qualcosa da qualche parte a mano .
file tester
stringa
Nome del file per il tester, specificando la sua estensione e racchiuso tra doppi apici (come una stringa costante). Il file specificato verrà passato al tester per il lavoro. I file di input per i test, se necessario, dovrebbero sempre essere specificati
Se qualche file datafile .csv è richiesto per il funzionamento del programma, e si trova in terminal_directory\MQL5\Files, il file verrà automaticamente spostato dal tester intesting_agent_directory\MQL5\Files (questo è ciò per cui deve essere specificata la #property tester_file datafile.csv).
Lo stesso vale quando un file di prova si trova nella cartella comune del terminale?
Se aggiungo la linea:
#property tester_file "Test.txt"
...ottengo un errore come questo:
//---
Voglio trasferire un file nel cloud da una cartella condivisa del terminale. Come si fa?
Lo stesso vale quando il file di prova è nella cartella condivisa del terminale?
Se aggiungo la linea
...ottengo un errore come questo:
//---
Voglio trasferire un file nel cloud da una cartella condivisa del terminale. Come si fa?
Credo che questo sia già stato discusso e si è scoperto che, per il momento, i file non possono essere trasferiti nel cloud.
Serve un link a una discussione su questo tema, allora. Dove è stato discusso questo?
Io stesso mi baso su alcune discussioni passate e sull'articolo: MQL5 Cloud Network accelera i calcoli, ma qualcosa non funziona.
Si preme il pulsante "Start" e il processo di ottimizzazione viene avviato. Il terminale prepara il compito per gli agenti tester, che include:
Il terminale MetaTrader 5 comunica con i nodi della rete MQL5 Cloud Network e dà ad ogni nodo un lotto separato di compiti per l'esecuzione di passaggi specifici. Ogni nodo è in realtà un proxy, poiché riceve un compito e un pacchetto di compiti (singoli passaggi), e poi inizia a distribuire questi compiti agli agenti ad esso collegati. In questo caso, i file di Expert Advisor, indicatori, librerie e dati stessi non vengono salvati sui dischi rigidi dei server di MQL5 Cloud Network.
//---
Ho spostato il file di ottimizzazione nella cartella locale del terminale per ora. L'errore di cui sopra non si verifica in questo caso. I test in tutte le modalità e l'ottimizzazione funzionano normalmente, ma quando si cerca di attivare l'ottimizzazione nel cloud, il registro si riempie di messaggi come questi:
//---
E di tanto in tanto vengono fuori risultati di ottimizzazione zero. Un'attesa piuttosto lunga (circa dieci minuti), ma non succede niente.
//---
Finalmente ho scoperto che per molti personaggi l'ottimizzazione nel cloud è "non disponibile" (EA è multi-valuta). Ho provato a cambiare la lista dei simboli manualmente e ho scoperto che se aggiungo questi simboli, l'ottimizzazione non parte (dal 2010 al giorno corrente):
NZDUSD, GBPUSD, EURJPY, EURGBP
Non appena li ho rimossi dalla lista, tutto inizia a funzionare. Ma mi sono rallegrato troppo presto. Non appena aumento la quantità di storia vedo di nuovo la stessa situazione (zero risultati). Il mio Expert Advisor sta usando così tanta memoria:
//---
Dove cercare, cosa fare?
Serve un link a una discussione su questo tema, allora. Dove è stato discusso questo?
Io stesso mi baso su alcune discussioni passate e sull'articolo: MQL5 Cloud Network accelera i calcoli, ma qualcosa non funziona.
//---
Ho spostato il file di ottimizzazione nella cartella locale del terminale per ora. L'errore di cui sopra non si verifica in questo caso. I test in tutte le modalità e l'ottimizzazione funzionano bene, ma quando provo ad attivare l'ottimizzazione nel cloud, il registro si riempie di messaggi come questi:
//---
E di tanto in tanto vengono fuori risultati di ottimizzazione zero. Un'attesa piuttosto lunga (circa dieci minuti), ma non succede niente.
//---
Finalmente ho scoperto che per molti personaggi l'ottimizzazione nel cloud è "non disponibile" (EA è multi-valuta). Ho provato a cambiare la lista dei simboli manualmente e ho scoperto che se aggiungo questi simboli, l'ottimizzazione non parte (dal 2010 al giorno corrente):
NZDUSD, GBPUSD, EURJPY, EURGBP
Non appena li ho rimossi dalla lista, tutto inizia a funzionare. Ma mi sono rallegrato troppo presto. Non appena aumento la quantità di storia vedo di nuovo la stessa situazione (zero risultati). Expert Advisor usa così tanta memoria:
//---
Dove cercare, cosa fare?
Ho capito bene che riuscite in qualche modo a inviare il file e le cartelle del terminale ad altri computer per utilizzarli nel lavoro dell'EA?
... I test in tutte le modalità e l'ottimizzazione funzionano bene, ma quando si cerca di attivare l'ottimizzazione nel cloud, il registro si riempie di messaggi come questo:
...
Un errore di invio della storia ha lampeggiato nel log: history send error
C'è qualcosa di sbagliato nella storia. Cosa devo fare in questo caso? Voglio ottimizzare i parametri dell'anno 2000 per più caratteri.
Prendete la dichiarazione della variabile dietro la funzione OnInit e assegnate un valore bool - tutto ha funzionato per me nel tester e nel debug subito
Date spesso questi consigli "utili" in questa sezione? E se fossi un principiante, cercherebbe un problema mezzo anno dopo questo consiglio :)
Il tipo bool è destinato a memorizzare i valori logici true o false, che numericamente rappresentano rispettivamente 1 o 0 .
Significa che si rende deliberatamente una variabile 0 o 1 e poi la si confronta con un numero negativo e si conclude che tutto funziona.
La domanda è perché questo codice si rifiuta di funzionare nel tester:
Che tipo di errore restituisce?
Non so nulla di OpenCL, ma ho già visto un thread su OpenCL e il tester. Forse il tester semplicemente non supporta questa funzione? Dai un'occhiata all'argomento OpenCL: test di implementazione interna in MQL5
Che tipo di errore viene restituito?
In questa variante - 0 :)
Non conosco OpenCL, ma in qualche modo mi sono imbattuto in un thread su OpenCL e un tester. Forse il tester semplicemente non supporta questa funzione? Guarda l'argomento OpenCL: test di implementazione interna in MQL5