Il mio approccio. Il nucleo è il motore. - pagina 159

 
Artyom Trishkin:

L'ho fatto in Cinque tramite il timer nel tester. Anche solo usarlo (ed è un multitimer al millisecondo) ha causato un serio rallentamento del tester. Pertanto, è sufficiente rifiutare il timer nel visualizzatore - è la stessa cosa lavorare sui tick. Fatto due modelli - per timer e per eventi di bandiere attraverso OnTick(). Per timer in tempo reale, per tick - nel renderer.

Bugie - tre modelli - anche attraverso OnChartEvent() - solo tempo reale anche lì.

Ha funzionato anche con OnTimer(), per il tester, ma l'ho letto:

Strategy Tester utilizza un intervallo minimo di 1000 millisecondi.

https://www.mql5.com/ru/docs/event_handlers/ontimer

Domanda: è possibile ottenere un millisecondo nel tester, e come?

Документация по MQL5: Обработка событий / OnTimer
Документация по MQL5: Обработка событий / OnTimer
  • www.mql5.com
//|                                               OnTimer_Sample.mq5 | //|                        Copyright 2018, MetaQuotes Software Corp. | //|                                             https://www.mql5.com | //| Expert initialization function                                   |...
 
jdjahfkahjf:

Stavo anche lavorando attraverso OnTimer(), per il tester, ma, leggete questo:

Il tester di strategia utilizza un intervallo minimo di 1000 millisecondi.

https://www.mql5.com/ru/docs/event_handlers/ontimer

Domanda: è possibile ottenere millisecondi in tester, e come?

solo generando un simbolo personalizzato e dei tick ad esso e lavorando sull'arrivo dei tick

Sfortunatamente, non ci sono molte varianti qui. MT5 ha gli eventi specifici OnTick() , OnTimer().... disponibili per l'elaborazione e solo loro possono essere processati, inoltre l'evento OnChartEvent() non viene generato nel tester; in generale, come sempre è necessario scrivere 2 versioni di codice, una per il tester, un'altra per il commercio (o dividere il codice in una versione per il lavoro nel tester e per il lavoro su un conto commerciale)


HH: se non mi sbaglio, allora 1 millisecondo non può essere generato, il timer di sistema Windows non dà questa precisione

 
Igor Makanu:

solo con la generazione di un simbolo personalizzato e zecche ad esso e lavorare sull'arrivo delle zecche

Sfortunatamente, non ci sono molte opzioni qui, in MT5 gli eventi specifici OnTick(), OnTimer().... sono disponibili per l'elaborazione e solo loro possono essere processati, inoltre l'evento OnChartEvent() non viene generato nel tester; in generale, come sempre è necessario scrivere 2 versioni di codice, una per il tester, un'altra per il commercio (o dividere il codice in una versione per il lavoro nel tester e per il lavoro su un conto commerciale)


HH: se non mi sbaglio, allora 1 millisecondo non può essere generato, il timer di sistema Windows non dà questa precisione

Capisco, ma quello che dici è già compreso. Grazie comunque.

Buon per MT5, anche se è stato "beta" per tanti anni.

Ma come giurato qui che non ci sarà nessuna versione hedge, si spera che non ci saranno nemmeno timeframes sotto il minuto, tanto meno ticks.

 

Che senso ha sviluppare la direzione C#? C'è comunque un vicolo cieco. Non c'è modo di metterlo sul mercato. Ma per usarlo a scapito di altri, ci sono molte possibilità (se iniziano a distribuirlo bypassando il mercato). E chi sarà in grado di controllarlo? Perché l'avrebbero fatto?

Ma anche in questo caso, è improbabile che molti ne abbiano bisogno. Ho reso così semplice e facile la connessione alla loro GUI, che solo i buongustai della programmazione si preoccupano di un'altra connessione.

Le possibilità del motore continueranno a crescere e l'uso diventerà più facile. C# non ha alcuna possibilità di fermarmi)).

È divertente come alcune persone pensino che sia un disastro per me). Sono sciocchezze che non servono a nessuno. Ma lasciateli provare. Mi chiedo cosa funzionerà.


Non importa quali caratteristiche fornisce C#, ciò che conta è chi le può usare. La maggior parte degli utenti (codificatori) sono troppo deboli per creare qualcosa di serio da soli. Dovete crearlo per loro e per loro. Questo è quello che faccio. Al contrario, la direzione di C Sharp porta lontano dalla semplicità nel mondo della programmazione complicata. Pertanto, non otterrà una popolarità di massa.

 
Реter Konow:

Che senso ha sviluppare la direzione C#? In ogni caso è un vicolo cieco.

...

Grazie, mi sono fatto una bella risata prima di andare a letto.

 
Dmitry Fedoseev:

Grazie, mi sono fatto una bella risata prima di andare a letto.

Anch'io vado a dormire per un paio d'ore.

 
Retrog Konow2019.01.15 16:25 inizializzazione dell'array sono lente all'interno del blocco di disegno. Se commento il ciclo, rallenta ResourceReadImage, se commento ResourceReadImage, rallenta il ciclo. Inoltre, separatamente caricano il processore del 50%, ma insieme lo caricano del 40%. Questa è una sciocchezza...

----------------------------------------------

Approssimativamente, è quello che sembra.

Di solito una richiesta di inviare/ricevere informazioni attraverso una o un'altra porta.

Un permesso e una transazione. Secondo gli standard (regole) dell'ambiente operativo. Avete fatto tutto questo con Metacquotes?

 

Onestamente, mi piacerebbe fare questa soluzione con C#. Lo integrerei rapidamente e facilmente nel mio motore. Lì funzionerebbe, dando all'utente la scelta di connettersi tramite la mia GUI, o la sua da Windows.

Sarà bello. Vasily, scrivi presto un articolo.

Saluti ai negativi. :)

 

Алексей Тарабанов:

....

Questo è più o meno quello che sembra.

Di solito una richiesta di inviare/ricevere informazioni attraverso una porta o un'altra.

Risoluzione e - transazione. Secondo gli standard (regole) dell'ambiente operativo. Avete fatto tutto questo con Metacquotes?

No, è una questione di comunicazione interna attraverso le risorse. Sono riuscito a ridurre il carico della metà ottimizzando il mio sistema di disegno. Ora non sta rallentando.

 
Condotto un test sul traffico di dati di grandi tabelle. I limiti delle possibilità erano interessanti. Con mia sorpresa, non li ha ancora raggiunti. Ora posterò il risultato....
Motivazione: