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
Sì, beh, in effetti è un comportamento strano per una funzione standard. Dopo tutto, abbiamo a che fare esattamente con l'adattamento dei valori al suo "benchmark".
La funzione standard iBarShift di MQL4, quando l'ora richiesta cade in un buco, restituisce il numero della barra sinistra (cioè sabato in questo caso), e iBarShift3 restituisce il numero della barra destra del buco (cioè lunedì), che ha più senso.
Se siamo nel buco, è logico restituire la barra sinistra, l'ultimo valore conosciuto, ma non il futuro.
Se siamo in un buco, è logico restituire la barra sinistra, l'ultimo valore conosciuto, ma non il futuro.
PS: è necessario postare la versione inglese o la traduzione russa è corretta?
Sì, la traduzione è corretta.
Eseguite questo script e vedrete che le funzioni producono esattamente lo stesso risultato.
Puoi fare un esempio di un lasso di tempo e del momento in cui i valori di queste funzioni sono diversi?
A proposito, la sua funzione è spesso sbagliata. Restituisce il valore -1
Il requisito è di avere SOLO come versione di mql4
La tua funzione non funziona correttamente con il parametro exact=true.
Questo può essere visto in questo script.
Ed ecco un analogo funzionante della funzione iBarShift con il parametro esatto:
Senza questo parametro può essere semplificato in questa forma:
Sì, la traduzione è corretta.
Eseguite questo script e vedrete che le funzioni producono esattamente lo stesso risultato.
Puoi fare un esempio di un lasso di tempo e del momento in cui i valori di queste funzioni sono diversi?
A proposito, la sua funzione è spesso sbagliata. Restituisce il valore -1
Per favore, sii serio. Il mio codice è per mql5.
Restituisce -1 perché la funzione Bars() non è affidabile sotto MT4.
Script in esecuzione su AUDUSD, grafico M5.
Questo non succede con MT5.
Per favore, sii serio. Il mio codice è per mql5.
Restituisce -1 perché la funzione Bars() non è affidabile sotto MT4.
Script in esecuzione su AUDUSD, grafico M5.
Questo non succede con MT5.
Hai detto che dovrebbe funzionare come in MQL4.
Ma questo script può essere eseguito anche su MQL5
Se exact=True e tempo futuro dovete restituire -1.
Il mio script ha anche trovato uno strano errore:
Questo errore è confermato da questo controllo:
Quindi avevo ragione sull'esistenza di situazioni anomale nel vostro algoritmo, dopo tutto.Da tutta l'analisi che ho fatto, possiamo concludere che questo analogo completo dell'iBarShift:
è di gran lunga il più corretto, e allo stesso tempo il più veloce e con l'algoritmo più semplice e breve.
Se non hai bisogno del parametro esatto, puoi usare la versione semplificata:
o semplicemente usare questa versione equivalente senza chiamare la funzione:
O mi sbaglio?Il silenzio è un segno di accordo.
Attraverso CTRL+SHIFT+F in ME ha fatto una ricerca per "BarShift". Si scopre che non uso una funzione simile. A quanto pare non ne avevo bisogno io.
Una volta ha scritto una variante per convertire gli EA MT4 in MT5 in una sola riga. Sembra essere l'unica ragione per scriverlo.
Non lavoro con i bar e non capisco perché tutti gli altri non facciano lo stesso.
Non è entrato nel tuo codice. Ma sono sempre contento quando si ottiene una soluzione rapida.
Attraverso CTRL+SHIFT+F in ME ha fatto una ricerca per "BarShift". Si scopre che non uso una funzione simile. A quanto pare non ne avevo bisogno io.
Una volta ha scritto una variante per convertire gli EA MT4 in MT5 in una sola riga. Sembra essere l'unica ragione per scriverlo.
Non lavoro con i bar e non capisco perché tutti gli altri non facciano lo stesso.
Non è entrato nel tuo codice. Ma sono sempre contento quando si ottiene una soluzione rapida.
Capisco quello che vuoi dire, ma per me lavorare con le barre è ancora urgente. Forse un giorno diventerà un rudimento anche per me.