Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1185

 
Non ho cambiato nulla, prima con la vecchia versione di MQL non c'erano errori, EA non caricava il sistema, ma ora lo fa, quindi ho notato gli errori. Il tester e l'online sono cose diverse (è come conoscere la strada e percorrerla). Io stesso ho cercato di rimuovere qualcosa dalla lingua e la situazione è peggiorata.
 
bbrisk:

buon pomeriggio a tutti! la mia costruzione dà un errore quando si lavora sui dati:

for(int trade = OrdersTotal() - 1; trade >= 0; trade--)

{

if(OrderSelect(trade, SELECT_BY_POS, MODE_TRADES))

{

if(OrderSymbol() == Symbol() && OrderMagicNumber()==1 && (OrderType() == OP_BUYSTOP)

....


Non ci sonoordini di acquistopendenti, ce n'è uno aperto e in if. Qualcuno ha incontrato questo problema?

Voi vedete la funzione

Print();

Digita i tuoi parametri e vedi cosa succede, così saprai dov'è l'errore. Le informazioni vengono stampate nel giornale Expert Advisor (scheda Expert di MT4) e si può anche aprire il file


e copiare i dati per il confronto (nome del file 20200621 decifrato come 2020.06.21). Si può anche usare DeskPins per avere un file aperto e un codice o un grafico visibile. Nota anche il file 20200621 non deve superare i 4mb, se è uguale o più cancella il file l'esperto ne creerà uno nuovo.

 
Ciao a tutti, potete dirmi come legare un EA a un nome?
 
DENYS KOSHCHAVETS:
Ciao a tutti, ditemi come legare un EA a un nome?

Questo è un compito difficile, o meglio non riesco a indovinare chi dovrebbe rinominare l'EA, in generale non ho idee e nessuna soluzione


Posso solo provare a usare la funzione WindowExpertName(), forse aiuterà:

Restituisce il nome dell'EA in esecuzione, dello script, dell'indicatore personalizzato o della libreria.

UPD: puoi anche ottenere il nome EA in questo modo

MQLInfoString(MQL_PROGRAM_NAME)
 
Igor Makanu:

Questo è un compito difficile, o meglio non riesco a indovinare chi deve rinominare l'EA, quindi sono a corto di idee e soluzioni.


Posso solo provare a usare la funzione WindowExpertName(), forse aiuterà:

UPD: puoi anche scoprire il nome di EA in questo modo

Una volta avevo un cliente che mi torturava: "ma ricordati che la versione era xxx e prima c'era anche...". Le ho chiesto da dove venivano quelle versioni? Beh, li ho rinominati. E non aveva la fonte. E come potevo sapere e ricordare quello che c'era? È stato allora che ho deciso di vietare il lavoro se il nome EA fosse stato cambiato. Mi ha aiutato. Non ho salvato altre versioni diverse, che avevano errori o imperfezioni.

 
Alexey Viktorov:

Una volta un cliente mi ha chiesto: "Ti ricordi la versione che era xxx e prima c'era...". Le ho chiesto da dove vengono quelle versioni. Beh, li ho rinominati. E non aveva la fonte. E come potevo sapere e ricordare quello che c'era? È stato allora che ho deciso di vietare il lavoro se il nome EA fosse stato cambiato. Mi ha aiutato. Non ho salvato altre versioni diverse, che avevano errori o difetti.

Probabilmente è una buona cosa.

Se sto lavorando con qualcuno, modifico il nome del file xxx_1.01.mql4.

e cerca di non dimenticare di modificarlo.

#property version   "1.01"

Di solito questo è sufficiente per il lavoro e la comunicazione è più veloce se avete bisogno di tornare a una versione precedente, l'unico inconveniente è memorizzare tutte le versioni mentre si lavora

Se ci sarà tempo per perfezionare, metto la versione 2.00


Ho pensato che avesse bisogno di qualche tipo di protezione, solo che non so come cambiare il nome di EA programmaticamente - ecco perché sono stato sorpreso da un tale legame ))))

 
Alexey Viktorov:

Una volta un cliente mi ha chiesto: "Ti ricordi la versione che era xxx e prima c'era...". Le ho chiesto da dove vengono quelle versioni. Beh, li ho rinominati. E non aveva la fonte. E come potevo sapere e ricordare quello che c'era? È stato allora che ho deciso di vietare il lavoro se il nome EA fosse stato cambiato. Mi ha aiutato. Non ho salvato altre versioni diverse, che avevano errori o difetti.

Una persona può avere un compito specifico, per esempio un robot che controlla il robot e registra ciò che fa e cambia alcune variabili globali che sono disponibili in chissà dove. Spero certamente che questo non sia il caso. Perché è molto difficile implementare tali compiti. Ma sì, hai ragione.

 
Igor Makanu:

allora è probabilmente la cosa giusta da fare.

Se sto lavorando con qualcuno, modifico il nome del file xxx_1.01.mql4

e cerca di non dimenticare di cambiarlo.

Di solito questo è sufficiente per il lavoro e la comunicazione è più veloce se avete bisogno di tornare a una versione precedente, l'unico inconveniente è memorizzare tutte le versioni mentre si lavora

Se ci sarà tempo per perfezionare, metterò la versione 2.00


Ho pensato che avesse bisogno di qualche tipo di protezione, solo che non so come cambiare il nome di EA programmaticamente - ecco perché sono stato sorpreso da un tale legame ))))

git per aiutare)
 
Vladimir Simakov:
git al salvataggio)

Lo prendo dal git, che è interessante, nessun problema

Ma il problema degli utenti è che sono lontani dal git come la luna ))))

In 4 casi su 5 non sanno come testare TC nel tester, premono solo il pulsante "prova/ottimizza" e basta... qui si va e qui si va.... Non so come scaricare lo storico in MT4, o fantasticare che l'EA non sta al passo con l'indicatore perché non capiscono che nel test visivo si può mettere un indicatore su un grafico e vedere come funziona l'EA...


ugh, e stai parlando del git, qui abbiamo bisogno di un MT a livello utente per risolvere ;)

 
Igor Makanu:

Lo prendo dal git, che è interessante, nessun problema

Ma il problema degli utenti è che sono lontani dal git come la luna ))))

In 4 casi su 5 non sanno come testare TC nel tester, premono solo il pulsante "prova/ottimizza" e basta... qui si va e qui si va.... Non so come scaricare lo storico in MT4, o fantasticare che l'EA non sta al passo con l'indicatore perché non capiscono che nel test visivo si può mettere un indicatore su un grafico e vedere come funziona l'EA...


ugh, e stai parlando del git, qui MT sarebbe un utente con cui trattare ;)

Non sto parlando dei clienti)))) Intendo il progetto di controllo della versione. Dice il cliente che voglio rollback a questo, e non hai solo la possibilità di rollback, ma di creare un nuovo ramo, più, non intasare la directory un mucchio di versioni.

Motivazione: