[ARCHIVE]Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 5. - page 117
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Bonjour,
Désolé d'avance pour la grammaire :/. Ma question est la suivante : comment réécrire l'historique des citations (via le code) ? Je voudrais utiliser MT4 pour analyser les données d'un autre courtier.Pouvez-vous me dire comment compter tous les zigzags, combien il y en a ?
Écrit dans la variable li_IND, ou comme ceci
count=ArraySize(lda_Extremum);
Pouvez-vous me dire comment compter tous les zigzags, combien il y en a ?
Si nous faisons ce qui suit :
- la fonction renvoie le nombre d'extrema trouvés depuis fdt_TimeControl.Merci.
Bonjour,
Est-il possible d'entrer un programme avec un poids fixe 1:1 dans les paramètres ?
Si cela est possible, veuillez me dire comment.
Je vous remercie d'avance.
Après-midi.
J'ai écrit un code pour ouvrir deux ordres en attente (BuyStop et SellStop) sur les conditions a=true et b=true et après un certain temps l'EA ferme les deux ordres, jusqu'à ce qu'un nouveau signal apparaisse, mais parfois l'EA ouvre 2 ordres en attente dans la même direction. Pourquoi cela se produit-il et comment éviter ce "bug" ?
if (a=true && b=true)
{
int OrderCount = OrdersTotal() ;
if (OrderCount>1) return(0) ;
ticket1=OrderSend(Symbol(), OP_BUYSTOP, getLot(), PriceOpen_Buy, slippage, PriceOpen_Sell,0,0,Green) ;
Sleep(1000) ;
ticket2=OrderSend(Symbol(), OP_SELLSTOP, getLot(), PriceOpen_Sell, slippage, PriceOpen_Buy,0,0,Green) ;
Sleep(1000*59*TimeFrame);
for (int i=OrdersTotal()-1 ; i>=0 ; i--)
{
if ( !OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) break ;
if (OrderType()==OP_BUYSTOP ) OrderDelete(OrderTicket()) ;
if (OrderType()==OP_SELLSTOP ) OrderDelete(OrderTicket()) ;
if (OrderType()==OP_SELL ) OrderClose(OrderTicket(),OrderLots(),Ask,slippage) ;
si (OrderType()==OP_BUY ) OrderClose(OrderTicket(),OrderLots(),Bid,slippage) ;
}
retour(0) ;
}
S'il vous plaît, donnez-moi un indice.
Merci d'avance.
Les valeurs de ces variables sont stockées dans des tableaux-traceboxes.
Je veux dire, tu l'as comme ça .
Modalités et conditions,
Après-midi.
J'ai écrit un code pour ouvrir deux ordres en attente (BuyStop et SellStop) sur les conditions a=true et b=true et après un certain temps l'EA ferme les deux ordres, jusqu'à ce qu'un nouveau signal apparaisse, mais parfois l'EA ouvre 2 ordres en attente dans la même direction. Pourquoi cela se produit-il et comment éviter ce "bug" ?
Veuillez me conseiller.
Merci d'avance.
Peut-être ici :
En fait, beaucoup de choses ne sont pas "dormantes" - Sleep(1000*59*TimeFrame) ; - un nouveau tick est arrivé, votre code a démarré, deux ordres ont été ouverts, puis une pause de "2 heures" (conditionnellement), et ensuite vous essayez de fermer si soudainement un des ordres est devenu négociable aux prix que vous avez obtenus il y a 2 heures - ORIGINAL !!! QUI T'A APPRIS ÇA ?
Vous pouvez fixer dans une variable globale l'heure d'ouverture des ordres et contrôler la différence entre m³ TimeCurrent() et l'heure fixée.
Après-midi.
J'ai écrit un code pour ouvrir deux ordres en attente (BuyStop et SellStop) sur les conditions a=true et b=true et après un certain temps l'EA ferme les deux ordres, jusqu'à ce qu'un nouveau signal apparaisse, mais parfois l'EA ouvre 2 ordres en attente dans la même direction. Pourquoi cela se produit-il et comment éviter ce "bug" ?
si (a=vrai && b=vrai)
{
int OrderCount = OrdersTotal() ;
si (OrderCount>1) return(0) ;
ticket1=OrderSend(Symbol(), OP_BUYSTOP, getLot(), PriceOpen_Buy, slippage, PriceOpen_Sell,0,0,Green) ;
Sleep(1000) ;
ticket2=OrderSend(Symbol(), OP_SELLSTOP, getLot(), PriceOpen_Sell, slippage, PriceOpen_Buy,0,0,Green) ;
Sleep(1000*59*TimeFrame);
for (int i=OrdersTotal()-1 ; i>=0 ; i--)
{
if (!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) break ;
si (OrderType()==OP_BUYSTOP ) OrderDelete(OrderTicket()) ;
si (OrderType()==OP_SELLSTOP ) OrderDelete(OrderTicket()) ;
si (OrderType()==OP_SELL ) OrderClose(OrderTicket(),OrderLots(),Ask, slippage) ;
si (OrderType()==OP_BUY ) OrderClose(OrderTicket(),OrderLots(),Bid,slippage) ;
}
retour(0) ;
}
Pouvez-vous me donner un indice ?
Merci d'avance