Discussion de l'article "Comment créer votre propre Trailing Stop" - page 5

 
natyog:


oh comment ! question à question - c'est judicieux !

la position est ouverte par votre expert my_first_ea_sartrailing.mq5



Je ne me souviens pas de tout, c'est pourquoi je pose la question.

Vous devriez effacer la structure de la demande de transaction avant de la remplir : ZeroMemory( mrequest) ;

C'est ainsi qu'il faut procéder (en l'ajoutant à deux endroits) :

ZeroMemory( mrequest);      // добавить

mrequest.action = TRADE_ACTION_DEAL;  // есть

Ou mieux encore, supprimer complètement le remplissage de la structure et utiliser la classe CTrade standard
 
Dmitry Fedoseev:

Je ne me souviens pas de tout, c'est pourquoi je pose la question.

Vous devez nettoyer la structure de la demande d'échange avant de la remplir : ZeroMemory( mrequest) ;

C'est ainsi qu'il faut procéder (en l'ajoutant à deux endroits) :

ZeroMemory( mrequest);      // добавить

mrequest.action = TRADE_ACTION_DEAL;  // есть

Ou mieux encore, supprimez complètement le remplissage de la structure et utilisez la classe CTrade standard

L'effacement de la structure ZeroMemory( mrequest) ne change pas la situation :

Le testeur sort toujours

2017.08.25 12:47:50.311 2016.01.13 16:00:00 failed instant sell 0.10 EURUSD at 1.08275 sl : 1.08575 tp : 1.07275 [Invalid request]
2017.08.25 12:47:50.311 2016.01.13 16:00:00 Alert : Request to set Sell order failed - error code:4756

Dans l'Expert Advisor que vous avez pris pour exemple (my_first_ea.mq5) la classe CTrade standard n'est pas utilisée, mais la structure du trade zap est remplie.

Il est clair que les deux articles (le vôtre et https://www.mql5.com/fr/articles/100 ) ont été écrits pour les débutants.

En même temps, mon_first_ea.mq5 est toujours testé sans erreur, mais votre my_first_ea_sartrailing.mq5 ne l'est pas.

Pourquoi ?

Пошаговое руководство по написанию MQL5-советников для начинающих
Пошаговое руководство по написанию MQL5-советников для начинающих
  • 2010.06.09
  • Samuel Olowoyo
  • www.mql5.com
Написание советников на MQL5 проще чем кажется, вы легко можете этому научиться. В этом руководстве вы познакомитесь с основными моментами, необходимыми для написания простого советника на основе конкретной торговой стратегии. Рассмотрена структура советника, использование встроенных технических индикаторов и торговых функций, вопросы отладки и тестирования советника на исторических данных.
 

Pour une raison quelconque, après ZeroMemory(), les positions ont commencé à s'ouvrir.

 
Heureusement, c'est la première fois que cela arrive ?
 

Bonjour, j'ai besoin du code pour arrêter le Trailing Stop, disons que j'ai une position d'achat, le prix avance de 10 pips et je veux que le TS s'arrête à 5 pips et n'avance plus si le prix continue et est à 20 pips, le TS est toujours à 5 pips, merci.
 

Bonjour à tous. Et qui peut écrire un tel robot qui va traîner, même probablement pas traîner, mais fermer toutes les positions (à la fois ouvertes et en attente - cela peut être optionnel) lorsque le bénéfice sur toutes les positions ouvertes diminue jusqu'à une valeur donnée ! Exemple : le bénéfice sur toutes les positions ouvertes est de 200 USD et je ne veux pas perdre plus de 20 % de ce montant, c'est-à-dire que lorsque le bénéfice tombe à 160 USD, le conseiller expert fermera toutes les positions.

Je pense qu'il s'agit d'une question simple pour les programmeurs.

 
Igor Petrov:

***

Je pense que c'est une question simple pour les programmeurs.

Ce sont les phrases que les programmeurs détestent le plus. C'est pour référence future.

 
Vladimir Karputov:

Ce sont les phrases que les programmeurs détestent le plus. C'est une référence pour l'avenir.

D'accord, j'ai compris).

 
Igor Petrov:

D'accord, j'ai compris.)

Cherchez les mots "Trailing" "Balance" "Equity".

 
Bonjour. Le code passe les ordres mais ne modifie pas le stop loss. Quelles modifications dois-je apporter au code pour corriger cette erreur ?
Dossiers :
error.JPG  87 kb