ê ñîâåòíèêó, êîòîðîãî íàïèñàë Amadey_MF (òåìà "îáùèå ñïîñîáû òîðãîâëè"), íóæíî äîáàâèòü óñòàíîâêó ñòîïà, òðàë, òåéê, âîçìîæíîñòü ïåðåâîäèòü â á/ó

óáðàòü âûõîä ïî îáðàòíîìó ñèãíàëó

êîä òóò: http://amadey-mf.livejournal.com/84565.html

Êîä:
// ýêñïåðò äëÿ òåñòà ñòðàòåãèè ÌÀ â ÌÒ4

extern int FastPer = 7; // çäåñü óñòàíàâëèâàåì ïåðèîä áûñòðîé ÌÀ
extern int SlowPer = 21; // çäåñü óñòàíàâëèâàåì ïåðèîä ìåäëåííîé ÌÀ


int ticket=0;

int start()
{


int Ord=0;


for(int i = 0; i <= OrdersTotal(); i++) // îïðåäåëåíèå åñòü ëè îòêðûòûå îðäåðà?
{

OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if(OrderMagicNumber() == 777)
{
ticket=OrderTicket();
if (OrderType()==OP_BUY)
{
Ord=1;// åñëè åñòü îòêðûòàÿ áàåâàÿ ïîçèöèÿ òî Ord = 1
}
else
{
Ord=2;// åñëè åñòü îòêðûòàÿ øîðòîâàÿ ïîçèöèÿ òî Ord = 2
}

}

}



bool SellOp=false;
bool BuyOp=false;


double MAFast2=NormalizeDouble(iMA(NULL,0,FastPer,0,MODE_SMA,PRICE_CLOSE,2),Digits); // áûñòðàÿ ïðîøëîãî áàðà
double MAFast3=NormalizeDouble(iMA(NULL,0,FastPer,0,MODE_SMA,PRICE_CLOSE,0),Digits); // áûñòðàÿ òåêóùåãî áàðà

double MASlow2=NormalizeDouble(iMA(NULL,0,SlowPer,0,MODE_SMA,PRICE_CLOSE,2),Digits); // ìåäëåííàÿ ïðîøëîãî áàðà
double MASlow3=NormalizeDouble(iMA(NULL,0,SlowPer,0,MODE_SMA,PRICE_CLOSE,0),Digits); // ìåäëåííàÿ òåêóùåãî áàðà



if ( // ïðîâåðêà óñëîâèé íà ïîêóïêó
(MAFast2<=MASlow2)&&
(MAFast3>MASlow3))
{
BuyOp=true;
}

if ( // ïðîâåðêà óñëîâèé íà ïðîäàæó
(MAFast2>=MASlow2)&&
(MAFast3<MASlow3))
{
SellOp=true;
}


if (BuyOp) // åñëè óñëîâèÿ íà ïîêóïêó âûïîëíÿþòñÿ
{
if (Ord==2)// è åñëè óæå îòêðûòà øîðòîâàÿ ïîçèöèÿ
{
OrderClose(ticket,1,Ask,3,Red); // òîãäà çàêðûòü øîðòîâóþ
}
if (Ord!=1)// à åñëè åù¸ íå îòêðûòà áàåâàÿ ïîçèöèÿ
{
OrderSend(Symbol(),OP_BUY,1,Ask,3,0,0," buy ",777,0,Green); // òîãäà îòêðûòü áàåâóþ
}
}

if (SellOp) // åñëè óñëîâèÿ íà ïðîäàæó âûïîëíÿþòñÿ
{
if (Ord==1) // è åñëè óæå îòêðûòà áàåâàÿ ïîçèöèÿ
{
OrderClose(ticket,1,Bid,3,Green);
}
if (Ord!=2) // à åñëè åù¸ íå îòêðûòà øîðòîâîé ïîçèöèè
{
OrderSend(Symbol(),OP_SELL,1,Bid,3,0,0," sell",777,0,Red); // òîãäà îòêðûòü øîðòîâóþ
}
}


return(0);
}