08.03.2013, 12:57
|
#11
|
Любитель
Регистрация: 17.02.2013
Сообщений: 469
Вы сказали Спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Автор темы
Произвел доработку.
Теперь советник открывает не более 1 ордера в одну сторону, что позволило остановить открытие нового ордера на цене открытия следующей свечи..
Прикрутил трал (но пока это врмененно).
Цитата:
Сообщение от Yurchik36
double val1 = iCustom(NULL, 0, "Forexofftrend3", 0, 1);
double val2 = iCustom(NULL, 0, "Forexofftrend3", 1, 1);
if(val1 > val2)
{
OrderSend(Symbol(), OP_BUY, lots, Ask, slip, Bid - StopLoss*Point, Bid + TakeProfit*Point, NULL, Magic);
}
if(val1 < val2)
{
OrderSend(Symbol(), OP_SELL, lots, Bid, slip, Ask + StopLoss*Point, Ask - TakeProfit*Point, NULL, Magic);
}
return(0);
|
В этом случае он открывает ордера (постоянно) на открытии свечи при любом положении цены выше линий и соответсвенно ниже.
Цитата:
Сообщение от Yurchik36
Предложение как заставить открыть на получении противоположного сигнала:
Смотрим есть ли открытые ордера. А также бай или селл они.
Если открыт ордер бай, и появился сигнал (val1 > val2), то закрываем ордер бай и открываем ордер селл.
И наоборот:
Если открыт ордер селл, и появился сигнал (val1 > val2), то закрываем ордер селл и открываем ордер бай.
|
Теорию я понимаю, реализовать пока не могу.
|
|
|