Traitement des transactions (OnTradeTransaction) - page 7

 
fxsaber:

La présence des positions et des drapeaux DEAL_ENTRY ne doit en aucun cas intervenir dans la logique.

Oui, ils devraient...

Voici la situation : Nous avons une position de 1 lot et un ordre stop de 0,1 lot.

Un ordre stop est activé et nous obtenons une transaction TRADE_TRANSACTION_DEAL_ADD et DEAL_ENTRY_IN.

À la suite de cet événement, une partie de la position est fermée et une nouvelle transaction TRADE_TRANSACTION_DEAL_ADD mais avec DEAL_ENTRY_OUT est reçue.

Il y a donc un double type de transaction et la nécessité de contrôler le sens de la transaction.

 
Alexey Viktorov:

Vous devriez être impliqué...

Situation : Nous avons une position de 1 lot et un ordre stop de 0,1 lot.

Un ordre stop est activé et une transaction TRADE_TRANSACTION_DEAL_ADD et DEAL_ENTRY_IN est reçue.

À la suite de cet événement, une partie de la position est fermée et une nouvelle transaction TRADE_TRANSACTION_DEAL_ADD mais avec DEAL_ENTRY_OUT est reçue.

D'où le type de transaction double et la nécessité de contrôler le sens de la transaction.

Pour réfuter cette affirmation, il suffit d'exécuter le conseiller expert que j'ai cité. Malheureusement, c'est le week-end, donc ça ne marchera pas.

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie

Traitement des transactions (OnTradeTransaction)

fxsaber, 2019.02.08 17:41

Il est tout à fait possible d'avoir une position de compensation de zéro, mais il y a deux SL et deux TP.

 
fxsaber:

Pour réfuter cette affirmation, il suffit d'exécuter le conseiller que j'ai cité. Malheureusement, c'est le week-end, donc ça ne marchera pas.

Et qui interdit de vérifier si(!PositionSelectByTicket(trans.position)) et de supprimer ces positions en attente ???
 
Alexey Viktorov:
Et qui interdit de vérifier if(!PositionSelectByTicket(trans.position)) et de supprimer ces positions en attente ???

Situation étape par étape

  1. Limite d'achat et limite de vente initiales pour un lot, aucune position ouverte.
  2. Les déclencheurs BuyLimit - ses tendances SL/TP apparaissent. Une position d'achat ouverte correspond à un lot.
  3. SellLimit se déclenche - ses positions SL/TP apparaissent. Il n'y a pas de poste ouvert.
Pour les couvertures, cette situation est identique à celle où il y a deux positions opposées et où les positions SL/TP sont définies pour chacune d'elles. C'est exactement la même chose dans ce cas, sauf que dans Netting, les positions opposées ne sont pas visibles.

 
fxsaber:

Situation étape par étape

  1. Limite d'achat et limite de vente initiales pour un lot, aucune position ouverte.
  2. Les déclencheurs BuyLimit - ses tendances SL/TP apparaissent. Une position d'achat ouverte correspond à un lot.
  3. SellLimit se déclenche - ses positions SL/TP apparaissent. Il n'y a pas de poste ouvert.
Pour les couvertures, cette situation est identique à celle où il y a deux positions opposées et où les positions SL/TP sont définies pour chacune d'elles. C'est exactement la même chose dans ce cas, sauf que les positions de sens contraire ne sont pas visibles sur le filet.

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie

Traitement de l'opération OnTradeTransaction

Alexey Viktorov, 2019.02.09 12:10

Et qui interdit de vérifier if(!PositionSelectByTicket(trans.position)) et de supprimer ces ordres en attente???

 
Alexey Viktorov:

Pourquoi enlever quelque chose qui devrait rester ? Il s'agit d'une situation tout à fait normale lorsqu'il y a deux "positions" dirigées différemment avec leur SL/TP.

Vous ne semblez pas du tout comprendre la tâche ou vous la présentez comme primitive. Le conseiller expert doit toujours négocier, même si l'utilisateur a commencé à négocier avec ses mains en parallèle.


Article sur le sujet.

Разнонаправленная торговля и хеджирование позиций в MetaTrader 5 с помощью панели HedgeTerminal, часть 1
Разнонаправленная торговля и хеджирование позиций в MetaTrader 5 с помощью панели HedgeTerminal, часть 1
  • www.mql5.com
В последние полтора года компанией MetaQuotes была проведена масштабная работа по объединению торговых платформ MetaTrader 4 и MetaTrader 5 в единую трейдерскую экосистему. Теперь для обеих платформ существует общий рынок программных решений - Маркет, предлагающий различные программные решения от сторонних разработчиков. Компиляторы для обеих...
 

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie

Traitement des transactions (OnTradeTransaction)

fxsaber, 2019.02.09 12:14

Situation étape par étape.

  1. La limite d'achat et la limite de vente initiales pour un lot sont en place, aucune position ouverte.
  2. Le BuyLimit se déclenche - ses puts SL/TP apparaissent. Une position d'achat ouverte correspond à un lot.
  3. SellLimit se déclenche - ses positions SL/TP apparaissent. Il n'y a pas de poste ouvert.
Pour les couvertures, cette situation est identique à celle où il y a deux positions opposées et où les positions SL/TP sont définies pour chacune d'elles. C'est exactement la même chose dans ce cas, sauf que dans Netting, les positions opposées ne sont pas visibles.

fxsaber:

Pourquoi enlever quelque chose qui devrait rester ? Il est parfaitement normal d'avoir deux "positions" différentes avec leurs SL/TP.

Vous ne semblez pas du tout comprendre le problème ou le présenter comme primitif. L'Expert Advisor doit toujours trader, même si l'utilisateur commence à trader avec des mains en parallèle.
Vous ne voyez pas de contradictions ici ?
 
Alexey Viktorov:
Voyez-vous des contradictions ici ?

Je ne le vois pas. Les guillemets sont là pour une raison.

 
fxsaber:

Je ne le vois pas. Les guillemets sont là pour une raison.

Il n'y a donc pas de positions, ou bien elles sont entre guillemets ?

 
Alexey Viktorov:

Il n'y a pas de positions, ou elles sont entre guillemets ?

Regardez cette vidéo à partir de 01:35 et 03:35.