
Na pierwszy ogien idzie Ea które daje sygnał na przecieciu średnich. Pewnie każdy to przerabiał.
Kod: Zaznacz cały
extern int takeprofit = 600;
extern int sl=600;
extern int l,s;
extern double lots=0.1;
int buyx;
int sellx;
int init()
{
buyx=0;
sellx=0;
return(0);
}
int deinit(){return(0);}
int start()
{
double ma1 =iMA(NULL, 0, 50, 0, MODE_LWMA, PRICE_CLOSE, 1);
double ma2 =iMA(NULL, 0, 100, 0, MODE_LWMA, PRICE_CLOSE, 1);
if (ma1<ma2 && total(OP_BUY)!=0)
{
OrderClose(l,lots,Bid,3,NULL);
}
if (ma1>ma2 && total(OP_SELL)!=0)
{
OrderClose(s,lots,Bid,3,NULL);
}
{
if(ma1>ma2 && buyx==0 && total(OP_BUY)==0)
{
l =OrderSend(Symbol(),OP_BUY,lots,Ask,3,Bid-sl*Point,Bid+takeprofit*Point);
buyx = 1;
sellx = 0;
}
if(ma1<ma2 && sellx==0 && total(OP_SELL)==0)
{
s =OrderSend(Symbol(),OP_SELL,lots,Bid,3,Bid+sl*Point,Bid-takeprofit*Point);
sellx = 1;
buyx = 0;
}
}
return(0);
}
int MagicNumber, cmd;
int total(int cmd)
{
int sum = 0;
RefreshRates();
for (int i=0;i<=OrdersTotal();i++)
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (Symbol()==OrderSymbol() && cmd==OrderType() && MagicNumber==OrderMagicNumber()) sum++;
}
return(sum);
}
sorki za błedy, ale mam en przegladarke