Вот так, в самом простейшем случае:
//задать в глоб. переменных static int prevtime = 0; int start() { if(Time[0] == prevtime) return(0);//ждём появления нового бара prevtime = Time[0];//если появился новый бар , включаемся // всё, что задается ниже - будет работать по "ценам открытия" //нового бара, т.е. будет срабатывать в момент его появления //на том графике, на кот. стоит советник
Добрый день всем трейдерам-разработчикам! :)
Подскажите, пожалуйста, как определить момент закрытия свечи, получить цену этого закрытия и сразу же открыть позицию по этой цене?
Благодарен заранее :)
Сам момент (время) закрытия и цена закрытия бара априори неизвестны.
Объяснякется это тем что нам неизвестно сколько тиков/сделок пройдёт за последние секунды/минуты ещё не закрытого бара.
Цена и время закрытия образуются с открытием нового бара, что и продемонстрировано в конструкции rid'а
Моя задача - максимально оперативно реагировать на закрытие (открытие) свечи. Подскажите, как лучше - через Volume или Time?
Разница в том, что по объему ловится реальное открытие бара - если есть пропущенные тики в начале (например, переход пришелся на вычисления), то такой бар не обрабатывается. По времени же определяется факт того, что предыдущий тик относился к предыдущему бару, но НЕ гарантируется, что поступивший вслед - это ПЕРВЫЙ тик нового бара - т.е. открытие бара. Это будет просто первый пойманный тик нового бара, но не обязательно первый для бара.
Так что вы уж сами определитесь, что вам нужнее - обрабатывать бары, только если они пойманы в самом начале, или просто новые, в каком бы месте их новизна не определилась.
Добрый день всем трейдерам-разработчикам! :)
Подскажите, пожалуйста, как определить момент закрытия свечи, получить цену этого закрытия и сразу же открыть позицию по этой цене?
Благодарен заранее :)
расчитайте среднюю выхода тика в сек за последнюю минуту (5 мин, зависит от таймфрейма и т.п.) и откройте за среднюю величину до формирования бара думаю получите наиболее точное значение, но конечно изврат.
Можно по объему - открытие бара всегда имеет Volume==1 для тикового объема. В случае советника if(Volume[0] != 1 return;
Пётр, не всегда такая конструкция будет работать корректно.
Бывает значение Volume[] увеличивается не на единицу и даже не на 2, а больше, т.е можем перепрыгнуть через условие (Volume[0]==1)
Пётр, не всегда такая конструкция будет работать корректно.
Бывает значение Volume[] увеличивается не на единицу и даже не на 2, а больше, т.е можем перепрыгнуть через условие (Volume[0]==1)
Дык я ж постом выше это упомянул:
Разница в том, что по объему ловится реальное открытие бара - если есть пропущенные тики в начале (например, переход пришелся на вычисления), то такой бар не обрабатывается.
Но подчеркнуть это лишний раз не помешает - если вы пропустили, то невомкуэленный чел и подавно.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Добрый день всем трейдерам-разработчикам! :)
Подскажите, пожалуйста, как определить момент закрытия свечи, получить цену этого закрытия и сразу же открыть позицию по этой цене?
Благодарен заранее :)