MetaTrader 5 Python User Group - Comment utiliser Python dans Metatrader - page 5

 
Maxim Dmitrievsky:

Je l'ai fait sur les ticks, en filtrant toutes sortes de choses et ensuite sur les prix d'ouverture - je n'ai pas remarqué une grande différence dans l'ajustement. Sur les minutes, le rand moyen est petit comme il est. Et le système se plante plus souvent, parce qu'il faut beaucoup de temps pour s'adapter sur une longue période, oui. En conséquence, les 15 (parfois 5) minutes optimales me hantent. Je n'ai pas fait d'algo plus rapide en raison de mon manque de connaissances théoriques sur le tethering et le traitement du signal (à bas niveau, c'est la règle), mais je vais peut-être essayer bientôt.

Tout sera plus lent à tester sur python. Si toutes les choses inutiles sont supprimées, cela pourrait être correct.
J'utilise également les prix de clôture, mais sur m1 pour économiser les ressources. Les tics ne signifient rien sur le forex de toute façon. J'aimerais utiliser les ticks et l'analyse des transactions effectuées sur les données d'échange, mais je n'ai pas encore eu le temps de le faire. Mais parfois, j'ai besoin de l'exécuter dans le testeur en utilisant de vrais ticks afin de comparer le fonctionnement de l'algorithme dans des données réelles en conjonction avec le testeur.
 
Renat Fatkhullin:

Il s'agit d'une intégration à sens unique.

C'est-à-dire qu'à partir de Python/R, vous pouvez demander des données au terminal MetaTrader 5. Le terminal lui-même ne sait rien des utilisateurs externes et ne leur transmet rien. D'autant plus de la part du testeur.

Les paquets d'intégration sont conçus pour permettre aux analystes d'utiliser les données du marché dans leur environnement.

Merci ! C'est ce que je voulais découvrir.
 
Maxim Romanov:
J'utilise également les prix de clôture, mais sur m1 pour économiser des ressources. Les tics ne signifient rien sur le forex de toute façon. Je voulais utiliser les ticks et l'analyse des transactions effectuées dans les données d'échange, mais je n'ai pas encore eu le temps de le faire. Mais parfois, j'ai besoin de l'exécuter dans le testeur en utilisant de vrais ticks pour comparer comment l'algorithme fonctionne dans des données réelles en combinaison avec le testeur.

mon imma est que les ticks sont des hft avec toutes les implications, c'est à dire une approche différente. Travailler avec des flux de ticks provenant de plusieurs sources (symboles). En forex, c'est presque irréaliste à long terme, trop toxique. Sur le marché des changes, ce n'est pas très bon non plus, il y a déjà des traders compétents assis sur la table de colocation et qui tuent vos stratégies avec leur flux d'ordres. En fin de compte, quelque chose entre les deux, à moitié plein de bruit, mais grâce au MO, vous pouvez le retirer. Eh bien, le MO moyen / long est également OK, mais le bénéfice diminuera proportionnellement.

 
Maxim Dmitrievsky:

mon imma est que les ticks sont des hft avec toutes les implications, c'est à dire une approche différente. Travailler avec des flux de ticks provenant de plusieurs sources (symboles). En forex, c'est presque irréaliste à long terme, trop toxique. Sur le marché des changes, ce n'est pas très bon non plus, il y a déjà des traders compétents assis sur la table de colocation et qui tuent vos stratégies avec leur flux d'ordres. En fin de compte, quelque chose entre les deux, à moitié plein de bruit, mais grâce au MO, vous pouvez l'enlever. Eh bien, un MO moyen-long est également acceptable, mais les bénéfices diminueront proportionnellement.

Le lien entre les ticks et le HFT est un mythe. Les tics sont un moyen d'augmenter l'attente de maturité du TS. Rien de plus. Si l'augmentation du MO de 5 pips est réussie, toutes choses égales par ailleurs, c'est un excellent résultat. Bien sûr, nous parlons de centaines de transactions par mois.

 
C'est un bon point. Un graphique en tic-tac, pas un caprice, pas des rêves de HFT, et ainsi de suite, mais juste de la précision.
 
fxsaber:

Le lien entre les ticks et le HFT est un mythe. Les tics sont un moyen d'élever l'attente de maturité du TS. Rien de plus. S'il est possible d'augmenter le MO de 5 pips, toutes choses égales par ailleurs, c'est un excellent résultat. Bien sûr, nous parlons de centaines de transactions par mois.

Sinon, 5 pips n'auraient pas un tel effet. En termes de trading DT (sans compter que vous en avez un spécial), il s'agit d'une erreur statistique.

mais allez, le sujet est sur python
 
fxsaber:

Le casting de tableau d'octets en tableau de structures (et inversement) en Python sera-t-il présent ?

Où puis-je trouver des informations sur ce type de moulage dans MQL ? Je vois que le POD des structures vers un tableau d'octets et inversement est possible. Je ne comprends pas grand-chose à la structure du tableau.

Si vous les copiez séquentiellement à partir du tableau, mais que vous devez comprendre le protocole, comment traiter le flux d'octets de l'autre côté. Je ne sais pas comment faire ça intelligemment.

 
Maxim Dmitrievsky:

Où puis-je trouver des informations sur ce type de moulage dans MQL ? Je vois que les structures POD vers les tableaux d'octets et vice versa sont possibles. Je ne comprends pas grand-chose à la structure du tableau.

Si vous les copiez séquentiellement à partir du tableau, mais que vous devez comprendre le protocole, comment traiter le flux d'octets de l'autre côté. Je ne sais pas comment faire ça intelligemment.

comme d'habitude octet par octet, la bibliothèque Python possède un paquet qui représente les types fondamentaux sous une forme pure, par exemple, lire le tableau d'octets reçu à l'offset correct sur la structure de données, et la section lue convertie au format souhaité

 
Maxim Dmitrievsky:

Où puis-je trouver des informations sur ce type de moulage dans MQL ? Je vois que les structures POD vers les tableaux d'octets et vice versa sont possibles. Je ne comprends pas grand-chose à la structure du tableau.

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie

Bibliothèques : 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:

C'est à dire qu'il est possible de convertir un tableau de structure en un tableau d'octets pour le passer à une socket ? alors il est étrange que le standard structToChar ne le fasse pas.