Не обращайте внимание на Stoploss. Хочу чтобы он двигался на уровне с MA_21, пытаюсь решить этот вопрос. Мой вопрос в следующем: Ордера открываются по условию, а закрываться не хотят. Условие закрытие ордера я опередил как противоположная ситуация с открытием:
if(CountTrades()== 0 && MA_7_1 < MA_31_1 && MA_7_2 >= MA_31_2) ---- Открываем ордер на покупку по пересечению двух скользящих
Далее написал так: if(MA_7_1 > MA_31_1 && MA_7_2 <= MA_31_2)
{
if(!OrderClose(ticket,Lots,Bid,Slippage,clrNONE))
Comment("Не удалось закрыть ордер на продажу");
}
Ордера как BUY так и SELL не закрываются, выполнение условия не происходит. Помогите начинающему программисту!
Мухи отдельно котлеты отдельно!
Не должно быть в одном блоке, открытие и закрытие.
Вернее может но не вашем случаи.
Мухи отдельно котлеты отдельно!
Не должно быть в одном блоке, открытие и закрытие.
Вернее может но не вашем случаи.
Тоесть событие о закрытии позиции не должно быть внутри цикла... я понял, попробую доработать. Спасибо!
Тоесть событие о закрытии позиции не должно быть внутри цикла... я понял, попробую доработать. Спасибо!
Да сами внимательно посмотрите на свой код. У вас задается ticket только что открытого ордера. Ну мод его понятен. И тут-же идет команда на закрытие ордера по этому тикету. Но уже с другими условиями.
Просмотр на закрытие нужно проводить в цикле с проверкой условия.
Пересечение МА-шек на реальном рынке будет неоднократным, т.е. то выше то ниже и т.д.
Это прямой убыток, как минимум на стоимость спреда.
Добрый день. Владимир получилось реализовать? У меня похожая задача,тоже голову ломаю как реализовать
Здравствуйте, скорее всего она решилась как-то сама по себе :) Правильно сказал человек с верху, действия о закрытии, открытии ордеров следует производить отдельно.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Не обращайте внимание на Stoploss. Хочу чтобы он двигался на уровне с MA_21, пытаюсь решить этот вопрос. Мой вопрос в следующем: Ордера открываются по условию, а закрываться не хотят. Условие закрытие ордера я опередил как противоположная ситуация с открытием:
if(CountTrades()== 0 && MA_7_1 < MA_31_1 && MA_7_2 >= MA_31_2) ---- Открываем ордер на покупку по пересечению двух скользящих
Далее написал так: if(MA_7_1 > MA_31_1 && MA_7_2 <= MA_31_2)
{
if(!OrderClose(ticket,Lots,Bid,Slippage,clrNONE))
Comment("Не удалось закрыть ордер на продажу");
}
Ордера как BUY так и SELL не закрываются, выполнение условия не происходит. Помогите начинающему программисту!