Caratteristiche del linguaggio mql5, sottigliezze e tecniche - pagina 203
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Stiamo estendendo le sequenze di inizializzazione "{ ... }", nella prossima build sarà consentita qualsiasi espressione, non solo una costante.
Invece di questo cambiamento, ci sarà una restrizione sull'uso delle costanti per le enumerazioni (come per un'espressione normale): se una costante non fa parte di un enum, verrà generato un errore appropriato.
L'analisi dei codici esistenti ha mostrato che la sequenza di zero singolo "{0}" è spesso usata in modo scorretto.
Per esempio, così:
Tale notazione significa impostare il valore zero per il primo campo della struttura e azzerare il resto dei campi.
Per la linea di codice qui sopra, secondo le nuove regole, ci sarà un errore poiché il primo campo ha il tipo ENUM_TRADE_REQUEST_ACTIONS, un'enumerazione che non ha il valore "0".
Il modo corretto sarebbe:
MqlTradeRequest request={};
Questo è corretto:
MqlTradeRequest request={};
E poi a cosa sarebbe uguale request.action?
E poi a cosa sarebbe uguale request.action?
Zero, naturalmente, come se ZeroMemory fosse chiamato per l'oggetto di questa struttura
Come posso tenere traccia delle serie temporali e degli indicatori basati su di esse?
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Bug, bug, domande
Slava, 2021.05.29 18:16
Voglio ricordarvelo.
1. Per ogni simbolo, per il quale almeno un grafico è aperto, un thread separato sta lavorando per elaborare i tick in arrivo. Diversi grafici possono essere aperti per qualche simbolo, ma ci sarà ancora un solo thread.
2. Il thread dei simboli non elabora grafici, ma serie temporali. Cioè, gli stessi array di dati che sono sottoposti alla richiesta CopyRates.
3. è inutile chiedere al vostro simbolo in OnTick o OnCalculate, se è sincronizzato. Certo che lo è!
4. Tutte le serie temporali sono gestite in ordine, dal più basso al più alto. Prima di tutto, viene applicato il tick, e poi il calcolo di tutti gli indicatori, creati su questa serie temporale. Se chiedete dati per lo stesso simbolo H1 all'indicatore, lavorando su M1, non otterrete mai dati con il tick applicato. I dati saranno sempre una spunta indietro, non importa quali trucchi applichiate. Perché un thread per simbolo con un'elaborazione temporale consecutiva.
5. L'affermazione precedente non si applica agli EA e agli script, perché gli EA e gli script lavorano ognuno nei propri thread separati.
Come posso tenere traccia delle serie temporali e degli indicatori basati su di esse?
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Bug, bug, domande
Slava, 2021.06.01 06:34
Alla prima richiesta, l'indicatore potrebbe non ricevere dati dal suo simbolo ma da un altro timeframe solo per una ragione - la serie temporale richiesta non è ancora stata costruita o è già stata distrutta dopo un certo tempo, quando non c'erano richieste.
Dopo una richiesta infruttuosa, basta inviare un comando al vostro grafico per aggiornarlo e terminare OnCalculate immediatamente. È garantito che OnCalculate sarà chiamato e la serie temporale sarà pronta in questo momento
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Caratteristiche del linguaggio mql5, sottigliezze e trucchi
fxsaber, 2017.11.30 09:48
Memo
Il punto è un altro - potrebbe essere una svista piuttosto che un cambiamento deliberato di comportamento? L'hai scoperto?
Il punto è un altro - potrebbe essere una svista piuttosto che un cambiamento deliberato di comportamento? L'ha riconosciuto?
Non l'ho fatto. Il feedback è quasi inesistente. Tuttavia, ecco una caratteristica che ho appena scoperto.
Questo Expert Advisor avverte quando si passa da un conto all'altro. Sembrerebbe che non dovrebbe farlo secondo la regola.
Forum sul trading, sistemi di trading automatico e test di strategia
Caratteristiche del linguaggio mql5, sottigliezze e trucchi
fxsaber, 2017.11.30 09:48
Memo
Questo consulente avverte quando si passa da un conto all'altro. Sembrerebbe che non dovrebbe farlo, secondo la regola
Nessuno ha garantito che altri gestori di eventi vengano interrotti (o non vengano eseguiti).
Dopo l'allarme, sia deinit che init avvengono, giusto?