Comment coder ? - page 247

 

besoin d'aide pour hide_breakeven

Bonjour à tous, j'ai trouvé ce code pour un cache stop suiveur et je veux faire un cache breakeven, ça marche, mais ça ne ferme pas l'ordre. Je veux fermer l'ordre si le BID descend du haut et traverse la HLINE BE, et ne pas le fermer si le BID traverse la HLINE BE du bas. J'ai fait beaucoup d'exemples mais cela ne fonctionne pas comme je le veux... s'il vous plaît aidez-moi, voici le code pour "acheter" :

void HideBreakEvenBuy(){

int totalorders = OrdersTotal() ;

for(int i=totalorders-1;i>=0;i--){

si (OrderSymbol()==OrderSymbol()){

if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)){

si (OrderType()==OP_BUY){

if (MarketInfo(OrderSymbol(),MODE_ASK)-OrderOpenPrice() >= breakeven*Point && ObjectGet("sl "+OrderTicket()+"b", OBJPROP_PRICE1) < OrderOpenPrice()){

ObjectCreate("BE "+OrderTicket()+"b", OBJ_HLINE, 0, 0, 0) ;

ObjectSet("BE "+OrderTicket()+"b", OBJPROP_PRICE1, OrderOpenPrice()+BE*Point) ;

ObjectSet("BE "+OrderTicket()+"b", OBJPROP_COLOR, Red) ;

ObjectSet("BE "+OrderTicket()+"b", OBJPROP_STYLE, 3) ;

}

si (MarketInfo(OrderSymbol(),MODE_ASK) -ObjectGet("BE "+OrderTicket()+"b", OBJPROP_PRICE1)

>= breakeven*Point && ObjectGet("BE "+OrderTicket()+"b", OBJPROP_PRICE1)

>= OrderOpenPrice() && ObjectGet("BE "+OrderTicket()+"b", OBJPROP_PRICE1) <MarketInfo(OrderSymbol(),MODE_ASK)){

//ObjectSet("BE "+OrderTicket()+"b", OBJPROP_PRICE1, MarketInfo(OrderSymbol(),MODE_ASK) -TrailingStop*Point) ;

if (OrderType() == OP_BUY && MarketInfo(OrderSymbol(),MODE_ASK) >= ObjectGet("BE "+OrderTicket()+"b", OBJPROP_PRICE1)) OrderClose(OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(),MODE_BID), SlippageClose, Silver) ;

}

}

}

}

}

}

meilleures salutations go_rich

 

Comment ajouter un Stop suiveur à un Expert Advisor existant

Comment ajouter un stop suiveur à un expert qui est déjà fait ? Cet expert peut être édité. Merci pour toute aide

 

2 indicateurs en un

Bonjour à tous, depuis quelques mois j'utilise une stratégie qui est basée sur 2 indicateurs et qui m'apporte de bons profits( j'utilise et les fondamentaux avec elle), je cherche quelqu'un qui puisse connecter ces indicateurs en Un pour plus de commodité ! Si quelqu'un est intéressé s'il vous plaît écrire sur privé, merci.

 
vladokvr:
Bonjour à tous, depuis quelques mois j'utilise une stratégie qui est basée sur 2 indicateurs et qui m'apporte de bons profits( j'utilise et fondamentale avec elle), je cherche quelqu'un qui puisse connecter ces indicateurs en Un pour plus de commodité ! Si quelqu'un est intéressé s'il vous plaît écrire sur le privé, merci.

Quelqu'un peut-il m'aider, ou me donner un exemple de comment faire un indicateur à partir de deux, je pense que ce sera intéressant pour beaucoup de traders !

 

Calcul des barres précédentes / gel du testeur

Bonjour, je me demandais si quelqu'un pouvait m'aider à corriger rapidement un code EA.

J'ai besoin que mon EA prenne le prix le plus bas des 60 derniers jours et le soustraie du prix le plus élevé de cette même période. Une fois la différence faite, je voudrais que le résultat soit multiplié par 1000 afin d'obtenir la fourchette souhaitée pour mes calculs.

Par exemple, si le prix le plus élevé de l'EURUSD au cours des 60 derniers jours était de 1,30000, et le prix le plus bas de 1,20000, la différence serait de 0,1 (ou 1000 pips). Je multiplierais alors ce 0,1 par 1000 pour obtenir ma fourchette souhaitée de 100. (En fait, pour chaque plage de négociation de 1000 pips, j'ai besoin d'une valeur de 100 pour mes calculs).

Si la différence était de 1250 pips, la valeur dont j'ai besoin serait de 125.

Bref, voici le code que j'ai utilisé :

double highval = High;

double lowval = Low;

int DesiredRange = NormalizeDouble(highval - lowval,3)*1000;

Pour une raison quelconque, dans le testeur de stratégie, il fonctionne bien pendant une courte période. Cependant, à certaines dates, le testeur se met en pause et ne continue pas à trader. Il se fige sans s'arrêter, et vous devez arrêter manuellement le programme et changer la date de début au jour suivant pour pouvoir continuer.

Y a-t-il un problème avec mon code ? Si je retire le code ci-dessus, il fonctionne bien avec une DesiredRange constante. Au début, je pensais que cela pouvait être dû à l'arrondi, mais il semble que l'arrondi soit correct.

S'IL VOUS PLAÎT, AIDEZ-MOI ! Merci d'avance !

 

Pourquoi ne pas utiliser la période mensuelle et obtenir les valeurs les plus hautes et les plus basses des deux mois précédents. 2 mois sont égaux à 60 jours.

Obtenir la valeur la plus haute dans ce cas, c'est comparer uniquement le haut de la bougie actuelle et le haut de la bougie précédente. Il en va de même pour la valeur la plus basse.

jamesmean:
Bonjour, je me demandais si quelqu'un pouvait m'aider à corriger rapidement un code EA.

J'ai besoin que mon EA prenne le prix le plus bas des 60 derniers jours et le soustraie du prix le plus haut de cette même période. Une fois la différence faite, je voudrais que le résultat soit multiplié par 1000 afin d'obtenir la fourchette souhaitée pour mes calculs.

Par exemple, si le prix le plus élevé de l'EURUSD au cours des 60 derniers jours était de 1,30000, et le prix le plus bas de 1,20000, la différence serait de 0,1 (ou 1000 pips). Je multiplierais alors ce 0,1 par 1000 pour obtenir ma fourchette souhaitée de 100. (En fait, pour chaque plage de négociation de 1000 pips, j'ai besoin d'une valeur de 100 pour mes calculs).

Si la différence était de 1250 pips, la valeur dont j'ai besoin serait de 125.

Bref, voici le code que j'ai utilisé :

double highval = High;

double lowval = Low;

int DesiredRange = NormalizeDouble(highval - lowval,3)*1000;

Pour une raison quelconque, dans le testeur de stratégie, il fonctionne bien pendant une courte période. Cependant, à certaines dates, le testeur se met en pause et ne continue pas à trader. Il se fige sans s'arrêter, et vous devez arrêter manuellement le programme et changer la date de début au jour suivant pour pouvoir continuer.

Y a-t-il un problème avec mon code ? Si je retire le code ci-dessus, il fonctionne bien avec une DesiredRange constante. Au début, je pensais que cela pouvait être dû à l'arrondi, mais il semble que l'arrondi soit correct.

S'IL VOUS PLAÎT, AIDEZ-MOI ! Merci d'avance !
 

Ce n'est pas une tâche facile.

vladokvr:
Quelqu'un pourrait-il m'aider, ou me donner un exemple de comment faire un indicateur à partir de deux, je pense que cela sera intéressant pour de nombreux traders !
 

Vérifiez vos barres

jamesmean:
Bonjour, je me demandais si quelqu'un pouvait m'aider à corriger rapidement un code EA.

J'ai besoin que mon EA prenne le prix le plus bas des 60 derniers jours et le soustraie du prix le plus élevé de cette même période.

......

Voici le code que j'ai utilisé :

double highval = High;

double lowval = Low;

int DesiredRange = NormalizeDouble(highval - lowval,3)*1000;

Y a-t-il un problème avec mon code ? Si je retire le code ci-dessus, il fonctionne bien avec une constante DesiredRange. Au début, je pensais que cela pouvait être dû à l'arrondi, mais il semble que l'arrondi soit correct.

S'IL VOUS PLAÎT, AIDEZ-MOI ! Merci d'avance !

Bonjour James,

Edit - J'ai supprimé ma suggestion. Ce n'était pas le bon code (c'était pour les iCustom's, pas pour les iHighest, iLowest). J'apprends encore.

---

Vous pouvez également considérer la suggestion de Codersguru en utilisant la période du mois car cela peut vous donner une moyenne plus précise.

J'espère que cela vous aidera,

Robert

 

Indicateur, le prix casse la dernière fractale

Comment déterminer (par code) si le prix a cassé la dernière fractale de hausse ou de baisse.

J'ai essayé quelque chose avec les ifractals dans mql mais sans succès. Je voudrais identifier la dernière fractale de baisse dans mon code.

Je veux sélectionner par code la barre avec la flèche en haut dans le graphique ci-joint, mais je n'ai aucune idée de la façon d'y parvenir. Toute aide est appréciée.

TIA !

Dossiers :
chrt1.gif  23 kb
 

Oubliez la question sur la fractale, j'ai trouvé une solution. Le problème est que pour déterminer la fractale, il faut remonter dans le temps avec une "boucle for", ce qui, selon l'OMI, entraîne beaucoup de surcharge. Mais je ne suis pas un programmeur donc il y a probablement de meilleures solutions.

THNX