//+------------------------------------------------------------------+
//| óñòàíîâêà ìûøêîé ðûíî÷íûõ îðäåðîâ |
//| Copyright © 2012, Õëûñòîâ Âëàäèìèð |
//| cmillion@narod.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, Õëûñòîâ Âëàäèìèð"
#property link "cmillion@narod.ru"
#property show_inputs
//--------------------------------------------------------------------
extern int Stoploss = 0, //ñòîïëîññ îðäåðîâ
Takeprofit = 0; //òåéêïðîôèò îðäåðîâ
extern double Lot = 0.1; //ëîò
extern int Magic = 0; //óíèêàëüíûé íîìåð îðäåðîâ ýòîãî ñîâåòíèêà, åñëè 0 òî âåäåò âñå îðäåðà, â òîì ÷èñëå âûñòàâëåííûå âðó÷íóþ
extern bool comment = true; //âûâîäèòü èíôîðìàöèþ íà ýêðàí
//--------------------------------------------------------------------
int start()
{
int n;
double SL,TP;
double Price = NormalizeDouble(WindowPriceOnDropped(),Digits);
string txt=StringConcatenate("Ñêðèïò âûñòàâëåíèÿ ðûíî÷íîãî îðäåðà, ñòàðò ",TimeToStr(TimeCurrent(),TIME_DATE|TIME_SECONDS));
double MAXLOTMARGIN = AccountFreeMargin()/MarketInfo(Symbol(),MODE_MARGINREQUIRED);
if (Lot>MAXLOTMARGIN) txt=StringConcatenate(txt,"\nÍåäîñòàòî÷íî ñðåäñòâ äëÿ îòêðûòèÿ ",DoubleToStr(Lot,2)," ëîòà, ìàêñèìóì âîçìîæåí ",DoubleToStr(MAXLOTMARGIN,2)," ëîò");
else
{
while(true)
{
RefreshRates();
if(Price>Ask)
{
if (Takeprofit!=0) TP = NormalizeDouble(Ask + Takeprofit * Point,Digits); else TP=0;
if (Stoploss!=0) SL = NormalizeDouble(Ask - Stoploss * Point,Digits); else SL=0;
if (OrderSend(Symbol(),OP_BUY,Lot,NormalizeDouble(Ask,Digits),0,SL,TP,"StopOrders",Magic,0,CLR_NONE)!=-1)
{txt = StringConcatenate(txt,"\nÂûñòàâëåí BUY ",DoubleToStr(Ask,Digits));break;}
else txt = StringConcatenate(txt,"\nÎøèáêà ",GetLastError()," âûñòàâëåíèÿ BUY ");
}
if(Price<Bid)
{
if (Takeprofit!=0) TP = NormalizeDouble(Bid - Takeprofit * Point,Digits); else TP=0;
if (Stoploss!=0) SL = NormalizeDouble(Bid + Stoploss * Point,Digits); else SL=0;
if (OrderSend(Symbol(),OP_SELL,Lot,NormalizeDouble(Bid,Digits),0,SL,TP,"StopOrders",Magic,0,CLR_NONE)!=-1)
{txt = StringConcatenate(txt,"\nÂûñòàâëåí SELL ",DoubleToStr(Bid,Digits));break;}
else txt = StringConcatenate(txt,"\nÎøèáêà ",GetLastError()," âûñòàâëåíèÿ SELL ");
}
if (comment) Comment("Ïîïûòêà ",n," ",txt);
n++;
if (n>10) break;
}
}
if (comment) Comment(txt,"\nÑêðèïò çàêîí÷èë ñâîþ ðàáîòó ",TimeToStr(TimeCurrent(),TIME_DATE|TIME_SECONDS));
return(0);
}
//--------------------------------------------------------------------
Comments