arroganzmaschine: Mais cela ne m'aide pas. Les deux buffers sont 4 et 5. Mais les tampons étaient des tableaux avant.
voici le code : SetIndexBuffer(4, Long) ;
SetIndexBuffer(5, Short) ;
Dans l'indicateur, ces tampons sont déclarés en premier avec "double Long[]". Ce tampon a deux valeurs. Long[1] et Long[2]. Comment puis-je obtenir ces valeurs dans le conseiller expert ?
PS : je n'ai aucune idée de ce que sont les paramètres, donc l'iCustom() utilisera les valeurs par défaut des paramètres. Vous devrez fournir les paramètres souhaités à l'appel iCustom(). Et tout cela est décrit dans le fil de discussion du lien que j'ai posté dans le post précédent.
arroganzmaschine: Hé mladen, une dernière question : comment puis-je fermer l'ordre d'achat ou de vente ouvert du symbole actuel ? Il n'y a qu'un seul ordre ouvert à la fois.
Vous pouvez faire quelque chose comme ceci :
if (OrderSelect(0,SELECT_BY_POS,MODE_TRADES))
{
if (OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,0,CLR_NONE);
if (OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,0,CLR_NONE);
Il n'y a qu'un seul ordre ouvert pour un seul symbole. Mais j'ai différents graphiques ouverts. Le code doit donc choisir l'ordre du symbole et fermer celui-là. Comment dois-je faire cela ?
arroganzmaschine: Il n'y a qu'un seul ordre ouvert pour un seul symbole. Mais j'ai différents graphiques ouverts. Le code doit donc choisir l'ordre du symbole et fermer celui-là. Comment dois-je faire cela ?
Comme ceci :
for (int i=OrdersTotal()-1; i>=0; i--)
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderSymbol()==Symbol())
{
if (OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,0,CLR_NONE);
if (OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,0,CLR_NONE);
Mais cela ne m'aide pas. Les deux buffers sont 4 et 5. Mais les tampons étaient des tableaux avant.
voici le code : SetIndexBuffer(4, Long) ;
SetIndexBuffer(5, Short) ;
Dans l'indicateur, ces tampons sont déclarés en premier avec "double Long[]". Ce tampon a deux valeurs. Long[1] et Long[2]. Comment puis-je obtenir ces valeurs dans le conseiller expert ?Essayez quelque chose comme ceci :
______________________________
PS : je n'ai aucune idée de ce que sont les paramètres, donc l'iCustom() utilisera les valeurs par défaut des paramètres. Vous devrez fournir les paramètres souhaités à l'appel iCustom(). Et tout cela est décrit dans le fil de discussion du lien que j'ai posté dans le post précédent.
Tous mes vœux
Travaux ! Merci beaucoup !!!!
Travaux ! Merci beaucoup !!!!
Bon
Codage heureux
Hé mladen, une dernière question :
Comment puis-je fermer l'ordre d' achat ou de vente ouvert pour le symbole actuel ? Il n'y a qu'un seul ordre ouvert à la fois.
Hé mladen, une dernière question : comment puis-je fermer l'ordre d'achat ou de vente ouvert du symbole actuel ? Il n'y a qu'un seul ordre ouvert à la fois.
Vous pouvez faire quelque chose comme ceci :
{
if (OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,0,CLR_NONE);
if (OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,0,CLR_NONE);
}
Dois-je obtenir tous les ordres ouverts ? Ou est-ce que le code que vous avez posté permet d'obtenir les ordres ouverts actuels ?
Dois-je obtenir tous les ordres ouverts ? Ou est-ce que le code que vous avez posté récupère les ordres ouverts actuels ?
Vous avez dit qu'il n'y a qu'un seul ordre ouvert à la fois.
Ce code ne fonctionne que s'il n'y a qu'un seul ordre ouvert.
Il n'y a qu'un seul ordre ouvert pour un seul symbole. Mais j'ai différents graphiques ouverts. Le code doit donc choisir l'ordre du symbole et fermer celui-là. Comment dois-je faire cela ?
Il n'y a qu'un seul ordre ouvert pour un seul symbole. Mais j'ai différents graphiques ouverts. Le code doit donc choisir l'ordre du symbole et fermer celui-là. Comment dois-je faire cela ?
Comme ceci :
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderSymbol()==Symbol())
{
if (OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,0,CLR_NONE);
if (OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,0,CLR_NONE);
}
Ça a marché ! Tu es génial !