Comment coder ? - page 121

 
IN10TION:
: : bonjour ! vérifiez le code dans cet indicateur
... (pour votre temps d'ouverture seulement, ce n'est pas un EA)

merci bro....

Je vais jeter un coup d'oeil

 
: : Si cela tourne toujours en boucle, vous devez arrêter d'appeler votre fonction à chaque tick de prix entrant ... vérifiez votre autre code ...
fercan:
Quelqu'un peut-il empêcher cette fonction de tourner en boucle ?
 
denis68:
matrixebiz j'ai fait ça maintenant je ne peux pas compiler mon ea quand j'ai ajouté les lignes suivantes à mon ea

double ac1 = iCustom(NULL, 0, "AcceleratorMod", 1, 1) ;

double ac2 = iCustom(NULL, 0, "AcceleratorMod", 2, 1) ;

double ac11 = iCustom(NULL, 0, "AcceleratorMod", 1, 2) ;

double ac22 = iCustom(NULL, 0, "AcceleratorMod", 2, 2) ;

bool acbuy = ac2==0 && ac11==0 ; // Le rouge devient le citron vert

bool acsell = ac1==0 && ac22==0 ; // La chaux se transforme en rouge

Je reçois 12 erreurs : La variable AC n'est pas définie :

et je tiens à vous remercier pour votre aide.

Vous ne pouvez pas simplement ajouter ces lignes sans faire les autres changements nécessaires dans votre code EA.

Par exemple, votre instruction CloseBuy serait modifiée comme suit ;

si ((AC1 < AC2)) Ordre = SIGNAL_CLOSEBUY ;

à ;

si ((ac1==0 && ac22==0)) Ordre = SIGNAL_CLOSEBUY ;

si vous utilisez ce type de commandes ;

si ((ac1==0 && ac22==0)) Commande = SIGNAL_CLOSEBUY ;

alors vous n'auriez pas besoin de ces commandes ;

bool acbuy = ac2==0 && ac11==0 ; // Le rouge se transforme en chaux

bool acsell = ac1==0 && ac22==0 ; // Le citron vert devient rouge.

Je pensais que vous aviez plus de code que vous n'en avez.

 
IN10TION:
: : Si cela tourne toujours en boucle, vous devez arrêter d'appeler votre fonction à chaque tick de prix entrant ... vérifiez votre autre code ...

ok ? alors comment faites-vous cela ? pouvez-vous me donner un code que je peux ajouter avant BEM ?

 
: : BEM traite les signaux de votre indicateur n'est-ce pas ? comme vos valeurs de pips & BE qui sont calculées quelque part ailleurs dans votre code... eh bien, faites cette comparaison ailleurs... pas en bouclant à chaque fois entre vos ordres. Je ne vois pas le reste de ton code... c'est à toi de voir...

IN10TION

fercan:
ok ? alors comment tu fais ça ? tu peux me donner un code que je peux ajouter avant BEM ?
 

J'ai toujours du mal à compter les barres de stop loss de mes précédents messages.

En regardant le code original, j'ai l'impression qu'il est peut-être défectueux. Il semble que le stoploss soit fixé à la barre la plus basse des "x" barres précédentes plutôt qu'à la plus basse sur la période des "x" barres.

C'est écrit :

SL=iLow(Symbol(),Period(),iLowest(Symbol(),Period( ),MODE_LOW,StopLossBars,0));

Je ne comprends pas pourquoi il utilise à la fois iLow et iLowest. Ai-je raison de penser que iLowest seul est suffisant ?

 

J'ai également un autre problème avec le code de mon EA. J'ai une ligne qui doit fermer une position lorsque certains critères sont remplis. L'un de ces critères est que la position perd actuellement de l'argent.

Voici la ligne :

if ( (openPositions(OP_BUY)>0) && (OrderProfit( ) <= 0 ) && (macdnow macd_sigprevious)) {closeLong();}

L'EA fonctionne en ce sens qu'il ferme certainement les positions perdantes lorsque les autres critères sont remplis. Cependant, pour une raison quelconque, l'EA ferme également les positions gagnantes. Je suppose que je n'utilise pas correctement la fonction OrderProfit.

Quelqu'un pourrait-il m'aider ?

 

winwin

Salut les gars,

eeeeeee ccccht

 

Actuellement, cet indicateur affiche les ouvertures de barres supérieures ou égales à l'ouverture précédente en vert et inférieures en rouge. Ma question est la suivante : comment puis-je modifier ce code pour que les ouvertures qui sont égales à l'ouverture précédente soient affichées en JAUNE ?

if( X01 >= X02 ) { color_X01 = Lime ; } else { color_X01 = Red ; }

if( X02 >= X03 ) { color_X02 = Lime ; } else { color_X02 = Red ; }

if( X03 >= X04 ) { color_X03 = Lime ; } else { color_X03 = Red ; }

if( X04 >= X05 ) { color_X04 = Lime ; } else { color_X04 = Red ; }

if( X05 >= X06 ) { color_X05 = Lime ; } else { color_X05 = Red ; }

if( X06 >= X07 ) { color_X06 = Lime ; } else { color_X06 = Red ; }

if( X07 >= X08 ) { color_X07 = Lime ; } else { color_X07 = Red ; }

if( X08 >= X09 ) { color_X08 = Lime ; } else { color_X08 = Red ; }

if( X09 >= X10 ) { color_X09 = Lime ; } else { color_X09 = Red ; }

 
: : ensuite, définissez chaque déclaration ce qu'elle ne peut pas être & c'est NON égal... enfin, utilisez la déclaration égal pour le jaune.

IN10TION

fireslayer26:
Actuellement, cet indicateur affiche les ouvertures de barres qui sont supérieures ou égales à l'ouverture précédente en vert et inférieures en rouge. Ma question est la suivante : comment puis-je modifier ce code pour que les ouvertures qui sont égales à l'ouverture précédente soient affichées en JAUNE ?

if( X01 >= X02 ) { color_X01 = Lime ; } else { color_X01 = Red ; }

if( X02 >= X03 ) { color_X02 = Lime ; } else { color_X02 = Red ; }

if( X03 >= X04 ) { color_X03 = Lime ; } else { color_X03 = Red ; }

if( X04 >= X05 ) { color_X04 = Lime ; } else { color_X04 = Red ; }

if( X05 >= X06 ) { color_X05 = Lime ; } else { color_X05 = Red ; }

if( X06 >= X07 ) { color_X06 = Lime ; } else { color_X06 = Red ; }

if( X07 >= X08 ) { color_X07 = Lime ; } else { color_X07 = Red ; }

if( X08 >= X09 ) { color_X08 = Lime ; } else { color_X08 = Red ; }

if( X09 >= X10 ) { color_X09 = Lime ; } else { color_X09 = Red ; }