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

 
Vitaly Muzichenko #:

Cela dépend de la séquence de chevauchement, la dernière en haut.

Définir d'abord le tampon avecDRAW_FILLING

Étonnamment, ça a marché ! Je pensais que cette astuce ne concernait que les tampons d'un indicateur, mais il s'avère qu'elle est la même pour tous.

Merci !

 
Vitaly Muzichenko #:

Merci beaucoup, je vais essayer

 
Les commentaires non liés à ce sujet ont été déplacés vers "Questions des débutants de MQL4 MT4 MetaTrader 4".
 

Optimisation :

"Tous les ticks" et"Tous les ticks basés sur des ticks réels" sont la même chose ? Lequel est le plus crédible, si le test est en cours depuis 2012 ?


Dans le premier cas, le terminal écrit "96% de qualité historique", dans le second "26% de ticks réels".

 
Ivan Butko #:

Optimisation :

"Tous les ticks" et"Tous les ticks basés sur des ticks réels" sont la même chose ? Lequel est le plus crédible, si le test est en cours depuis 2012 ?


Dans le premier cas, le terminal écrit "96% de qualité historique", dans le second "26% de ticks réels".

Lisez les journaux - et vous verrez de quelle année datent les véritables tics. En règle générale, les tics sont réels pour les trois dernières années.

 
Vladimir Karputov #:

Lisez les journaux - et vous verrez de quelle année proviennent les véritables tiques. Il y a généralement des tics réels pour les trois dernières années.

Je vois, donc les ticks réels sont meilleurs, même si ça dit 26% contre 96%. Le dernier chiffre est plus joli)

Pouvez-vous également me dire comment sélectionner le dernier tick dans l'historique ? Ou le dernier échange. J'ai besoin de savoir comment il s'est fermé : sur arrêt ou non.

Essayer quelque chose, sans succès.

    int Last_deal_ticket = 0;
    for(int cnt=PositionsTotal()-1;cnt>=0;cnt--)
      {
        if(PositionSelectByTicket(PositionGetTicket(cnt)))
        if(PositionGetSymbol(cnt)==Symbol() && PositionGetInteger(POSITION_MAGIC)==Magic_number)
        Last_deal_ticket=PositionSelectByTicket(PositionGetTicket(cnt));
      }
    // потом, когда закроется, будет висеть с этим тикетом в истории
    // обращаемся к истории
    HistorySelectByPosition(Last_deal_ticket);
    if (HistoryDealGetString(Last_deal_ticket, (ENUM_DEAL_PROPERTY_STRING)DEAL_REASON)==DEAL_REASON_SL......... )


 
Ivan Butko #:

Je l'ai, donc les vrais ticks sont meilleurs, même si ça dit 26% contre 96%. Le dernier numéro est plus joli)

Non, tu ne comprends pas.

1. Les tiques réelles donnent une image réelle lorsqu'elles sont testées.

2. Sinon, dans votre cas, de 2012 à (à peu près 2018), passez à "tous les ticks", et seulement ensuite à "tous les ticks basés sur des ticks réels".

3. Insérez le code correctement : D'abord le bouton Code et ensuite insérez le code dans la fenêtre pop-up !!!

 
Vladimir Karputov #:

Non, vous ne comprenez pas.

1. Les tics réels donnent l'image réelle lorsqu'ils sont testés.

2. Sinon, dans votre cas, de 2012 à (à peu près 2018), passez à "tous les ticks", et seulement ensuite à "tous les ticks basés sur des ticks réels".

3. Insérez le code correctement : D'abord le bouton et ensuite insérez le code dans la popup !!!

Je l'ai eu, merci.

 
Ivan Butko #:


Pouvez-vous me dire comment sélectionner le dernier ticket dans l'historique ? Ou le dernier échange. J'ai besoin de savoir comment ça s'est fermé : par arrêt ou pas.

Je tente quelque chose, je ne peux pas.

J'ai en quelque sorte saisi la dernière transaction dans l'historique et j'ai essayé de vérifier comment elle s'est terminée.

Print("Last deal close = ", HistoryDealGetInteger(Last_deal_ticket,DEAL_REASON)); 

Journal de bord

Dernière transaction conclue = 3


J'ai regardé la documentation et il y a

Identifiant

Description

DEAL_REASON_CLIENT

La transaction a été exécutée à la suite d'un ordre déclenché depuis le terminal de bureau.

DEAL_REASON_MOBILE

La transaction a été exécutée à la suite d'un ordre déclenché depuis l'application mobile.

DEAL_REASON_WEB

L'opération a été exécutée à la suite d'une commande passée depuis la plateforme web.

EXPERT DE LA RAISON DES AFFAIRES

La transaction est exécutée à la suite d'un ordre déclenché par le programme MQL5 - Conseiller expert ou script.

DEAL_REASON_SL

La transaction a été exécutée à la suite du déclenchement d'un ordre "Stop Loss".


5 premières lignes.

Je ne comprends pas ce que cela signifie : si on compte à partir de 1, alors 3 estDEAL_REASON_WEB, ce qui est faux. Si elle est égale à zéro, alorsDEAL_REASON_EXPERT. Mais, je ne comprends pas maintenant comment savoir dans quel trade le stop loss s'est produit.

Veuillez m'aider.

 
Ivan Butko #:

Il semble avoir capturé la dernière transaction de l'histoire, j'ai essayé de voir comment elle s'est terminée.

Journal de bord

Last_deal_ticket = 3


J'ai regardé la documentation, il y a

ID

Description

DEAL_REASON_CLIENT

La transaction a été exécutée à la suite d'un ordre déclenché depuis le terminal de bureau.

DEAL_REASON_MOBILE

La transaction a été exécutée à la suite d'un ordre déclenché depuis l'application mobile.

DEAL_REASON_WEB

La transaction est exécutée à la suite d'un ordre passé depuis la plateforme web.

EXPERT DE LA RAISON DES AFFAIRES

La transaction est exécutée à la suite d'un ordre déclenché par le programme MQL5 - Conseiller expert ou script.

DEAL_REASON_SL

La transaction a été exécutée à la suite du déclenchement d'un ordre "Stop Loss".


5 premières lignes.

Je ne comprends pas ce que cela signifie : si on compte à partir de 1, alors 3 estDEAL_REASON_WEB, ce qui est faux. Si elle est égale à zéro, alorsDEAL_REASON_EXPERT. Mais, je ne comprends pas maintenant comment savoir dans quel trade le stop loss s'est produit.

Veuillez m'aider.

Vous utilisez une énumération ENUM_DEAL_REASON. Vous ne devez pas comparer un enum avec n'importe quel chiffre, vous devez le comparer avec un enum. Voici un exemple qui accède à l'historique des transactions (bien que dans OnTradeTransaction) et détecte le déclenchement des Stop Loss et Take Profit :

Exemple : suivi du déclenchement d'un Stop Loss ou d'un Take Profit.

How to start with MQL5
How to start with MQL5
  • 2020.09.17
  • www.mql5.com
This thread discusses MQL5 code examples. There will be examples of how to get data from indicators, how to program advisors...
Raison: