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

 
Maxim Dmitrievsky:

Naturellement, vous pouvez aussi utiliser un testeur à travers les pips.

A quel point serait-il lent ?

 
forexman77:

A quel point sera-t-il lent ?

à quel point doit-il être lent ? ))

La connexion et le transfert de données sont presque instantanés, la quantité de calculs python détermine le ralentissement.
 
Maxim Dmitrievsky:

A quelle vitesse devez-vous aller ? ))

Eh bien, c'est reparti. Question à question)

Par exemple, j'ai essayé de prendre un script de R et d'en faire un ARIMA. J'ai effectué un seul test sur un graphique quotidien depuis 2004 jusqu'à la date actuelle. Le test a duré environ quatre minutes avec visualisation (c'était très long).

Par exemple, la durée d'un classificateur ou d'une régression est prise en compte, quel délai. Pouvez-vous le dire de cette façon ?

De plus, les données ont été traitées de manière incorrecte (avec R les données n'étaient périodiquement pas prêtes et l'indicateur demandait des données. J'ai essayé d'utiliser un délai. Ça n'a pas aidé. J'ai abandonné et je ne l'ai plus du tout utilisé).

Bien sûr, il est intéressant d'essayer différents réseaux neuronaux, classificateurs et autres avec différents paramètres dans MetaTrader, car la visualisation y est meilleure. Bien que je ne me fasse pas d'illusions à ce sujet.

Je teste tout en Python maintenant. Je me demande si ça vaut la peine de se donner la peine d'étudier tinker, PQT et autres pour faire un testeur multifonctionnel en Python.

 
forexman77:

Eh bien, c'est reparti. Question sur question)

Par exemple, j'ai essayé de prendre un script de R et d'en faire un ARIMA. J'ai effectué un seul test sur un graphique quotidien depuis 2004 jusqu'à la date actuelle. Le test a duré environ quatre minutes avec visualisation (c'était très long).

Par exemple, la durée d'un classificateur ou d'une régression est prise en compte, quel délai. Pouvez-vous le dire de cette façon ?

De plus, les données ont été traitées de manière incorrecte (avec R, les données n'étaient parfois pas prêtes et l'indicateur demandait des données. J'ai essayé d'utiliser un délai. Ça n'a pas aidé. J'ai baissé les bras et abandonné).

Je ne sais pas en millisecondes, vous pouvez le vérifier maintenant.

https://www.mql5.com/ru/articles/5691

Je n'ai pas fait de pips pour le testeur... pouvez-vous le faire ?

Соединение MetaTrader 5 и Python: получение и отправка данных
Соединение MetaTrader 5 и Python: получение и отправка данных
  • www.mql5.com
Сетевой сокет является конечной точкой межпроцессного взаимодействия через компьютерную сеть. В стандартной библиотеке MQL5 есть группа функций Socket, которые обеспечивают низкоуровневый интерфейс для работы в сети интернет. Этот интерфейс является общим для разных языков программирования, так как он использует системные вызовы на уровне...
 
Maxim Dmitrievsky:

non chronométrée en millisecondes, vous pouvez l'exécuter pour vérifier

https://www.mql5.com/ru/articles/5691

Eh bien, il n'y a aucun moyen de le faire dans le testeur... Je n'ai pas fait de pips pour le testeur... voulez-vous le faire ?

Bien sûr. La première question à se poser est la suivante : y a-t-il des poissons ? Pour le savoir, vous devez vérifier l'historique.

Seulement il me semble que, comme dans R il peut y avoir des difficultés, que j'ai décrites ci-dessus.

 
A mon avis, un NS complexe n'est pas nécessaire sur le marché, il n'a pas beaucoup d'intérêt. Mais lire des articles avec des exemples en Python est un jeu d'enfant.
 

J'ai déjà un Python complet connecté au terminal, et vous utilisez toujours des sockets et des pipes lents pour faire l'échange.

MetaTrader 5 (MQL5) + Python 3 DLL для Forex, CFD и Futures
  • roffild.com
Использование MetaTrader с Python 3 для Forex, CFD и Futures. Из MetaTrader можно получать котировки в Python, но нет полноценной связи между ними. Пост одного из разработчиков. Главная идея и отличие этой обертки от остальных: обмен данными между MQL и Python через заранее созданные функции. Это самый быстрый и надежный метод обмена данными...
 
Maxim Dmitrievsky:

Naturellement, vous pouvez aussi utiliser les pips dans le testeur.

Le client socket MQL5 de l'article "CONNECTING METATRADER 5 AND PYTHON : GETTING AND SENDING DATA" devrait recevoir cette structure du serveur socket python en message pour initier une demande de transaction ?

structMqlTradeRequest
{
ENUM_TRADE_REQUEST_ACTIONSaction;// Type d'action à effectuer
magique;// Timbre expert (numéro d'identification magique)
ulongorder;// Ordre des billets
chaîne de caractèressymbol;// Nom du symbole commercial
doublevolume;// Volume demandé de la transaction en lots
doubleprice;// Prix
doublestoplimit;// Niveau d'ordre StopLimit
doublesl;// Niveau de Stop Loss de l'ordre
doubletp;// Niveau de prise de profit de l'ordre
déviation de l'ulong;// Écart maximal acceptable par rapport au prix demandé
ENUM_ORDER_TYPEtype;// Type de commande
ENUM_ORDER_TYPE_FILLINGtype_filling;// Type de commande
ENUM_ORDER_TYPE_TIMEtype_time;// Type d'ordre par temps d'exécution
date d'expiration;// heure d' expiration(pour les ordres ORDER_TIME_SPECIFIED)
chaîne de caractèrescommentaire;// commentaire sur la commande
ulongposition;// Position du ticket
ulongposition_by;// Ticket de la position opposée
} ;

 
slukin:

Le client socket MQL5 de l'article "CONNECTING METATRADER 5 AND PYTHON : GETTING AND SENDING DATA" doit recevoir cette structure du serveur socket python en message pour initier une demande de transaction ?

structMqlTradeRequest
{
ENUM_TRADE_REQUEST_ACTIONSaction;// Type d'action
magique;// Timbre expert (numéro d'identification magique)
ulongorder;// Ordre des billets
chaîne de caractèressymbol;// Nom du symbole commercial
doublevolume;// Volume demandé de la transaction en lots
doubleprice;// Prix
doublestoplimit;// Niveau d'ordre StopLimit
doublesl;// Niveau de Stop Loss de l'ordre
doubletp;// Niveau de prise de profit de l'ordre
déviation de l'ulong;// Écart maximal acceptable par rapport au prix demandé
ENUM_ORDER_TYPEtype;// Type de commande
ENUM_ORDER_TYPE_FILLINGtype_filling;// Type de commande
ENUM_ORDER_TYPE_TIMEtype_time;// Type d'ordre par temps d'exécution
date d'expiration;// heure d' expiration(pour les ordres ORDER_TIME_SPECIFIED)
chaîne de caractèrescommentaire;// commentaire sur la commande
ulongposition;// Position du ticket
ulongposition_by;// Ticket de la position opposée
} ;

Une chaîne peut transmettre la commande et une liste de paramètres, séparés par des séparateurs. Lorsque l'Expert Advisor décortique le message, il sait ce qu'il doit faire.

 
forexman77:

Bien sûr que oui. La première question à se poser est la suivante : y a-t-il des poissons ? Pour le savoir, vous devez vérifier l'historique.

Seulement il me semble que, comme dans R, il peut y avoir des difficultés telles que décrites ci-dessus.

exactement comme ceci

pour ne pas s'engager dans une programmation vers nulle part, il faut d'abord formuler un objectif

au moins, c'est un bénéfice

et si le monde entier résout ce problème depuis longtemps, il est plus facile de trouver la réponse à la question d'abord, et seulement ensuite prog

en ce moment, le thème est l'exploration du produit et de ses possibilités.