Discussion de l'article "Opérations trading en MQL5 - Combien facile" - page 2

 
Valmars:
Vous devriez quand même revoir le code avant de le publier.

Ce problème a été corrigé il y a longtemps, le jour même de la publication.
 
Valmars:

Je suis d'accord, les classes commerciales se sont suffisamment stabilisées maintenant. Alors pourquoi, tout en préconisant leur utilisation, les exemples incluent des fonctions pour obtenir les propriétés des instruments au lieu d'utiliser les méthodes de la classe CSymbolInfo. Cela semble incohérent.

Précisez ce que vous voulez dire. Si vous appelez à écrire des classes partout, certains nouveaux venus pourraient trouver cela compliqué et incompréhensible.
 
Rosh:
Ce problème a été résolu il y a longtemps, le jour même de la publication.
Je m'excuse, j'ai ouvert l'article immédiatement, mais je ne l'ai lu que maintenant.
 
Rosh:
Clarifiez ce que vous voulez dire. Si vous appelez à écrire des classes partout, certains nouveaux venus pourraient trouver cela compliqué et incompréhensible.

En fait, ce n'est pas moi qui vous incite à utiliser les classes dela "Standard Library" dans la citation ci-dessus, je suis seulement d'accord. Bien sûr, c'est une question de goût.

Dans un EA un peu complexe, il y a beaucoup de références aux propriétés des symboles et en créant une instance de la classe CSymbolInfo, nous simplifions les références à ces propriétés et la perception du programme. C'est mon avis.

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 

Je m'excuse, je ne savais pas où poser cette question et j'ai décidé de la poser ici, je pense que le sujet est approprié.

Comment puis-je clôturer en une seule fois tous les ordres ouverts soit uniquement à la vente, soit uniquement à l'achat ?

 
nskforward:

Je m'excuse, je ne savais pas où poser cette question et j'ai décidé de la poser ici, je pense que le sujet est approprié.

Comment puis-je clôturer tous les ordres ouverts à la vente ou à l'achat en une seule fois ?

Dans MetaTrader 5, il ne peut y avoir qu'une seule position ouverte pour chaque instrument. Peut-être voulez-vous dire fermer toutes les positions pour tous les instruments ?
 

Bonjour,
Lors de l'utilisation de la fonction BuyStop dans le code pour négocier les futures RTS-3.13 (RIH3), une erreur continue de se produire :
10022 TRADE_RETCODE_INVALID_EXPIRATION - Date d'expiration de l'ordre non valide.

Dans la spécification des futures RTS-3.13, il est spécifié que le type d'ordre - Valable jusqu'à l'annulation. dans la file d'attente jusqu'à ce qu'il soit annulé.
J'ai essayé d'utiliser d'autres types ORDER_TIME_DAY, ORDER_TIME_SPECIFIED, ORDER_TIME_SPECIFIED_DAY - l'erreur ne disparaît pas .


Une partie du code :

   int    digits = (int)SymbolInfoInteger(Ticket,SYMBOL_DIGITS);// nombre de décimales
   double point  = SymbolInfoDouble(Ticket,SYMBOL_POINT);       // para.
   double ask    = SymbolInfoDouble(Ticket,SYMBOL_ASK);         // prix d'achat actuel
   double price= 1000 * point;                                  // prix d'ouverture non normalisé
   price  = NormalizeDouble(price, digits);                     // normaliser le prix d'ouverture
   //prix = NormalizeDouble(ask + 1000, digits) ; // ? ???
   Print("digits=", IntegerToString(digits), " point=", DoubleToString (point, 0), " ask=", DoubleToString (ask, 0),
         " price=", DoubleToString (price, 0));    
//--- tout est prêt, envoyer un ordre d'achat stop en attente au serveur 
   if(!m_Trade.BuyStop(1, price, Ticket))
     {
      Print("La méthode BuyStop() a échoué. Code de retour="", m_Trade.ResultRetcode(),
            ". Description du code : ",m_Trade.ResultRetcodeDescription());
     }
   else
     {
      Print("La méthode BuyStop() a été exécutée avec succès. Code de retour="",m_Trade.ResultRetcode(),
            " (",m_Trade.ResultRetcodeDescription(),")");
     }

Dans le journal du testeur de stratégie de l'entrée :

2012.12.18 19:44:59   digits=0 point=1 ask=151830 price=1000
2012.12.18 19:44:59   failed buy stop 1.00 RTS-3.13 at 1000 [Invalid expiration]
2012.12.18 19:44:59   CTrade::OrderSend: buy stop 1.00 RTS-3.13 at 1000 [invalid expiration]
2012.12.18 19:44:59   Метод BuyStop() потерпел неудачу. Код возврата=10022. Описание кода: invalid expiration

Quel peut être le problème ? Veuillez me donner un indice.
Je vous serais reconnaissant de répondre à l'e-mail nfo52^mail.ru, ICQ UIN : 4002787, skype : osipov52.

Je vous remercie.

Win7 64 fois, MT5, compte démo DB Otkrytie.

 
Nikos52:

Bonjour,
Lors de l'utilisation de la fonction BuyStop dans le code pour négocier les futures RTS-3.13 (RIH3), une erreur continue de se produire :
10022 TRADE_RETCODE_INVALID_EXPIRATION - Date d'expiration de l'ordre non valide.

Dans la spécification des futures RTS-3.13, il est spécifié que le type d'ordre - Valable jusqu'à l'annulation. dans la file d'attente jusqu'à ce qu'il soit annulé.
J'ai essayé d'utiliser d'autres types ORDER_TIME_DAY, ORDER_TIME_SPECIFIED, ORDER_TIME_SPECIFIED_DAY - l'erreur ne disparaît pas .


Une partie du code :

Dans le journal du testeur de stratégie de l'entrée :

Quel peut être le problème ? Veuillez me donner un indice.
Je vous serais reconnaissant de répondre à l'e-mail nfo52^mail.ru, ICQ UIN : 4002787, skype : osipov52.

Je vous remercie.

Win7 64 razr, MT5 , compte de démonstration DB Discovery.

Problème similaire sur RTS-3.13 Otkritie-demo, j'ai tout essayé (alors que les ordres limites sont réglés sur ORDER_TIME_SPECIFIED_DAY comme indiqué dans le profil du symbole) ! !!!. Alors que l'ordre d'achat-stop est parfaitement ouvert sur le marché manuellement. Il s'agit d'un problème de terminal, vous devriez écrire aux développeurs.
 
Oui, on ne peut pas faire plus simple ! Ils ont compris beaucoup de choses, et pourtant ils utilisent des bibliothèques standard, et s'ils s'en passent, pour ainsi dire, ils partent de zéro ???? La façon la plus simple et la plus rapide de programmer un Expert Advisor sur MQl4 !!!! Mon EA sur mql4 prend 70 lignes, je l'ai réécrit sur mql5, et il s'est avéré être 198 !!!!!!. Le titre avec le mot "simple" n'est donc pas approprié.
Как использовать торговые классы Стандартной библиотеки при написании советника
Как использовать торговые классы Стандартной библиотеки при написании советника
  • 2010.11.10
  • Samuel
  • www.mql5.com
В статье рассказывается о том, как использовать основной функционал торговых классов Стандартной библиотеки при написании советников, в которых применяется открытие, закрытие и модификация позиции, проверка свободной маржи перед размещением торговых ордеров, размещение и удаление отложенных ордеров. Показано, как использовать торговые классы для получения свойств ордеров и сделок.
 
zlodei:
...Mon EA mql4 prend 70 lignes, je l'ai réécrit en mql5, et il s'est avéré être 198 !!!!!! Le titre avec le mot "simple" n'est donc pas approprié.
Ceci si l'idée de l'EA n'est pas compliquée. A mon avis, plus l'idée est complexe, plus la différence dans le nombre de lignes de code entre MQL4 et MQL5 sera en faveur de ce dernier. Je ne serais donc pas aussi catégorique....