Time: 2014-03-03 | Download file:Open_Market_Orders.mq4
#property copyright "Copyright © 2014, Хлыстов Владимир" #property link "cmillion@narod.ru" #property show_inputs #property version "1.00" #property strict //-------------------------------------------------------------------- #property description "скрипт по текущей цене откроет сразу указанное в переменной orders кол-во ордеров по одной цене, " #property description "выставит стопы у всех на одинаковом размере пунктов, тейки будут у всех разные, по мере увеличения." #property description "Например, открылись 10 ордеров лотом 0,01, стопы у всех 400 пунктов, а тейки на первом - 50, " #property description "на втором -100, на третьем - 150, на четвертом - 200 ну и так все 10 ордеров." //-------------------------------------------------------------------- input int type = OP_BUY; //тип ордера 0 - buy; 1 - sell input int orders = 10; //кол-во ордеров input int stoploss = 200; //уровень выставления SL, если 0, то SL не выставляется input int takeprofit = 200; //уровень выставления TP, если 0, то SL не выставляется input int Step_TP = 100; //шаг выставления последующих TP input double Lot = 0.1; //объем ордера input int slippage = 3; //Максимально допустимое отклонение цены для рыночных ордеров input int Magic = 0; //уникальный номер ордера //-------------------------------------------------------------------- double SL,TP; //-------------------------------------------------------------------- int start() { if (type==OP_BUY) { 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 (type==OP_SELL) { if (takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits); else TP=0; if (stoploss!=0) SL = NormalizeDouble(Bid + stoploss*Point,Digits); else SL=0; } for (int i=0; i10) return; Sleep(2000); } return; } //-------------------------------------------------------------------- void ShowERROR() { int err=GetLastError(); switch ( err ) { case 1: return; case 2: Alert("Нет связи с торговым сервером ",Symbol());return; case 3: Alert("Error неправильные параметры ",Symbol());return; case 130: Alert("Error близкие стопы Ticket ",Symbol());return; case 134: Alert("Недостаточно денег ",Symbol());return; case 146: Alert("Error Подсистема торговли занята ",Symbol());return; case 129: Alert("Error Неправильная цена ",Symbol());return; case 131: Alert("Error Неправильный объем ",Symbol());return; case 4200:Alert("Error Объект уже существует ",Symbol());return; default: Alert("Error " ,err," ",Symbol());return; } } //--------------------------------------------------------------------