//+------------------------------------------------------------------+
void OnTick(){
PriceHigh = NormalizeDouble(iCustom(Symbol(), PERIOD_CURRENT, "X_C_O_D_E", SignalPeriod, Deviat, 1, 2),Digits);
PriceLow = NormalizeDouble(iCustom(Symbol(), PERIOD_CURRENT, "X_C_O_D_E", SignalPeriod, Deviat, 0, 2),Digits);
Comment("верх"+DoubleToString(PriceHigh, Digits())+"\n"+ "низ"+DoubleToString(PriceLow, Digits()));
//+--- Выставляем ордер на покупку
if ( OrdersTotal() [COLOR=Red]==[/COLOR] 0 ){ //[COLOR=Red] Эт типа если нет рыночных и отложенных ордеров[/COLOR]
if ( [COLOR=Red]CountBuy() == 0[/COLOR]){ // [Оригинал: [CountBuy() <= 0]] - Эт какое число должно быть, если меньше ноля?
//Если ордеров на покупку нет, открытие бара ниже, а закрытие выше или равно, и прошло тиков не более 4, то...
if(Open[2]<PriceHigh && Close[1]>PriceHigh && Volume[0]<2){
// Открываем сделку на покупку
ticket=OrderSend(Symbol(),
OP_BUY,
Lots,
Ask,
Slippage,
PriceLow,
NormalizeDouble(Ask+TakeProfit*Point, Digits),
"TMA",
Magic,
0,
Green);
[COLOR=Red] Alert (GetLastError());[/COLOR]
[COLOR=Red]} // EIF_2[/COLOR]
[COLOR=Red]} // EIF_1 [/COLOR]
//+---Задаем цикл для расчета количества активных ордеров на продажу -------------------+
if ([COLOR=Red] CountSell() == 0[/COLOR]){ // [Оригинал: [CountSell() <= 0]]- Эт какое число должно быть, если меньше ноля?
if(Open[1]>=PriceLow && Close[1]<PriceLow && Volume[0]<2){
// Открываем сделку на продажу
ticket = OrderSend(Symbol(),
OP_SELL,
Lots,
Bid,
Slippage,
PriceHigh,
NormalizeDouble( Bid - TakeProfit * Point, Digits),
"TMA",
Magic,
0,
Red);
[COLOR=Red] Alert (GetLastError()); [/COLOR]
[COLOR=Red] } // EIF_2
} // EIF_1
} // EIF
} // EOF[/COLOR]