Caratteristiche del linguaggio mql5, sottigliezze e tecniche - pagina 168
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
Quando si riceve un messaggio su una perdita di memoria, significa che non c'era un comando esplicito per liberare quella memoria.
Quando il programma termina (che è quando si ottengono questi messaggi), libera comunque tutta la memoria, inclusa la memoria leaked.
Forse ho usato il termine "perdita" troppo liberamente. Il punto è che una risorsa viene lasciata appesa in memoria, il cui nome non è nemmeno riconoscibile se l'oggetto viene cancellato. E se conoscete il suo nome, non potete cancellarlo da nessuna parte se non dal programma che ha creato la risorsa.
Ora è molto facile scrivere uno script per Market che sospenderà (non necessariamente premeditato) il terminale sul VPS, riempiendo tutta la memoria con risorse che non vengono cancellate dopo l'esecuzione dello script.
Alcuni server di trading possono contenere più di un tipo di conto alla volta. Per esempio, ECN e standard. In questo caso i simboli possono non avere prefissi, cioè i nomi sono gli stessi.
In questo caso, la storia delle barre (compreso il valore attuale di bid/ask/last sul grafico) e la storia dei tick corrispondono sempre a un solo tipo di conto.
E i dati di Market Watch corrispondono a quello a cui è collegato.
A causa di questo, è facile osservare che il Market Watch è completamente incoerente con i grafici e la storia dei tick.
Più volte mi è capitato di cambiare accidentalmente (manualmente) il simbolo della carta dove si trova un consigliere di combattimento.
Protezione contro il cambio di simbolo.
Di conseguenza, prendo la storia una settimana prima della compilazione. È conveniente.
Quando si avvia un EA, è spesso necessario decidere il tempo dal quale la storia dei prezzi deve essere ottenuta. Per evitare di doverlo inserire manualmente ogni volta, ho fatto così.
Di conseguenza, prendo la storia una settimana prima della compilazione. Conveniente.
Perché dovreste fare troppo affidamento sull'ottimizzatore? È meglio:
#define WEEK 604800
Funzione di interruzione di emergenza, sembra funzionare bene
Funzione di interruzione di emergenza, sembra funzionare bene
è la cosa giusta da fare - sono stato felice di vederlo accadere... abbiamo risolto questo problema con@Victhttps://www.mql5.com/ru/forum/318246/page10#comment_12651569
ma questo:
- nonExit http://www.delphibasics.ru/Exit.php
- nonAbort http://www.delphibasics.ru/Abort.php
èHalt http://www.delphibasics.ru/Halt.php
UPD: un tale script è estremamente necessario
la cosa è necessaria - sono stato felice di vederlo accadere..., ecco il problema che abbiamo risolto con@Victhttps://www.mql5.com/ru/forum/318246/page10#comment_12651569
ma questo:
- nonExit http://www.delphibasics.ru/Exit.php
- nonAbort http://www.delphibasics.ru/Abort.php
èHalt http://www.delphibasics.ru/Halt.php
UPD: un tale script è estremamente necessario
Questo non ha ancora funzionato((((.
Non vedo perché ne ho bisogno!
Se gli sviluppatori avessero dato exit / abort come standard, allora sarebbe possibile terminare correttamente l'elaborazione dei dati, se, per esempio, TF non è pronto - dati OHLC, sarebbe anche utile per l'elaborazione degli ordini di invio al server... sarebbe conveniente interrompere il codice in qualsiasi punto e uscire prima del prossimo tick senza interminabili return() per uscire da OnTick()
non posso essere sicuro di averne bisogno!
Se gli sviluppatori avessero dato exit / abort come standard, allora sarebbe possibile terminare correttamente l'elaborazione dei dati, se, per esempio, TF non è pronto - dati OHLC, sarebbe anche utile per l'elaborazione degli ordini di invio al server... sarebbe conveniente interrompere il codice in qualsiasi punto e uscire prima del prossimo tick senza interminabili return() per uscire da OnTick()
Beh, non poteva, non ancora...