надо для селла и для бая
double Sell () { RefreshRates(); if(OrdersTotal()==0) { OrderSend (Symbol (), OP_SELL, Lot, Bid, 0, High[1],Bid-50*Point,NULL ,0, 0,Red); //Открываемся вниз Print(GetLastError()); } return;
Всем привет.
Написал советника один из принципов которого - открытие только одного ордера (если один рыночный ордер уже есть, то еще один открываться не может).
Поставил ограничение (if (OrdersTotal ()==0)), а он может открыть до 4 (большее количество не наблюдал) ордеров при чем в один момент времени. Не могу понять где ошибка.
Есть еще одна проблемка - программа не модифицирует ордера. Тоже не могу понять где просчитался.
Буду признателен за помощь.
надо для селла и для бая
Спасибо большое, а что по модификации подскажете?
Наверно с фигурными скобками где-то напутано.
Наверно с фигурными скобками где-то напутано.
нет, с прогой все ок. Если б была проблема со скобками я б ее не скомпилировал, а так все чудно работает, вот только не совсем так как мне надо.
Спасибо большое, а что по модификации подскажете?
if (OrderOpenTime()<Time[0] && Time[1]<=OrderOpenTime() ) { print..... }
После каждого ифа коммент выведите, посмотрите попадает туда или неправильное условие
ок, спасибо
нет, с прогой все ок. Если б была проблема со скобками я б ее не скомпилировал, а так все чудно работает, вот только не совсем так как мне надо.
Ошибаетесь, скомпилируется, если количество открывающих и закрывающих скобок одинаково. Но они могут быть расставлены неправильно.
Расставьте открывающую скобку и соответствующую ей закрывающую на одной вертикали. Так легче будет разбираться.
А перед модификацией надо проверять, чтобы стоплосс и тейкпрофит не были ближе к цене ордера чем величина стоплевела.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Всем привет.
Написал советника один из принципов которого - открытие только одного ордера (если один рыночный ордер уже есть, то еще один открываться не может).
Поставил ограничение (if (OrdersTotal ()==0)), а он может открыть до 4 (большее количество не наблюдал) ордеров при чем в один момент времени. Не могу понять где ошибка.
Есть еще одна проблемка - программа не модифицирует ордера. Тоже не могу понять где просчитался.
Буду признателен за помощь.