Aide à la stratégie EMA

7 réponses

Daviden1

Abonné, bbp_participant, communauté, 14 réponses.

Visiter le profil

il y a 11 ans #110930

Bonjour à tous,

Je travaille sur une stratégie EMA simple où le trade commence dès que l'Ema rapide croise l'EMA basse.

J'ai déjà défini le S/L et le Trailing Stop, mais j'aimerais créer un S/L supplémentaire qui devrait fonctionner dans le cas suivant :

Long Trade : Si la bougie clôture en dessous du Slow Ma
Short Trade : si la bougie clôture au-dessus du Slow Ma

J'ai saisi le code suivant dans l'assistant pour créer ce S/L, mais il semble que j'ai fait quelque chose de mal, car je n'ai pas obtenu ce que j'espérais :

Si :

OrderPosition(Magic Number) is Long
et : isBaropen est True
et close[1] <SlowEma

Ensuite :

Position de fermeture (nombre magique)

Qu'est-ce que j'ai fait de mal exactement et comment puis-je faire fonctionner ce S/L ?

Merci d'avance pour votre aide et joyeux Noël.

David

0

stearno

Client, bbp_participant, communauté, 379 réponses.

Visiter le profil

il y a 11 ans #121067

La seule chose que je peux penser qui pourrait être le problème est que vous avez 2 règles en compétition l'une contre l'autre pour mettre un stop loss à un prix lorsque les conditions sont remplies et un trailing stop loss de la règle principale. Ainsi, dans votre règle principale, il est dit que le stop loss doit être déplacé à 1,5028 par le trailing stop loss et ensuite une autre règle où le Close est < SlowEMA dit que le stop loss doit être à 1,5018.

Je suggérerais d'essayer de supprimer le trailing stop loss de la règle principale, de créer une règle supplémentaire qui place le trailing stop loss comme vous le souhaitez et ensuite cet autre trailing stop loss si la clôture est < slowEma. Ce serait donc comme :

[u][b]Règle d'entrée principale[/b][/u]
* Supprimer le stop suiveur. Le système doit définir l'objectif de profit et le stop loss initial.

[u][b]Trailing Stop 1[/b][/u]
* Mettre des conditions sur la façon dont vous voulez que le stop suiveur soit géré. Cela peut ressembler à ce qui suit :
SI
[indent=1][color=#282828][font=helvetica, arial, sans-serif]OrderPosition(Magic Number) is Long[/font][/color]
[color=#282828][font=helvetica, arial, sans-serif]and : isBaropen is True[/font][/color]
[color=#282828][font=helvetica, arial, sans-serif]et close[1] > SlowEma[/font][/color][/indent]
Dans ce cas
[indent=1]Saisissez votre stop loss de suivi[/indent]

[u][b]Trailing Stop 2[/b][/u]
SI
[indent=1][color=#282828][font=helvetica, arial, sans-serif]OrderPosition(Magic Number) is Long[/font][/color]
[color=#282828][font=helvetica, arial, sans-serif]and : isBaropen is True[/font][/color]
[color=#282828][font=helvetica, arial, sans-serif]et close[1] < SlowEma[/font][/color][/indent]
Dans ce cas
[indent=1]Saisissez votre stop loss de suivi[/indent]

Maintenant, je pense que vous n'aurez pas de concurrence pour le trailing stop loss et qu'une règle contrôlera le trailing stop à la fois en fonction des conditions qui sont remplies. Vous pouvez essayer cela et voir si cela résout le problème.

0

Daviden1

Abonné, bbp_participant, communauté, 14 réponses.

Visiter le profil

il y a 11 ans #121069

Merci Stearno,

Le fait est que je n'ai pas de stop suiveur dans mes règles d'entrée principales, en fait, dans mes règles d'entrée je n'ai que le stop loss.
Ensuite, j'ai ajouté une règle supplémentaire, comme vous l'avez suggéré, avec de nouvelles règles pour le Trailing stop et, maintenant, j'essaie de créer ce nouveau Stop Loss qui devrait fonctionner lorsque la clôture croise ou est en dessous de la slowMA.

Si le code que j'utilise n'est pas erroné, il est probable, comme vous l'avez dit, qu'une autre règle entre en concurrence avec cette nouvelle règle pour les S/L.

Existe-t-il un code que je puisse ajouter à ceux mentionnés ci-dessus pour éviter le conflit de règles.

Merci encore

0

stearno

Client, bbp_participant, communauté, 379 réponses.

Visiter le profil

il y a 11 ans #121070

D'accord, c'est bien. Vous avez donc maintenant 2 règles qui font des stops suiveurs. Permettez-moi de les nommer pour faciliter les choses.

Ce que j'ai compris de vous jusqu'à présent, c'est que la règle 2 du TS est :
[color=#282828][font=helvetica, arial, sans-serif]IF[/font][/color]

[indent=1]OrderPosition(Magic Number) est Long
et : isBaropen est True
et close[1] > SlowEma[/indent]
[color=#282828][font=helvetica, arial, sans-serif]Puis[/font][/color]

[indent=1][color=#282828][font=helvetica, arial, sans-serif]Saisissez votre stop loss[/font][/color][/indent][/indent]

[color=#282828][font=helvetica, arial, sans-serif][color=#282828][font=helvetica, arial, sans-serif]Règle 1 du TS[/font][/color]
[color=#282828][font=helvetica, arial, sans-serif] ? - Je ne connais pas les déclarations utilisées dans celle-ci.[/font][/color]

[b][color=#282828][font=helvetica, arial, sans-serif]2 réflexions :[/font][/color][/b]
[color=#282828][font=helvetica, arial, sans-serif]1. Il faut que l'énoncé THEN pour ces règles soit en fait "Move SL to" au lieu de faire un Trailing stop comme on le voit dans l'image ci-jointe. [/font][/color][/font][/color]Vous modifiez en fait le stop loss à chaque barre lorsque les conditions énumérées sont remplies au lieu d'utiliser le champ appelé Trailing Stop.

Fichier : move sl.jpgmove sl.jpg

[font=”helvetica, arial, sans-serif”][color=”#282828″]2. Règle TS 1 - doit avoir une condition qui la sépare de la règle TS 2. Ainsi, si la règle TS 2 dit "close[1] > SlowEma", je suggérerais que la règle TS 1 dise [/color][/font][color=#282828][font=helvetica, arial, sans-serif]"close[1] < SlowEma". De cette manière, une seule règle s'appliquera à la fois. [/font][/color]

[color=#282828][font=helvetica, arial, sans-serif]L'une ou l'autre de ces solutions résout-elle le problème ? Si ce n'est pas le cas, postez le fichier SQW et nous pourrons examiner le code réel.[/font][/color]

[color=#282828][font=helvetica, arial, sans-serif]-Stearno[/font][/color]

0

Daviden1

Abonné, bbp_participant, communauté, 14 réponses.

Visiter le profil

il y a 11 ans #121074

Merci Stearno, mais je pense que je n'ai pas été très clair en vous expliquant mon programme.

J'ai les règles suivantes :

1) Règles d'entrée principales avec seulement le S/L dans la section "ALORS".

2) Règle TS dynamique basée sur un indicateur personnalisé avec "move S/L to" dans la section "THEN", ce qui est le cas :

Si :
La position sur le marché est longue
et : Ordre S/L (MagicLong) < icustom..............

Ensuite :

Déplacer S/L vers :

Nombre magique : magicLong
Prix : icustom.................

De toute évidence, j'ai obtenu un TS avec des règles opposées pour les transactions à découvert.

3) Je veux maintenant créer un S/L (à la fois pour les transactions Long et Short) qui fermera immédiatement la transaction si la clôture de la barre traverse la SlowMA vers le bas pour les transactions Long et vers le haut pour les transactions Short.

J'ai pensé à quelque chose comme ça, mais ça ne marche pas :

Pour les transactions longues :

Si :

MarketPosition est Long
et : isBarOpen est True
et : OrderS/L(MagicLong) <-20
et : Close[1] < SlowMA

Ensuite :

ClosePosition

MagicNumber : MagicLong

Il en va de même pour la règle inverse, pour les transactions à découvert.

S'il vous plaît, faites-moi savoir ce que vous pensez, si vous ne trouvez rien d'anormal, je joindrai le .mq4.

Je vous remercie à nouveau

0

Daviden1

Abonné, bbp_participant, communauté, 14 réponses.

Visiter le profil

il y a 11 ans #121075

Désolé Stearno,

Dans les nouvelles règles pour clôturer la transaction, j'ai fait une erreur, la règle suivante est la bonne :

Pour les transactions longues :

Si :

MarketPosition est Long
et : isBarOpen est True
et : OpenS/L(MagicLong) <-20 (pas OrderS/L comme ci-dessus)
et : Close[1] < SlowMA

Quoi qu'il en soit, je joins le fichier .sqw, afin que vous puissiez vous en rendre compte par vous-même.

Remerciements

0

stearno

Client, bbp_participant, communauté, 379 réponses.

Visiter le profil

il y a 11 ans #121077

J'ai remarqué que l'EA fait référence à S/R (Barry) v1 et v2. S'agit-il d'une erreur ?

Fichier : v1.jpgv1.jpg

Deuxièmement, bonne nouvelle, vos règles ne sont pas en conflit les unes avec les autres, comme je l'avais évoqué au départ. Vous avez une règle qui déplace le stop loss et ensuite un stop loss d'urgence qui consiste à fermer l'ordre si -20 (Mark devra vérifier si c'est le bon format et la bonne utilisation car je n'ai jamais utilisé -20 ; si les tests sont bons, alors c'est bon).

Par ailleurs, j'ai remarqué que le S/R de Barry bouge. Donc si vous l'utilisez comme stop loss suiveur, le stop loss se déplacera continuellement, même vers le bas. Si c'est ce que vous voulez, cela ne pose pas de problème.

Par exemple,

En ce moment S/R Barry dit de mettre le niveau à 1.60778. Votre EA place donc le stop x pips en dessous de ce niveau. Puis le prix a baissé (mais pas assez pour atteindre votre stop loss parce que vous l'avez placé x pips en dessous du support), Maintenant S/R Barry dit de placer une ligne de support à 1.60749. L'EA va donc déplacer le stop loss de x pips en dessous de ce niveau. Ceci continue jusqu'à ce que le prix bouge suffisamment pour atteindre votre stop loss ou qu'il atteigne votre seuil d'urgence de -20.

En voici un exemple :

Fichier : SL move.jpgSL move.jpg

Comme vous pouvez le voir, tant qu'il n'y a pas de forte fluctuation des prix, le stop loss continuera à descendre jusqu'à ce qu'une forte fluctuation atteigne votre SL ou jusqu'à ce que le P/L de l'ordre soit de 1,5 million d'euros. < -20. Ok, donc pour votre question, pourquoi le SL ne fonctionne pas comme on le voit ici :

Je crois que Mark a dit dans un autre message que vous devez utiliser "Is Bar Open is True" sur chaque règle. C'est un déclencheur qui lance la règle chaque fois qu'une barre est ouverte. Si c'est le cas, cela expliquerait pourquoi le SL n'est pas déplacé selon votre règle. Je vois ce que vous essayez de faire, c'est-à-dire que l'EA calcule sur chaque tick au lieu de l'ouverture de la barre. Mais je ne sais pas comment faire cela dans EA Wizard, et je ne vois pas d'option dans le logiciel comme c'était le cas dans EA Generator. Cela m'amène à supposer qu'elle n'est pas disponible pour le moment et que je dois utiliser la déclaration d'ouverture de la barre dans chaque règle. Je n'ai pas les indicateurs SR Barry v1 ou v2, je ne peux donc pas tester que cela ferait fonctionner l'EA. Essayez donc et voyez les résultats que vous obtenez.

-Stearno

0

Daviden1

Abonné, bbp_participant, communauté, 14 réponses.

Visiter le profil

il y a 11 ans #121078

Bonjour Stearno,

tout d'abord, merci beaucoup d'avoir pris le temps de tester mon EA... j'ai vraiment apprécié cela.

Je répondrai à vos questions dans l'ordre :

1) La sortie V1 dans la condition "IF" et la sortie V2 dans la condition "THEN", je ne sais pas si c'est une erreur, parce que Mark m'a aidé avec ce code... mais la stratégie fonctionne comme je le voulais, donc, je ne pense pas vraiment que ce soit une erreur ; je vais demander à Mark pour cela.

2) En ce qui concerne l'Open P/L < - 20, il s'agit d'une formule que Mark a écrite dans le tutoriel dans la section Using Strategy Controls.

3) Oui, c'est ce que je veux. Le S/R (Barry) suit le marché et dessine les niveaux de support et de résistance dès que les conditions sont remplies, et il est excellent comme TS.... at list pour ma stratégie.
Je n'ai pas de Take Profit pour ma stratégie, je laisse simplement le S/L suivre le marché jusqu'à ce que le TS soit atteint.

4) La signification du < -20 n'est pas de fermer le trade si ma S/L atteint 20 pips ou plus. Ce que j'ai essayé de faire avec ce code, c'est de rendre VRAIES les autres conditions du S/L d'urgence seulement si ma perte ouverte est inférieure à 20 pips.

C'est exactement ce que j'essaie de dire à l'EA avec l'arrêt d'urgence :

Lorsqu'une nouvelle barre s'ouvre, vérifiez si la clôture de la barre précédente est inférieure à la MA lente (dans le cas d'une position longue) ou supérieure à la MA lente (dans le cas d'une position courte).
Si c'est VRAI et que ma perte actuelle est inférieure à 20 pips (c'est la raison pour laquelle je place le P/L ouvert < - 20), alors fermez la transaction.

Corrigez-moi si je me trompe... En fait, vous dites que ce S/L d'urgence ne fonctionne pas parce que je dois entrer le code isBarOpen même dans mes règles d'ENTRÉE PRINCIPALE ?

Merci encore

0

Affichage de 7 réponses de 1 à 7 (sur un total de 7)