Manca 1 barra di mercoledì, iniziata da questo simbolo alle 00:30, cioè persa alle 00:00
M30 time frame, ha ottenuto 47 nel giorno invece di 48. Questo è esattamente ciò di cui abbiamo bisogno per identificare
intBars(
string symbol_name, // имя символа ENUM_TIMEFRAMES timeframe, // период datetime start_time, // с какой даты datetime stop_time // по какую дату
);
Questo è esattamente ciò che dobbiamo identificare.
Capisco, la questione è quella dei falsi allarmi, di cui ce ne saranno molti.
//дата последней свечи
curr_time=iTime(symbol,frame,0);
//ограничение на торговлю вне начала бараif(last_time==curr_time) return;
if((iBarShift(eSymbol,eFrame,last_time)-iBarShift(eSymbol,eFrame,curr_time))>PeriodSeconds(eFrame)) printf("а-я-яй");
last_time=curr_time;
Non riesco a decidere come organizzare questo in un ciclo attraverso tutta la storia
Il tempo di apertura della barra di zero giorni meno 1 secondo all'apertura della prima barra di giorno. Poi dall'apertura della prima barra giornaliera meno 1 secondo all'apertura della seconda barra giornaliera e così via.
Non riesco a decidere come organizzarlo in un ciclo su tutta la storia
Esattamente (per esempio per M30) - se il tempo tra le aperture (modulo % 24 ore) delle barre vicine è più lungo di M30 - significa che mancano delle barre tra loro.
int nbars = ( ( iTime(_Symbol,PERIOD_M30,N) - iTime(_Symbol,PERIOD_M30,N+1) ) ) / PeriodSeconds(PERIOD_M30) ) % 48; // сколько баров должно быть между ссоедними отметками
if (nbars>1) PrintFormat("Пропущено баров: %d",nbars-1);
Per esempio:
Manca 1 barra di mercoledì, iniziata da questo simbolo alle 00:30, cioè persa alle 00:00
M30 time frame, si è rivelato essere 47 in un giorno invece di 48. Questo è esattamente ciò di cui abbiamo bisogno per identificare
Ecco un esempio:
Manca 1 barra di mercoledì, iniziata da questo simbolo alle 00:30, cioè persa alle 00:00
M30 time frame, ha ottenuto 47 nel giorno invece di 48. Questo è esattamente ciò che dobbiamo identificare.
Non conosco il modo giusto, ma penserei in questa direzione
Ecco un esempio:
Manca 1 barra di mercoledì, iniziata da questo simbolo alle 00:30, cioè persa alle 00:00
M30 time frame, ha ottenuto 47 nel giorno invece di 48. Questo è esattamente ciò di cui abbiamo bisogno per identificare
Vitaly Muzichenko #:
Questo è esattamente ciò che dobbiamo identificare.
Capisco, la questione è quella dei falsi allarmi, di cui ce ne saranno molti.
Se 47
Questo è possibile, si può anche CopyOpen()
Non riesco a decidere come organizzare questo in un ciclo attraverso tutta la storia
ancora più semplice:
Questo è possibile, si può anche CopyOpen()
Non riesco a decidere come organizzare questo in un ciclo attraverso tutta la storia
Questo è possibile, si può anche CopyOpen()
Non riesco a decidere come organizzarlo in un ciclo su tutta la storia
Esattamente (per esempio per M30) - se il tempo tra le aperture (modulo % 24 ore) delle barre vicine è più lungo di M30 - significa che mancano delle barre tra loro.
int nbars = ( ( iTime(_Symbol,PERIOD_M30,N) - iTime(_Symbol,PERIOD_M30,N+1) ) ) / PeriodSeconds(PERIOD_M30) ) % 48; // сколько баров должно быть между ссоедними отметками
if (nbars>1) PrintFormat("Пропущено баров: %d",nbars-1);
Grazie a tutti, il principio è chiaro, il problema è stato formalizzato.
---
Ora una domanda: cosa sto sbagliando, tutti i caratteri hanno lo stesso valore?
---
P.S. Terminale MT4, controllato su due diversi terminali in diverse società di intermediazione
P.SS. Ho controllato in MT5, il risultato è lo stesso
---
Probabilmente sto facendo qualcosa di sbagliato!
Ho bisogno di ottenere "Valore del punto"
Grazie a tutti, il principio è chiaro, il problema è stato formalizzato.
---
Ora una domanda: cosa sto sbagliando, tutti i caratteri hanno lo stesso valore?
Vitaly, qui è necessario o disturbare gli sviluppatori, o