MetaTrader 5 Python User Group - Come usare Python in Metatrader - pagina 5

 
Maxim Dmitrievsky:

L'ho fatto sulle zecche, ho filtrato tutti i tipi e poi sui prezzi di apertura - non ho notato una grande differenza nel montaggio. Al minuto il rand medio è piccolo così com'è. E il sistema si blocca più spesso, perché ci vuole molto tempo per inserirsi su un lungo periodo, sì. Come risultato, 15 (a volte 5) minuti ottimali mi perseguitano. Non ho fatto algo più veloce a causa della mancanza di background teorico nel tethering e nell'elaborazione del segnale (a bassi livelli governa), ma potrei provarlo presto.

Tutto sarà più lento da testare su python. Se tutte le cose inutili vengono rimosse, allora potrebbe andare bene.
Uso anche i prezzi ravvicinati, ma su m1 per risparmiare risorse. I tic non significano nulla sul forex comunque. Mi piacerebbe usare i tick e l'analisi delle operazioni eseguite sui dati di scambio, ma non ho ancora il tempo di farlo. Ma a volte ho bisogno di eseguirlo nel tester usando tick reali per confrontare come funziona l'algoritmo in dati reali insieme al tester.
 
Renat Fatkhullin:

Questa è un'integrazione a senso unico.

Cioè, da Python/R è possibile richiedere i dati dal terminale MetaTrader 5. Il terminale stesso non sa nulla degli utenti esterni e non trasmette loro nulla. Tanto più dal tester.

I pacchetti di integrazione sono progettati per permettere agli analisti di utilizzare i dati di mercato nel loro ambiente.

Grazie! Questo è quello che volevo scoprire.
 
Maxim Romanov:
Uso anche i prezzi di chiusura, ma su m1 per risparmiare risorse. I tic non significano nulla sul forex comunque. Volevo usare i tick e l'analisi delle operazioni eseguite nei dati di scambio, ma non ho ancora il tempo di farlo. Ma a volte ho bisogno di eseguirlo nel tester usando tick reali per confrontare come funziona l'algoritmo in dati reali in combinazione con il tester.

la mia imma è che le zecche sono hft con tutte le implicazioni, cioè un approccio diverso. Lavorare con flussi di tick da fonti multiple. Nel forex è quasi irrealistico a lungo termine, troppo tossico. Anche nel mercato di scambio non è molto buono, ci sono già alcuni abili commercianti seduti sul tavolo di colocazione che uccidono le vostre strategie con il loro flusso di ordini. Alla fine qualcosa nel mezzo, mezzo pieno di rumore, ma grazie a MO si può togliere. Bene, il MO medio/lungo va anche bene, ma il profitto scenderà proporzionalmente.

 
Maxim Dmitrievsky:

la mia imma è che le zecche sono hft con tutte le implicazioni, cioè un approccio diverso. Lavorare con flussi di tick da fonti multiple. Nel forex è quasi irrealistico a lungo termine, troppo tossico. Anche nel mercato di scambio non è molto buono, ci sono già alcuni abili commercianti seduti sul tavolo di colocazione che uccidono le vostre strategie con il loro flusso di ordini. Alla fine qualcosa nel mezzo, mezzo pieno di rumore, ma grazie a MO si può togliere. Va bene anche un MO medio-lungo, ma i profitti caleranno proporzionalmente.

Il legame tra tick e HFT è un mito. Le zecche sono un modo per aumentare l'aspettativa di maturità del TS. Niente di più. Se l'aumento del MO di 5 pip ha successo, a parità di altre condizioni, si tratta di un risultato eccellente. Naturalmente, stiamo parlando di centinaia di scambi al mese.

 
Questo è un buon punto. Un grafico a tick, non un capriccio, non sogni HFT, e così via, ma solo precisione.
 
fxsaber:

Il legame tra tick e HFT è un mito. Le zecche sono un modo per aumentare l'aspettativa di maturità del TS. Niente di più. Se è possibile aumentare il MO di 5 pip, a parità di altre condizioni, è un risultato eccellente. Naturalmente, stiamo parlando di centinaia di scambi al mese.

Altrimenti 5 pip non avrebbero un tale effetto. In termini di trading DT (senza contare che tu ne hai uno speciale), questo è un errore statistico

ma andiamo, l'argomento è su python
 
fxsaber:

Ci sarà il casting da array di byte ad array di strutture (e viceversa) in Python?

Dove posso trovare informazioni su tale fusione in MQL? Vedo che il POD di strutture in array di byte e ritorno è possibile. Non capisco molto dell'array di strutture.

Se li copi in modo sequenziale dall'array, ma hai bisogno di capire il protocollo, come elaborare il flusso di byte dall'altra parte. Non so come farlo in modo intelligente.

 
Maxim Dmitrievsky:

Dove posso trovare informazioni su tale fusione in MQL? Vedo che le strutture POD a byte array e viceversa sono possibili. Non capisco molto dell'array di strutture.

Se li copi in modo sequenziale dall'array, ma hai bisogno di capire il protocollo, come elaborare il flusso di byte dall'altra parte. Non so come farlo in modo intelligente.

come al solito byte per byte, la libreria Python ha un pacchetto che rappresenta i tipi fondamentali in una forma pura, per esempio, leggere l'array di byte ricevuto all'offset corretto sulla struttura dati, e la sezione letta convertita nel formato desiderato

 
Maxim Dmitrievsky:

Dove posso trovare informazioni su tale fusione in MQL? Vedo che le strutture POD a byte array e viceversa sono possibili. Non capisco molto della struttura dell'array.

Forum sul trading, sistemi di trading automatico e test di strategia

Biblioteche: TradeTransactions

fxsaber, 2019.03.15 07:36

// Быстрый кастинг массивов.
#include <fxsaber\TradeTransactions\Convert.mqh> // https://www.mql5.com/ru/code/22166

void OnStart()
{
  MqlTick Ticks[];

  MqlRates Rates[];  
  CopyRates(_Symbol, PERIOD_CURRENT, 0, 10, Rates); // Получили котировки.
  CONVERT::ArrayToArray(Rates, Ticks);              // Кастинг MqlRates[] -> MqlTick[].

  MqlRates Rates2[];    
  CONVERT::ArrayToArray(Ticks, Rates2);             // Кастинг MqlTick[] -> MqlRates[].
  ArrayPrint(Rates2);                               // Убедились, что все корректно.
}
 
fxsaber:

cioè è possibile convertire un array di strutture in un array di byte da passare a un socket? allora è strano perché lo structToChar standard non lo fa.


Motivazione: