Erreurs, bugs, questions - page 385

 
stringo:
Vous appelez l'indicateur ?
Oui, dans l'indicateur.
 
Dima_S:
Oui, dans un indicateur.

Dans les indicateurs, il est interdit d'appeler certaines fonctions qui consomment des ressources informatiques et ralentissent le calcul - fonctions de commerce, Sleep, MessageBox

Документация по MQL5: Торговые функции
Документация по MQL5: Торговые функции
  • www.mql5.com
Торговые функции - Документация по MQL5
 

Bonjour !

Voici une question : sur quel serveur puis-je tester différents types d'exécution ?

DEMANDE_DE_TRANSACTION_DE_SYMBOLE

Commerce sur demande

SYMBOL_TRADE_EXÉCUTION_INSTANTANÉE

Commerce à des prix de flux

MARCHÉ_DE_L'EXÉCUTION_DES_SYMBOLES

Exécution_exécution des ordres sur le marché

Exécution au prix du flux uniquement. Nous devons déboguer le code par le marché et par demande.

Oui, le code est en MQL5, bien sûr.

Merci !

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 
stringo:

Dans les indicateurs, l'appel de certaines fonctions qui consomment des ressources informatiques et ralentissent le calcul est interdit - fonctions commerciales, Sleep, MessageBox

Je vois. Je vais donc devoir le calculer manuellement. Bien que dans MT4 cette fonction
MarketInfo("EURUSD",MODE_MARGINREQUIRED)

et fonctionne bien dans l'indicateur.

 
Dima_S:
Je vois. Nous devrons donc le calculer manuellement. Bien que dans MT4 cette fonction

et dans l'indicateur fonctionne bien.

SymbolInfoDouble(MarketInfo) est une simple demande d'informations existantes. Et OrderCalcMargin - une fonction de calcul (dans la croix ou le symbole manquant, elle peut demander l'information manquante au serveur, avec toutes ses conséquences)

 

Bonjour !

1. L'événement de défilement du graphique sera-t-il ajouté à la liste des événements OnChartEvent() ?

2. Pourquoi la fonction CopyBuffer placée dans un indicateur personnalisé provoque-t-elle l'erreur 4806 ?

alors que la même fonction avec les mêmes paramètres dans le code du conseiller expert fonctionne bien ?

Переход на новые рельсы: пользовательские индикаторы в MQL5
Переход на новые рельсы: пользовательские индикаторы в MQL5
  • 2009.11.23
  • Андрей
  • www.mql5.com
Я не буду перечислять все новые возможности и особенности нового терминала и языка. Их действительно много, и некоторые новинки вполне достойны освещения в отдельной статье. Вы не увидите здесь кода, написанного по принципам объектно-ориентированного программирования — это слишком серьезная тема для того, чтобы просто быть упомянутой в контексте как дополнительная вкусность для кодописателей. В этой статье остановимся подробней на индикаторах, их строении, отображении, видах, а также особенностях их написания по сравнению с MQL4.
 

Il y a aussi une question. Je voudrais connaître l'heure de fin de la séance de négociation d'un outil le vendredi.

J'utilise cette fonction à cette fin :

  datetime bt,et;
  SymbolInfoSessionTrade("EURUSD",FRIDAY,0,bt,et);

Mais pour une raison quelconque, cette fonction renvoie toujours un faux. Je ne comprends pas ce qu'est le numéro de session et où puis-je l'obtenir ?

Документация по MQL5: Получение рыночной информации / SymbolInfoSessionQuote
Документация по MQL5: Получение рыночной информации / SymbolInfoSessionQuote
  • www.mql5.com
Получение рыночной информации / SymbolInfoSessionQuote - Документация по MQL5
 
bobsley:

Il y a aussi une question. Je voudrais connaître l'heure de fin de la séance de négociation d'un outil le vendredi.

J'utilise cette fonction à cette fin :

Mais pour une raison quelconque, la fonction renvoie toujours un faux. Le numéro de session n'est pas clair et on ne sait pas où l'obtenir ?

D'après ce que j'ai compris, par sessions, on entend les sessions de négociation et de cotation au cours d'une journée. Mais il n'y a qu'une seule session configurée sur le serveur (peut être seulement pour les devises) - 0.

Physiquement, vous pouvez déterminer l'heure de début et de fin de la transaction dans les propriétés de l'instrument (sur le serveur MQ, c'est 00:00 - 24:00).

Vous pouvez l'obtenir de manière programmatique en utilisant SymbolInfoSessionTrade(). Mais une chose est sûre, il ne donnera pas la date exacte du début et de la fin de la session, mais la valeur relative en secondes depuis le début de la journée jusqu'au moment du début et de la fin de la session (si elle est traduite en secondes bien sûr).

bool InfoSession;
datetime from = -1,to = -1;

InfoSession = SymbolInfoSessionTrade(Symbol(),FRIDAY,0,from,to);

  if(InfoSession)
  {
  Print("Session: from ",from," to ",to);
  Print("Session: from ",(int)from," to ",(int)to);
  }
C'est l'exemple qui produit le résultat suivant -
2011.05.14 19:51:02 ******* Session: from 1970.01.01 00:00:00 to 1970.01.02 00:00:00
2011.05.14 19:51:02 ******* Session: from 0 to 86400

Par conséquent, pour déterminer la fin de la session de trading le vendredi, nous devons définir la date de début du compte à rebours (00:00 vendredi concret) et ajouter à ce temps le résultat que la fonction a retourné comme heure de fin de session.

PS

Il faut également tenir compte du fait que le serveur ferme généralement la session avec un décalage de +/- 1 à 2 secondes.

L'influence de l'heure d'été ou d'hiver est également une question, mais si mes yeux ne mentent pas à la clôture du week-end, les dernières cotations ont été reçues à 23:00:00 et 23:00:01 (selon le symbole).

 

Développeurs !

Veuillez prêter attention à ma demande #105082.

Il y a des problèmes de compilation des bibliothèques utilisant le modificateur d'exportation!

 

construire 448
En essayant d'ouvrir les propriétés de la fenêtre
ou les propriétés de tout indicateur,
ou essayer d'installer un indicateur sur le graphique,
Le terminal du client se ferme.
W XP3 32

À mon avis, c'est la "meilleure" mise à jour de toutes.