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
double BU1=iMA(Symbol(),0,ShortSma,0,MODE_SMA,PRICE_CLOSE,i+1) ;
double BL1=iMA(Symbol(),0,LongSma,0,MODE_SMA,PRICE_CLOSE,i) ;
string SBUY="false";string SSEL="false" ;
if(BU1<Close[1]&&BL1<Close[1])SBUY="true";if(BL1>Close[1]&&BU1>Close[1])SSEL="true";
Cela fonctionne maintenant, quelque chose n'allait pas avec le Trade après TP.....
Merci pour votre aide Mladen.
bonjour mr mladen
comment traduire ce mot :
http://forexsystemsru.com/1075962-post327.html
Analyse en grappes
regard
Mr mladen :
pourriez-vous en faire une MTF
Bien à vous
Bonjour chers codeurs,
J'ai probablement une question simple, mais je suis bloqué en ce moment sur :
Mon EA ouvre des ordres d' achat et de vente sans problème, mais quand il s'agit de SIGNAL_CLOSEBUY ou SIGNAL_CLOSESELL il ne ferme pas les ordres.
mais quand il s'agit de SIGNAL_CLOSEBUY ou SIGNAL_CLOSESELL il ne ferme pas les ordres.
J'utilise ici un RSI_Filter comme déclencheur pour fermer les ordres d'achat ou de vente.
J'ai copié mon code, je serais très heureux si quelqu'un pouvait y jeter un œil.
Merci d'avance !
#define SIGNAL_NONE 0
// Signal Begin(Exit Buy)#define SIGNAL_BUY 1
#define SIGNAL_SELL 2
#define SIGNAL_CLOSEBUY 3
#define SIGNAL_CLOSESELL 4
extern int MaxShortTrades = 1;
extern int MaxLongTrades = 1;
int Order = SIGNAL_NONE;
// RSI Filter
double RSIfilter=iRSI(Symbol(),0,RSIPeriod,PRICE_CLOSE,BarShift);
// Trade Signal Indicator
double NLD1,NLD2;
NLD1 = iCustom(NULL,0,"indicator",0,Length,0,0,1,0,0,0,1);
NLD2 = iCustom(NULL,0,"indicator",0,Length,0,0,1,0,0,0,2);
// Amount of long / short trades
int longs = 0;
int shorts = 0;
double j;
for(j=OrdersTotal()-1;j>=0; j--)
{
if(OrderType()==OP_BUY) longs++; // Check # of long trades.
if(OrderType()==OP_SELL) shorts++; // Check # of short trades
}
// place orders
if(longs < MaxLongTrades && NLD1 > NLD2 && RSIfilter>55) Order = SIGNAL_BUY;
if(shorts < MaxShortTrades && NLD1 < NLD2 && RSIfilter<45) Order = SIGNAL_SELL;
if (RSIfilter<50) Order=SIGNAL_CLOSEBUY;
if(Order==SIGNAL_CLOSEBUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars!=BarCount))))
{
dummyResult=OrderClose(OrderTicket(),OrderLots(),Bid,Slippage*PipMultiplier,MediumSeaGreen);
if(EachTickMode) TickCheck = True;
if(!EachTickMode) BarCount = Bars;
return(0);
}
// Signal Begin(Exit Sell)
if (RSIfilter>50) Order=SIGNAL_CLOSESELL;
if(Order==SIGNAL_CLOSESELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars!=BarCount))))
{
dummyResult=OrderClose(OrderTicket(),OrderLots(),Ask,Slippage*PipMultiplier,DarkOrange);
if(EachTickMode) TickCheck = True;
if(!EachTickMode) BarCount = Bars;
return(0);
}
Bonjour chers codeurs,
J'ai probablement une question simple, mais je suis bloqué en ce moment sur :
Mon EA ouvre des ordres d'achat et de vente sans problème, mais quand il s'agit de SIGNAL_CLOSEBUY ou SIGNAL_CLOSESELL il ne ferme pas les ordres.
mais quand il s'agit de SIGNAL_CLOSEBUY ou SIGNAL_CLOSESELL il ne ferme pas les ordres.
J'utilise ici un RSI_Filter comme déclencheur pour fermer les ordres d'achat ou de vente.
J'ai copié mon code, je serais très heureux si quelqu'un pouvait y jeter un œil.
Merci d'avance !
#define SIGNAL_NONE 0
// Signal Begin(Exit Buy)#define SIGNAL_BUY 1
#define SIGNAL_SELL 2
#define SIGNAL_CLOSEBUY 3
#define SIGNAL_CLOSESELL 4
extern int MaxShortTrades = 1;
extern int MaxLongTrades = 1;
int Order = SIGNAL_NONE;
// RSI Filter
double RSIfilter=iRSI(Symbol(),0,RSIPeriod,PRICE_CLOSE,BarShift);
// Trade Signal Indicator
double NLD1,NLD2;
NLD1 = iCustom(NULL,0,"indicator",0,Length,0,0,1,0,0,0,1);
NLD2 = iCustom(NULL,0,"indicator",0,Length,0,0,1,0,0,0,2);
// Amount of long / short trades
int longs = 0;
int shorts = 0;
double j;
for(j=OrdersTotal()-1;j>=0; j--)
{
if(OrderType()==OP_BUY) longs++; // Check # of long trades.
if(OrderType()==OP_SELL) shorts++; // Check # of short trades
}
// place orders
if(longs < MaxLongTrades && NLD1 > NLD2 && RSIfilter>55) Order = SIGNAL_BUY;
if(shorts < MaxShortTrades && NLD1 < NLD2 && RSIfilter<45) Order = SIGNAL_SELL;
if (RSIfilter<50) Order=SIGNAL_CLOSEBUY;
if(Order==SIGNAL_CLOSEBUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars!=BarCount))))
{
dummyResult=OrderClose(OrderTicket(),OrderLots(),Bid,Slippage*PipMultiplier,MediumSeaGreen);
if(EachTickMode) TickCheck = True;
if(!EachTickMode) BarCount = Bars;
return(0);
}
// Signal Begin(Exit Sell)
if (RSIfilter>50) Order=SIGNAL_CLOSESELL;
if(Order==SIGNAL_CLOSESELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars!=BarCount))))
{
dummyResult=OrderClose(OrderTicket(),OrderLots(),Ask,Slippage*PipMultiplier,DarkOrange);
if(EachTickMode) TickCheck = True;
if(!EachTickMode) BarCount = Bars;
return(0);
}
Il y a deux problèmes que vous devez résoudre avant de continuer :
deux problèmes que vous devez résoudre avant de poursuivre :
Cher Mladen,
Je vous remercie beaucoup pour vos suggestions utiles.
Si je vous ai bien compris, je dois implémenter quelque chose comme le code suivant
pour sélectionner un "buy_ticket" l'EA doit se fermer. Le code n'a pas encore été testé, et est en quelque sorte un "pseudo état".
int buy_ticket=0;
int sell_ticket=0;
int ticket;
// Iterate through tickets
for(int i=OrdersTotal()-1; i>=0; i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol())
{
if(OrderType()== OP_BUY)
buy_ticket=OrderTicket();
else
if(OrderType() == OP_SELL)
sell_ticket=OrderTicket();
}
}
// Close Ticket with trigger
if (RSIfilter<50) Order=SIGNAL_CLOSEBUY;
if (RSIfilter>50) Order=SIGNAL_CLOSESELL;
if(Order==CLOSE_BUY && buy_ticket!=0)
{
if(OrderSelect(buy_ticket,SELECT_BY_TICKET))
{
if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),Slippage,clrDodgerBlue))
Print("Error closing Buy #",(string)OrderTicket()," Error code ",(string)GetLastError());
}
}
else
if(Order==CLOSE_SELL && sell_ticket!=0)
{
if(OrderSelect(sell_ticket,SELECT_BY_TICKET))
{
if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),Slippage,clrDodgerBlue))
Print("Error closing Sell #",(string)OrderTicket()," Error code ",(string)GetLastError());
}
}
Cher Mladen,
Je vous remercie beaucoup pour vos suggestions utiles.
Si je vous ai bien compris, je dois implémenter quelque chose comme le code suivant
pour sélectionner un "buy_ticket" l'EA doit se fermer. Le code n'a pas encore été testé, et est en quelque sorte un "pseudo-état".
int buy_ticket=0;
int sell_ticket=0;
int ticket;
// Iterate through tickets
for(int i=OrdersTotal()-1; i>=0; i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol())
{
if(OrderType()== OP_BUY)
buy_ticket=OrderTicket();
else
if(OrderType() == OP_SELL)
sell_ticket=OrderTicket();
}
}
// Close Ticket with trigger
if (RSIfilter<50) Order=SIGNAL_CLOSEBUY;
if (RSIfilter>50) Order=SIGNAL_CLOSESELL;
if(Order==CLOSE_BUY && buy_ticket!=0)
{
if(OrderSelect(buy_ticket,SELECT_BY_TICKET))
{
if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),Slippage,clrDodgerBlue))
Print("Error closing Buy #",(string)OrderTicket()," Error code ",(string)GetLastError());
}
}
else
if(Order==CLOSE_SELL && sell_ticket!=0)
{
if(OrderSelect(sell_ticket,SELECT_BY_TICKET))
{
if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),Slippage,clrDodgerBlue))
Print("Error closing Sell #",(string)OrderTicket()," Error code ",(string)GetLastError());
}
}
Avez-vous un seul ordre (même magie, même symbole) ouvert en même temps ?
Si oui, alors il fonctionnera.
Chers amis,
L'ea ci-joint ouvre constamment des ordres à lot fixe(il ouvre tous les ordres à 0.10).
Je ne change pas ou ne contrôle pas la valeur du lot des ordres ouverts !
Les valeurs "Lots" et "MaximumRisk" sont disponibles dans les paramètres, mais elles ne sont pas effectives sur les valeurs de lot des ordres !
Pouvez-vous m'aider s'il vous plaît ?
bonjour mr mladen
Pourriez-vous créer une sous-fenêtre vide semblable à cette image ?
regard
Bonjour Mladen, j'ai téléchargé votre
stepma_pdf_4_4.ex4 ainsi que l'histogramme,
Je les ai copiés dans MT4. Je les glisse sur la fenêtre du graphique
J'obtiens le message suivant, voir dans l'image :
Pouvez-vous me dire comment je peux utiliser votre indicateur ?
Lea
ps. la même chose est arrivée avec : moyennes_-_mtf__alerts_7_4.ex4 et histogramme