Добрый день подскажите как сделать чтобы советник используя 15 минутный тайм фрейм проверял значения каждые 20 минут допустим в 9-20, 9-40 следил за пересечением RSI и в случае пересечения уровня через двадцать минут проверял значение цены. Вот то что мне нужно исправить:
if (Hour()==9 && (Minute() == 20) && (RSI<50)) Price2==Bid; { if (Hour()==9 && (Minute() == 40) && (Bid<Price2))
...можно проверять остаток от деления, если минуты делятся без остатка на 20, значит сейчас очередные 20 минут
if (Minute()%20==0)
А как сделать чтобы советник запомнил цену которая была при исполнении условия что допустим в 9-20 RSI пересекла уровень и через 20 минут идет проверка цены. И мне нужно сравнить цену 20 минут назад и сейчас
Как сделать эту проверку в цикле ?
можно так
{
if(BufferPointUp[i+BarCount]!= EMPTY_VALUE)
break;
}
if(BarCount==0) BufferPointUp[i]=high[i];
можно так
Спасибо.
Добрый день!!! Подскажите как сделать рандомный выбор числа в заданном диапазоне. Есть какая-нибудь функция для этого???
Фигня какая-то.Довел код уже до такого состояния:
Ticket=OrderSend(NULL,OP_BUY,Lot,Ask,slippage,0,0,NULL,magic,0,Blue);
if(OrdersTotal()!=0)
{
for (int i = 0; i < OrdersTotal(); i++)
{
if(OrderSelect(i,SELECT_BY_POS)==true)
{
TP=NormalizeDouble(Bid+TakeProfit*Point,Digits);
bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),TP,0,0);
}
}
return;
}
Все равно ТП не ставится.
Все равно ТП не ставится.
Фигня какая-то.Довел код уже до такого состояния:
Все равно ТП не ставится.
Зачем так сложно, когда тикет есть?
Ticket=OrderSend(NULL,OP_BUY,Lot,Ask,slippage,0,0,NULL,magic,0,Blue);
//не забываем проверить код ошибки
if(Ticket<0) Print("Ой, ошибочка: ", _LastError);
TP=NormalizeDouble(Bid+TakeProfit*Point,Digits);
bool modify=OrderModify(Ticket,OrderOpenPrice(),OrderStopLoss(),TP,0);
//не забываем проверить код ошибки
if(!modify) Print("OOPS! Modify error: ", _LastError);
Добрый день подскажите как сделать чтобы советник используя 15 минутный тайм фрейм проверял значения каждые 20 минут допустим в 9-20, 9-40 следил за пересечением RSI и в случае пересечения уровня через двадцать минут проверял значение цены. Вот то что мне нужно исправить:
Price2==Bid;
{
if (Hour()==9 && (Minute() == 40) && (Bid<Price2))
{
ticket=OrderSend(Symbol(),OP_SELL, Lts, Bid, SP,0,0, NULL, Magic, 0, Blue);
return(0);
}
}
Добрый день подскажите как сделать чтобы советник используя 15 минутный тайм фрейм проверял значения каждые 20 минут
...можно проверять остаток от деления, если минуты делятся без остатка на 20, значит сейчас очередные 20 минут
...можно проверять остаток от деления, если минуты делятся без остатка на 20, значит сейчас очередные 20 минут