Форум о заработке, инвестициях и криптовалюте - Показать сообщение отдельно - Помощь по реализации написания продуктов в коде MQL
Показать сообщение отдельно
Старый 08.03.2013, 12:57   #11
madman
Любитель
 
Аватар для madman
 
Регистрация: 17.02.2013
Сообщений: 469
Вы сказали Спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Отправить сообщение для madman с помощью ICQ
Автор темы По умолчанию

Произвел доработку.

Теперь советник открывает не более 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), то закрываем ордер селл и открываем ордер бай.
Теорию я понимаю, реализовать пока не могу.
madman вне форума