Questions des débutants MQL5 MT5 MetaTrader 5 - page 1062

 

L'auteur de ce texte, d'après ce que j'ai compris, ne vient pas de Russie, je crains qu'il n'y ait pas de réponse.

Je vais donc demander de l'aide ici.

Comment réparer l'avertissement :

perte éventuelle de données due à la conversion de type

Dans ce script.

https://www.mql5.com/ru/articles/download/5204/scraperbot04.mq5

 
erotin:

L'auteur de ce texte, d'après ce que j'ai compris, ne vient pas de Russie, je crains qu'il n'y ait pas de réponse.

Je vais donc demander de l'aide ici.

Comment réparer l'avertissement :

perte éventuelle de données due à la conversion de type

Dans ce script.

https://www.mql5.com/ru/articles/download/5204/scraperbot04.mq5

Essayez ceci

f_US=(float)StringToDouble(StringSubstr(CharArrayToString(ch_Buffer),i,8));
 


Ai-je bien compris que dans mql5, il n'y a pas de positions dans l'historique, et qu'il n'y a que des transactions ? A en juger par la présence de HistoryDealsTotal() et l'absence de HistoryPositionsTotal().

Pourquoi alors, dans l'onglet Historique du terminal, vous pouvez sélectionner "Positions" et elles sont visibles dans l'historique ?

Comment obtenir le prix de clôture des positions dans cet historique ?


 
secret:

Ai-je bien compris que dans mql5, il n'y a pas de positions dans l'historique, et qu'il n'y a que des transactions ? A en juger par la présence de HistoryDealsTotal() et l'absence de HistoryPositionsTotal().

Oui.

Pourquoi alors, dans l'onglet Historique du terminal, vous pouvez sélectionner "Positions" et elles sont visibles dans l'historique ?

C'est l'une des tentatives d'interprétation de l'histoire en tant que positions. À mon avis, ce n'est pas le plus réussi.

Comment obtenir le prix de clôture des positions dans cet historique ?

Je fais ce qui suit sur la haie.

#property script_show_inputs

#include <MT4Orders.mqh> // https://www.mql5.com/en/code/16006

input TICKET_TYPE PositionTicket = 0;

void OnStart()
{
  if (OrderSelect(PositionTicket, SELECT_BY_TICKET))
    OrderPrint();
}
 
Alekseu Fedotov:

Essayez ceci

Merci.
 
fxsaber Oui.

Il s'avère que pour imprimer le profit d'une transaction ouverte, vous devez travailler avec une liste et un ticket, et pour imprimer le profit de la même transaction mais fermée, vous devez travailler avec une autre liste et un autre ticket ?

 
secret:

Il s'avère que pour imprimer le profit d'une transaction ouverte, vous devez travailler avec une liste et un ticket, et pour imprimer le profit de la même transaction mais fermée, vous devez travailler avec une autre liste et un autre ticket ?

Je ne comprends pas la question.

 
secret:

Il s'avère que pour imprimer le profit d'une transaction ouverte, vous devez travailler avec une liste et un ticket, et pour imprimer le profit de la même transaction mais fermée, vous devez travailler avec une autre liste et un autre ticket ?

Chaque ordre et chaque transaction possède son propre ticket, mais aussi ORDER_POSITION_ID et DEAL_POSITION_ID, respectivement. C'est ce qui détermine leur appartenance ou non à un poste.

 
secret:

Comment obtenir le prix de clôture des positions dans cette histoire ?

Vous devez également être bien conscient que ce prix de clôture, même sur une couverture, peut avoir plus de décimales que de chiffres.


Et il n'est pas nécessaire qu'il soit proche du prix du symbole au moment de la clôture de la position.

Les développeurs ont voulu faire une analogie avec l'histoire de MT4, mais ils ont échoué.

Lorsque je veux visualiser l'historique des transactions dans le terminal, j'utilise l'extension GUI. Il affiche les positions historiques comme dans MT4. Les prix de clôture correspondent à l'heure de clôture, etc.

Les positions historiques sont donc une convention qui peut faire l'objet de différentes interprétations.
 
fxsaber:

Je ne comprends pas la question.

Pour calculer le bénéfice d'une transaction, vous avez besoin, entre autres, du prix d'ouverture. Lorsque la transaction est ouverte, le prix ouvert doit être pris dans la liste des positions pour le ticket de position. Et lorsque la transaction est clôturée, le même prix ouvert doit être pris dans une autre liste (transactions, pas positions) pour un autre ticket. N'est-ce pas ?