condition THEN pour l'utiliser comme condition IF dans la deuxième règle
12 réponses
Pago
il y a 11 ans #111005
Bonjour,
quelqu'un sait Comment traiter le résultat d'une règle #1 dans une deuxième règle ?
Par exemple :
Dans la première règle, j'utilise est la condition MACD > 0 si le résultat est vrai je veux utiliser ce signal dans la deuxième règle.
J'essaie avec THEN Assign Variable, mais cette variable reste même si les conditions IF ne sont plus remplies.
Cezar
stearno
il y a 11 ans #121260
Le tsar,
Vous avez raison, la règle attribue la variable et n'y touche plus jusqu'à ce que les conditions soient remplies.
Ce qu'il faut donc faire, c'est avoir 2 règles : La première règle attribue une variable lorsque la MACD >0 et la deuxième règle attribue une variable lorsque la MACD<0. Ainsi, votre variable sera toujours le reflet de la position de la MACD.
-STearno
Pago
il y a 11 ans #121262
Bonjour Stearno,
J'ai eu peur que c'est la seule voie possible. Les La condition ci-dessus n'était qu'un exemple simplifié, la condition est très compliquée. et La condition d'inversion est très compliquée et je pensais qu'elle pouvait être résolue d'une manière ou d'une autre.
J'ai une autre idée. Je viens d'essayer d'exporter la condition en tant qu'indicateur et de l'importer ensuite dans l'assistant afin d'utiliser le signal.
Cezar
stearno
il y a 11 ans #121266
C'est une bonne chose. Bonne chance !
Mark Fric
il y a 11 ans #121283
Bonjour,
Quelqu'un sait-il comment traiter le résultat d'une règle #1 dans une deuxième règle ?
Par exemple :
Dans la première règle, j'utilise la condition MACD > 0. Si le résultat est vrai, je veux utiliser ce signal dans la deuxième règle.
J'essaie avec THEN Assign Variable, mais cette variable reste même si les conditions IF ne sont plus remplies.
Bonjour Cezar,
Ce que vous pouvez faire, c'est traiter le résultat de la deuxième règle, puis redonner à la variable la valeur false (par la fonction Assign variable).
Marque
Marque
StratégieArchitecte de Quantités
Pago
il y a 11 ans #121288
Bonjour Mark,
I Je ne comprends pas très bien. Pouvez-vous me donner un exemple concret de cette fonction ?
Cezar
Mark Fric
il y a 11 ans #121292
Je voulais dire quelque chose comme ça :
Règle 1 :
SI la position du marché est plate et que le MACD > 0
ALORS
Affecter la variable ThereIsSignal = 1
Règle 2 :
IF ThereIsSignal = 1
ALORS
Entrer au marché
Affecter la variable ThereIsSignal = 0
De cette façon, la variable qui a été définie par la première règle sera désactivée lorsque vous entrerez dans la transaction, c'était votre problème comme je l'ai compris.
Marque
Marque
StratégieArchitecte de Quantités
Pago
il y a 11 ans #121303
518pip
il y a 11 ans #121812
Je voulais dire quelque chose comme ça :
Règle 1 :
SI la position du marché est plate et que le MACD > 0
ALORS
Affecter la variable ThereIsSignal = 1
Règle 2 :
IF ThereIsSignal = 1
ALORS
Entrer au marché
Affecter la variable ThereIsSignal = 0
De cette façon, la variable qui a été définie par la première règle sera désactivée lorsque vous entrerez dans la transaction, c'était votre problème comme je l'ai compris.
Marque
Bonjour, je suis confronté à un problème similaire, merci de m'aider. Tout le monde.
multi entry si le prix est supérieur à l'ema 100.
1ère entrée si l'ema 10 croise l'ema 20, alors entrez au marché avec l'objectif.
2ème entrée si 10 ema croise à nouveau 20 ema et que le prix est toujours au-dessus de 100 ema, entrer au marché. (parfois la 1ère entrée peut ne plus être ouverte si l'objectif a été atteint)
continuer à entrer sur le marché tant que le prix est au dessus de 100 ema et à chaque fois que 10 ema et 20 ema se croisent au dessus de manière indépendante.
J'ai essayé d'assigner une variable, mais mon ea actuel garde ouvert la 1ère et la 2ème entrée en même temps quand la 1ère entrée se produit et saute le reste des entrées valides.
Nous vous remercions,
Pago
il y a 11 ans #121818
Bonjour, je suis confronté à un problème similaire, merci de m'aider. Tout le monde.
multi entry si le prix est supérieur à l'ema 100.
1ère entrée si l'ema 10 croise l'ema 20, alors entrez au marché avec l'objectif.
2ème entrée si 10 ema croise à nouveau 20 ema et que le prix est toujours au-dessus de 100 ema, entrer au marché. (parfois la 1ère entrée peut ne plus être ouverte si l'objectif a été atteint)
continuer à entrer sur le marché tant que le prix est au dessus de 100 ema et à chaque fois que 10 ema et 20 ema se croisent au dessus de manière indépendante.
J'ai essayé d'assigner une variable, mais mon ea actuel garde ouvert la 1ère et la 2ème entrée en même temps quand la 1ère entrée se produit et saute le reste des entrées valides.
Nous vous remercions,
Bonjour 518pip,
Je pense qu'il n'est pas nécessaire d'assigner une variable.
Règle 1 : La première entrée -> IsBarOpen est True && Bid > EMA 100 && EMA 10 croise au-dessus de EMA 20
Règle 2 La deuxième entrée -> IsBarOpen est True && (Open P/L [Magic_first_entry] 0 ou Closed P/L [Magic_first_entry] 0) && Bid > EMA 100 && EMA 10 croise au-dessus de EMA 20
Pour conclure, vous pouvez utiliser une troisième règle avec les conditions de clôture.
J'espère pouvoir vous aider. Sinon, vous pouvez joindre la stratégie au message, ce qui nous permettra de vous aider plus spécifiquement.
Cezar
Mark Fric
il y a 11 ans #121822
Bonjour, je suis confronté à un problème similaire, merci de m'aider. Tout le monde.
multi entry si le prix est supérieur à l'ema 100.
1ère entrée si l'ema 10 croise l'ema 20, alors entrez au marché avec l'objectif.
2ème entrée si 10 ema croise à nouveau 20 ema et que le prix est toujours au-dessus de 100 ema, entrer au marché. (parfois la 1ère entrée peut ne plus être ouverte si l'objectif a été atteint)
continuer à entrer sur le marché tant que le prix est au dessus de 100 ema et à chaque fois que 10 ema et 20 ema se croisent au dessus de manière indépendante.
J'ai essayé d'assigner une variable, mais mon ea actuel garde ouvert la 1ère et la 2ème entrée en même temps quand la 1ère entrée se produit et saute le reste des entrées valides.
Nous vous remercions,
Vous pouvez procéder comme suit (je ne montrerai que le côté long) :
——————–
Règle 1 :
——————–
SI
OrderPosition(1000) n'est pas Flat // nous nous assurons que le premier ordre est déjà ouvert
et Offre > EMA(100) // s'assurer que le prix est supérieur à EMA(100)
et la EMA(10) croise la EMA(20)
ALORS
Entrer sur le marché avec le nombre magique (2000)
——————–
Règle 2 :
——————–
SI
OrderPosition(1000) is Flat // nous nous assurons que l'ordre n'est pas déjà ouvert
et Offre > EMA(100) // s'assurer que le prix est supérieur à EMA(100)
et la EMA(10) croise la EMA(20)
ALORS
Entrer sur le marché avec le nombre magique (1000)
Cela devrait fonctionner. La deuxième règle permet de prendre un signal lorsque l'EMA(10) croise l'EMA(20) et la règle 1 permet de prendre en compte le cas particulier où le premier ordre est déjà ouvert.
Les règles doivent être respectées dans l'ordre suivant.
Il faudrait peut-être ajouter également Is Bar Open = true aux deux règles pour s'assurer que les transactions ne sont ouvertes qu'à l'ouverture de la barre.
Marque
StratégieArchitecte de Quantités
boomza100
il y a 11 ans #121844
Bonjour à tous,
J'ai une question similaire, en lien avec le sujet de ce fil de discussion.
Je continue à obtenir de nouvelles positions ouvertes, à chaque nouveau tic-tac.
Ce que je veux faire, c'est n'ouvrir une position qu'une seule fois, si mes conditions sont remplies.
S'il y a déjà un poste ouvert, n'en ouvrez pas un autre.
Si une position a été fermée, il est possible d'en ouvrir une autre si les conditions sont remplies.
Mon code est le suivant.
——————–
Règle 1 :
——————–
IF IsBarOpen is True
et d'autres conditions //trop long à répéter ici, mais cela n'a pas d'importance
et OrderPosition(MagicLong) est Flat //ie : il n'y a pas de positions ouvertes ? ?? (c'est bien ça ?)
ALORS Entrer au marché (MagicLong)
Si j'ai bien compris, vous ne pouvez ouvrir qu'une seule position par numéro magique, mais il continue d'ouvrir de nouvelles positions à chaque tic-tac.
Des suggestions ?
Merci.
Mark Fric
il y a 11 ans #121915
Bonjour,
La condition OrderPosition(MagicLong) is Flat est vraiment vraie s'il n'y a pas de positions ouvertes, donc vos conditions sont correctes.
Si j'ai bien compris, vous ne pouvez ouvrir qu'une seule position par numéro magique, mais il continue d'ouvrir de nouvelles positions à chaque tic-tac.
Oui, il ne devrait pas ouvrir plusieurs positions avec le même nombre magique. S'il ouvre une nouvelle position à chaque tick, il y a un problème ou un bug possible. Pouvez-vous poster votre stratégie (fichier .sqw) ici ?
Marque
StratégieArchitecte de Quantités
Affichage de 12 réponses de 1 à 12 (sur un total de 12)