А чего вас циклы пугают?
Просто перед открытием поставьте условие: if(OrdersTotal() == 0)
Большое Спасибо за ответы!
Только в моём случае не: if(OrdersTotal() == 0) , а if(OrdersTotal() > 0). Протестировать удалось, в чем и заключалась задача, но evillive прав, в работе этот метод не згодится, так как торгуют другие советники, ордера открыты часто.
Буду искать другой способ.
Что по поводу циклов, у меня они в тестере намертво зависают. Опыта у меня мало.
А чего вас циклы пугают?
Это работает только в тестере или только если на счёте больше никто не торгует, ни руками, ни программно. Как только появляются "чужие" ордера, пусть даже отложенные, а не рыночные, всё, путаница. Хотя если задача в блокировании работы советника, можно и так.
Это как минимум! Он как просил, я так же подсказал! Если нужны различные варианты, то у меня на это работает цикл для сбора всей необходимой информации!
Большое Спасибо за ответы!
Только в моём случае не: if(OrdersTotal() == 0) , а if(OrdersTotal() > 0). Протестировать удалось, в чем и заключалась задача, но evillive прав, в работе этот метод не згодится, так как торгуют другие советники, ордера открыты часто.
Буду искать другой способ.
Что по поводу циклов, у меня они в тестере намертво зависают. Опыта у меня мало.
Причину зависания ищите в своём коде! У меня работают 4 цикла в старте, не считая циклов в вынесенных функциях, и ничего не зависает! И тестируйте не на всех тиках, а на открытии бара на М1!
Причину зависания ищите в своём коде! У меня работают 4 цикла в старте, не считая циклов в вынесенных функциях, и ничего не зависает! И тестируйте не на всех тиках, а на открытии бара на М1!
благодарю!
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
В коде программы, после открытия любого ордера, необходимо предотвратить открытие других ордеров пока не будет закрыт текущий, открытый.
Выглядит примерно так:
if( OrderSelect(ticket_sell, SELECT_BY_TICKET)==true) // Что тут поменять( заменить), чтоб выполнялся return пока открыт ордер, не используя операторов цикла?
{
return;
}
if(s0>Ask && s1<C1)
{
ticket_sell=OrderSend(Symbol(),OP_SELL,0.1,Bid,5,Bid+3000*Point,Bid-3000*Point);
}