Errori, bug, domande - pagina 3028
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
Un'unione con un solo campo è una cosa strana.
Questo è lo stesso di struct - solo che l'errore è più evidente. È persino scritto nella documentazione:"Altrimenti l'unione si comporta come struttura".
Union\char\char è anche strano, e anche per chiarezza, ma può essere riscritto:
Quindi non sembra strano a nessuno.ripensaci.
Devi pensare, Andrei. È nel tuo codice che ci sono gli scarafaggi.
Beh, oggi sono così incline... Cercherò di spingere nella giusta direzione:
Si è aperta una nuova barra... iBars() è aumentato di uno...... Ma il numero di barre contate non è cambiato. E non cambierà finché non ricalcolerà questa nuova barra...
Cosa c'è dopo?
questo non dovrebbe funzionare correttamente negli indicatori:
se non mi sbaglio, nell'aiuto c'è una ripartizione dello script per la paginazione dei dati per tutti i TF e ci dovrebbe essere un avviso che i dati storici non possono essere richiesti dall'indicatore in questo modo, perché l'indicatore lavora in modo asincrono
e si raccomanda di usare BarsCalculated() una volta dopo aver legato l'handle
UPD: script per la paginazione della storia e spiegazione del perché non funziona negli indicatori:https://www.mql5.com/ru/docs/series/timeseries_access
sei sicuro di aver capito il significato del codice?
Devi pensare, Andrei. È nel tuo codice che ci sono gli scarafaggi.
Beh, oggi sono così incline... Cercherò di spingere nella giusta direzione:
Si è aperta una nuova barra... iBars() è aumentato di uno...... Ma il numero di barre contate non è cambiato. E non cambierà finché non ricalcolerà questa nuova barra...
Cosa c'è dopo?
mio buon uomo, per favore non scrivetemi, non siete nel giro.
O dimostrarlo con il codice.
sei sicuro di aver capito il significato del codice?
Con un'alta probabilità - sicuro e compreso
Vuoi che l'indicatore sincronizzi il "TF superiore" prima di chiamare un altro indicatore
il mio indicatore funziona, giusto? - potete aggiungervi BarsCalculated() - ma come negli esempi di indicatori della consegna, per esempio MACD.mql5
HH: ci sono un sacco di indicatori multitimeframe in QB. Se ho bisogno di ricordare cosa fare e come farlo, di solito cerco gli indicatori di Mladen Rakic e guardo tra i suoi, lo stile di codifica è particolare (più correttamente la formattazione), ma sono 100% funzionali
https://www.mql5.com/ru/users/mladen
Caro, per favore non scrivermi, non sei nel giro.
O provarlo con un codice.
Bene, allora, fiu su di te...
Gli sviluppatori non rispondono a queste sciocchezze, Igor si annoierà presto... E rimani a parlare da solo...
Basta chiedere a Drummer di spostare i tuoi sfoghi in un thread separato... per evitare di ingombrare quello giusto...
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Bug, bug, domande
Andrey Dik, 2021.05.28 05:16
Sto cercando di controllare la sincronizzazione dei dati sul timeframe richiesto (M5) e la prontezza dell'indicatore su di esso, se non è pronto, esco.
Di conseguenza, l'indicatore funziona solo una volta all'apertura della barra M1, e non ad ogni tick:
Spero che gli sviluppatori ascoltino le mie suppliche.
Anche Igor si annoierà presto...
Ho solo il desiderio di capire
in MT5 ci sono un sacco di insidie con la sincronizzazione, ora la domanda è anche su questo
imho, se l'indicatore usa costruzioni su ogni barra (linee, non frecce)
questo ciclo è sufficiente per il calcolo economico:
se c'è la prima chiamata, allora prev_calculated sarà = 0, nelle chiamate successive le nuove barre saranno ricalcolate
e se entrambi gli indicatori sono scritti correttamente, non c'è bisogno di sincronizzare nulla in più, tutto funzionerà, l'unica cosa rimasta è confrontare CopyBuffer() con il numero richiesto di valori dell'indicatore chiamato
Voglio solo capirlo.
in MT5 ci sono un sacco di insidie con la sincronizzazione, ora la domanda è anche su questo
imho, se l'indicatore usa una costruzione su ogni barra (linee, non frecce)
questo ciclo è sufficiente per il calcolo economico:
se c'è la prima chiamata, allora prev_calculated sarà = 0, nelle chiamate successive le nuove barre saranno ricalcolate
e se entrambi gli indicatori sono scritti correttamente, non c'è bisogno di sincronizzare nulla in più, tutto funzionerà, l'unica cosa rimasta è confrontare CopyBuffer() con il numero richiesto di valori dell'indicatore chiamato
Questo è quello che voglio dire. Andrebbe bene provare a sincronizzare prima della prima esecuzione, ma in questo modo............
Voglio solo capirlo.
in MT5 ci sono un sacco di insidie con la sincronizzazione, ora la domanda è anche su questo
imho, se l'indicatore usa una costruzione su ogni barra (linee, non frecce)
questo ciclo è sufficiente per il calcolo economico:
se c'è la prima chiamata, allora prev_calculated sarà = 0, nelle chiamate successive le nuove barre saranno ricalcolate
e se entrambi gli indicatori sono scritti correttamente, non c'è bisogno di sincronizzare nulla in più, tutto funzionerà, l'unica cosa rimasta è confrontare CopyBuffer() con il numero richiesto di valori dell'indicatore chiamato
se vuoi capire e non opporti, dovresti scrivere qualcosa come il codice qui sotto:
compilare entrambi i codici ed eseguire il secondo. ottenere qualcosa di simile a questo nei registri quando si esegue su M1 e M3 dell'indicatore senior:
2021.05.28 19:05:01.408 OldTF (EURUSD,M3) 0.000234 sec, 50000 barre calcolate, 50000 barre totali
2021.05.28 19:05:03.860 LitTF (EURUSD,M1) 0.007452 sec, 50023 barre calcolate, 50023 barre totali
2021.05.28 19:06:00.670 OldTF (EURUSD,M3) 0.000001 sec, calcolato 1 barra, totale barre 50001
2021.05.28 19:06:02.211 LitTF (EURUSD,M1) 0.008180 sec, 50024 barre calcolate, 50024 barre totali
2021.05.28 19:07:00.780 LitTF (EURUSD,M1) 0.000004 sec, calcolato 1 barra, totale barre 50025
2021.05.28 19:08:01.246 LitTF (EURUSD,M1) 0.000014 sec, settled 1 bar, total bars 50026
2021.05.28 19:09:00.959 OldTF (EURUSD,M3) 0.00000014 sec, calcolato 1 barre, totale barre 50002
2021.05.28 19:09:01.775 LitTF (EURUSD,M1) 0.006898 sec, 50027 barre calcolate, 50027 barre totali
2021.05.28 19:10:00.830 LitTF (EURUSD,M1) 0.000004 sec, calcolato 1 barra, totale barre 50028
anche a occhio nudo si può vedere in primo luogo, il modo più veloce possibile di costruire indicatori veloci, e in secondo luogo, che il pre-calcolo è azzerato
In questo esempio l'indicatore è costretto ad essere completamente ricalcolato ad ogni nuova barra M3.
Beh, non sei obbligato a farlo.
Gli sviluppatori non rispondono a queste sciocchezze, anche Igor si annoierà presto... E resta a parlare da solo...
Basta chiedere a drubashka di spostare i tuoi sfoghi in un thread separato per non ingombrare quello giusto...
Guardate il codice qui sopra, mangiatevi il passaporto, cospargetevi il capo di cenere e ficcate la vostra arroganza dove nessuno può vederla.