[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 803
Andrei01: Y a-t-il un moyen de connaître les limites de prix sur l'échelle verticale du graphique pour calculer l'échelle (pas le prix de l'instrument, il est dans F8) ?
Top2n: Bonjour, j'exécute le conseiller expert dans le testeur de stratégie mais il n'ouvre pas de position. Dans le magazine, il est écrit EURUSD,M5 : OrderSend error 131. Je ne sais pas combien de fois j'ai vu cette EA s'ouvrir et elle n'ouvrait plus une position. Veuillez me conseiller si quelqu'un a eu de tels problèmes. Merci d'avance
Peut-être que vous n'avez pas de lot normalisé, essayez de le ramener à la normale en utilisant : .
zhuki: Vous n'avez probablement pas de lot normalisé, normalisez-le avec :
double NormalizeDouble(
double valeur, int chiffres)
En fait, si ma mémoire est bonne, il a une fonction prête pour la normalisation des lots... En tenant compte de toutes les limitations possibles de DT... Sauf s'il ne l'utilise pas... alors - Aïe... :)
Konichiua à tous ! Comment faire pour que mon EA ouvre trois ordres avec des prises de contrôle différentes et une seule fois sur un chandelier dans une condition d'achat ou de vente. Arigato à l'avance !
Maniac: Konichiua à tous ! Comment faire pour que mon EA ouvre trois ordres avec des prises de contrôle différentes et une seule fois sur un chandelier dans une condition d'achat ou de vente. Arigato à l'avance !
Comment faire 3 ordres d'envoi avec différents points de prise ou boucler cette fonction jusqu'à 3 (for ou while), avec à chaque itération un point de prise différent ?
sanyooooook: Faire un envoi de 3 ordres avec des cibles différentes ou boucler cette fonction jusqu'à 3 (for ou while), à chaque itération une cible différente.
Faire 3 commandes d'envoi avec des points différents - ouvre la première commande trois fois :(
bouclez cette fonction à 3 (for ou while), chaque itération a une prise différente - ouvre un tas de premières commandes :(
Si ce n'est pas le cas, est-il possible de montrer comment le faire ?
sanyooooook: Les ordres ouverts sont-ils comptabilisés ?
externdouble TakeProfit = 35;
externdouble StopLoss = 25;
externdouble Lots = 0.1;
int NumberOfBarOpenLastPos(string sym="", int tf=0, int op=-1, int mn=-1) {
datetime oot;
int i, k=OrdersTotal();
if (sym=="") sym=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sym) {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (oot<OrderOpenTime()) oot=OrderOpenTime();
}
}
}
}
}
}
return(iBarShift(sym, tf, oot, True));
}
int NumberOfBarCloseLastPos(string sy="0", int tf=0, int op=-1, int mn=-1) {
datetime t;
int i, k=OrdersHistoryTotal();
if (sy=="" || sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy) {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) t=OrderCloseTime();
}
}
}
}
}
}
return(iBarShift(sy, tf, t, True));
}
int start()
{
int ticket;
if(Bars<100)
{
Print("bars less than 100");
return(0);
}
if(TakeProfit<10)
{
Print("TakeProfit less than 10");
return(0);
}
if ((NumberOfBarOpenLastPos()>0||NumberOfBarOpenLastPos()==-1)&&(NumberOfBarCloseLastPos()>0||NumberOfBarCloseLastPos()==-1))
{
if(AccountFreeMargin()<(1000*Lots))
{
Print("We have no money. Free Margin = ", AccountFreeMargin());
return(0);
}
if(Bid>High[1])
{
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point,"test",16384,0,Green);
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
}
elsePrint("Error opening BUY order : ",GetLastError());
return(0);
}
if(Bid<Low[1])
{
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+StopLoss*Point,Bid-TakeProfit*Point,"test",16384,0,Red);
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
}
elsePrint("Error opening SELL order : ",GetLastError());
return(0);
}
return(0);
}
}
Voici le code d'une EA. Vous en avez besoin :
1) il a ouvert non pas une, mais trois affaires en même temps avec des stops de 25 et des reprises de 15, 35, 50
2) après la clôture du deuxième ordre à la prise (35), la dernière position (à la prise 50) est passée au niveau du seuil de rentabilité.
Y a-t-il un moyen de connaître les limites de prix sur l'échelle verticale du graphique pour calculer l'échelle (pas le prix de l'instrument, il est dans F8) ?
Bonjour, j'exécute le conseiller expert dans le testeur de stratégie mais il n'ouvre pas de position. Dans le magazine, il est écrit EURUSD,M5 : OrderSend error 131. Je ne sais pas combien de fois j'ai vu cette EA s'ouvrir et elle n'ouvrait plus une position. Veuillez me conseiller si quelqu'un a eu de tels problèmes. Merci d'avance
.
Vous n'avez probablement pas de lot normalisé, normalisez-le avec :
En tenant compte de toutes les limitations possibles de DT...
Sauf s'il ne l'utilise pas... alors - Aïe... :)
Bonjour à tous les membres du forum.
Mes grands-parents m'ont dit que c'était le jour de la lune de miel. Joyeuses fêtes à tous.
Et moi avec mon... Drknn dit qu'il est possible de traiter les relevés des indicateurs.
Est-il possible d'additionner A / D pour une période donnée et le même montant OBV, puis de les diviser entre eux (OBV au numérateur).
Le dénominateur est A/D + coefficient avec sortie vers les paramètres.
Zéro au milieu, les frontières sont flottantes.
Somme-NON TOTAL. Chaque mouvement par valeur absolue.
Et je vais vous donner une inversion sur le juif
Konichiua à tous ! Comment faire pour que mon EA ouvre trois ordres avec des prises de contrôle différentes et une seule fois sur un chandelier dans une condition d'achat ou de vente. Arigato à l'avance !
Faire un envoi de 3 ordres avec des cibles différentes ou boucler cette fonction jusqu'à 3 (for ou while), à chaque itération une cible différente.
Faire 3 commandes d'envoi avec des points différents - ouvre la première commande trois fois :(
bouclez cette fonction à 3 (for ou while), chaque itération a une prise différente - ouvre un tas de premières commandes :(
Si ce n'est pas le cas, est-il possible de montrer comment le faire ?
Faire un envoi de 3 ordres avec des cibles différentes - ouvre le premier ordre trois fois :(
bouclez cette fonction à 3 (for ou while), chaque itération a une prise différente - ouvre un tas de premières commandes :(
Si ce n'est pas trop compliqué, pouvez-vous me montrer comment le faire ?
Les ordres ouverts sont-ils comptabilisés ?
Voici le code d'une EA. Vous en avez besoin :
1) il a ouvert non pas une, mais trois affaires en même temps avec des stops de 25 et des reprises de 15, 35, 50
2) après la clôture du deuxième ordre à la prise (35), la dernière position (à la prise 50) est passée au niveau du seuil de rentabilité.