Testare 'CopyTicks'. - pagina 45

 

Trovata una perdita dei flag TICK_FLAG_BUY, TICK_FLAG_SELL nella struttura MQLTick quando si copiano i tick dal simbolo personalizzato con la funzione CopyTicks(...).

Da RTS-6.20 simbolo esportato zecche per quest'anno a file CSV. Creare il simbolo MyRTS-6.20 copiando da RTS-6.20. Caricato in esso ticks da file CSV. Sembra essere un duplicato. Tutto è buono con il suo grafico.

Ma CopyTicks(...).




Script fxsaber usato

 
Sealdo Сергей:

Trovata una perdita dei flag TICK_FLAG_BUY, TICK_FLAG_SELL nella struttura MQLTick quando si copiano i tick dal simbolo personalizzato con la funzione CopyTicks(...).

Da RTS-6.20 simbolo esportato zecche per quest'anno a file CSV. Creare il simbolo MyRTS-6.20 copiando da RTS-6.20. Caricato in esso ticks da file CSV. Sembra essere un duplicato. Tutto è buono con il suo grafico.

Corretto nella beta 2414.

Ora esportato in CSV e importato con la colonna della bandiera.

 

Ho un'altra domanda stupida: MT determina la direzione dell'affare (scrivendo BUY/SELL in MqlTick.flags) analizzando i dati del tick stesso, o ottienela direzione dell'affare dalla fonte dei dati?

 
Sealdo Сергей:

Ho un'altra domanda stupida: MT determina la direzione delle transazioni (scrivendo BUY/SELL in MqlTick.flags) analizzando i dati tick stessi, o ottiene la direzione delle transazioni dalla fonte dei dati?

Dalla fonte.

Tutto dipende dal datafeed, che può impostare da solo le bandiere.

 
MetaQuotes:

Dalla fonte.

Tutto dipende dal datafeed, che può anche segnalare se stesso.

Per non dipendere dalla fonte, è meglio organizzare una logica locale per il flagging.

(Last == Ask ? TICK_FLAG_BUY : TICK_FLAG_SELL);

In questo modo qualsiasi datafeed sarà commestibile, non importa se ha una direzione di trading o no.
Questo risolverà il problema del tester di strategia per l'esecuzione dello scambio.
Questo significa che sarà possibile espandere la struttura della cronologia dei tick per gli strumenti di scambio.
Estendendo la struttura della cronologia dei tick, sarà possibile organizzare l'esecuzione degli scambi nel tester delle strategie.
Abbiamo bisogno di un vero tester di scambio!

 

Con questo tipo di logica di programma, penso che ci saranno parecchi bug >>>.


 
Sealdo Сергей:

Con questo tipo di logica di programma, penso che ci saranno parecchi bug >>>.

Che tipo di errori?
Penso che questo risolverà il problema del rendering delle compravendite sbagliate come nel tuo screenshot, che non corrispondono affatto alle offerte e ai rilanci.
A proposito, ho visto lo stesso problema in TcLab, mi sembra che questo sia dovuto al fatto che si tratta di canali dati diversi.
Gli scambi vanno nella loro presa, l'offerente/offerta in un'altra presa. Gli scambi devono essere sulle linee di offerta e offerta e nient'altro.
Solo un confronto locale

(Last == Ask ? TICK_FLAG_BUY : TICK_FLAG_SELL)

sincronizzerà entrambi i canali di dati, le transazioni passate e l'offerta/bid, e possibilmente eliminerà questo difetto che hai menzionato.

C'è anche lo stato indefinito delle transazioni del contatore N/A.
Anche per questi dobbiamo considerare lo stato delle bandiere.

Ho controllato su uno strumento CME.
Solo le contro-operazioni N/A non sono disegnate da un'offerta.
Ma sono disegnati all'interno dello spread (cerchio verde), il che è corretto.
Il resto degli scambi sono rigorosamente sull'offerta.
Avete uno strumento di Mos. Exchange, forse sono le contro-operazioni che non rientrano nello spread, ma perché sono fuori dallo spread, che non è corretto.
Quindi non si tratta di counter trade ma di trade diretti che hanno una direzione.
E come ho capito da altre discussioni, il terminale MT5 non visualizza i contro-ordini su Mos. Scambio.
Forse questo è il problema del disegno errato di scambi passati.


 
Ciao a tutti!!! Potete dirmi se è possibile caricare la cronologia delle quotazioni in mt5? Sto cercando informazioni da 2 giorni ma non riesco a trovarle
 
Igorz2006:
Ciao a tutti, potete dirmi se è possibile caricare la cronologia delle quotazioni in mt5? Lo sto cercando da 2 giorni, ma non riesco a trovarlo.

Ricezione di zecche:

CopyTicks

Ottiene i tick in un array nel formato MqlTick

CopyTicksRange

Ottiene le zecche in un array entro l'intervallo di date specificato

Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTicks
Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTicks
  • www.mql5.com
[in]  Количество запрашиваемых тиков. Если параметры from и count не указаны, то в массив ticks_array[] будут записаны все доступные последние тики, но не более 2000. Первый вызов CopyTicks() инициирует синхронизацию базы тиков, хранящихся на жёстком диске по данному символу. Если тиков в локальной базе не хватает, то недостающие тики...
 
Grazie, ci darò un'occhiata
Motivazione: