Здравствуйте, Артём! Подскажите, пожалуйста, как написать советника, чтобы он не открывал ордеров до тех пор, пока цена не преодолеет заданный уровень, а после продолжал открывать ордера и после того, как цена вернётся обратно за уровень? С уважением Андрей.
Здравствуйте. Первое, что на ум приходит - использовать флаг в глобальных переменных терминала.
При запуске советника проверяется наличие глобальной переменной (п1)
в OnInit() проверяется наличие переменной и
если её ещё нет, то создать такую переменную и выставить её значение в 0
если уже есть, то идём к п.2
В OnTick() проверяется значение переменной и
если 0, и
цена не пересекла ещё заданный уровень, то идём к п.2
цена пересекла заданный уровень - выставляем значение переменной в 1
И если через iCustom в эксперт вызвать то индикатор виден? Картинку в студию! :)
Индикатор, который вызывается в эксперте через iCustom() не обязан выводить свои буферы на график пока вы сами его на график не накинете с теми же параметрами, что в эксперте используются. Исключение составляют лишь те индикаторы, которые рисуют не через буфер, а графическими объектами.
Индикатор, который вызывается в эксперте через iCustom() не обязан выводить свои буферы на график пока вы сами его на график не накинете с теми же параметрами, что в эксперте используются. Исключение составляют лишь те индикаторы, которые рисуют не через буфер, а графическими объектами.
После окончание тестов окно индикатора открывается.
В эксперте я вывожу Print и там видно что цены есть, значит бары пересчитаны.
Может я не совсем правильно выразился. Посчитать-то посчитал, а вывести графику может не успевает.
Пока не проверил этот вариант, пока думаю как это сделать.
А тут и думать нечего, берёшь любой индикатор из CodeBase и смотришь как там сделано.
Поменял но тоже не помогает.
у меня помогает)
взял ваш код, поставил close[0]
пс. для аска пишем close[0]+spread*_Point
Здравствуйте, Артём! Подскажите, пожалуйста, как написать советника, чтобы он не открывал ордеров до тех пор, пока цена не преодолеет заданный уровень, а после продолжал открывать ордера и после того, как цена вернётся обратно за уровень? С уважением Андрей.
Здравствуйте. Первое, что на ум приходит - использовать флаг в глобальных переменных терминала.
При запуске советника проверяется наличие глобальной переменной (п1)
Примерно так.
А тут и думать нечего, берёшь любой индикатор из CodeBase и смотришь как там сделано.
Проблема в том что в других индикаторах перемещение происходит на каждом баре а мне нужно на каждом тике.
у меня помогает)
взял ваш код, поставил close[0]
пс. для аска пишем close[0]+spread*_Point
И если через iCustom в эксперт вызвать то индикатор виден? Картинку в студию! :)
И если через iCustom в эксперт вызвать то индикатор виден? Картинку в студию! :)
а разве хоть один индикатор отображается через iCustom ?
пс. вы пытаетесь тики ловить через iCustom ?
И если через iCustom в эксперт вызвать то индикатор виден? Картинку в студию! :)
Индикатор, который вызывается в эксперте через iCustom() не обязан выводить свои буферы на график пока вы сами его на график не накинете с теми же параметрами, что в эксперте используются. Исключение составляют лишь те индикаторы, которые рисуют не через буфер, а графическими объектами.
а разве хоть один индикатор отображается через iCustom ?
После окончание тестов окно индикатора открывается.
пс. вы пытаетесь тики ловить через iCustom ?
Пока для тестов ловлю тики но вообще то цель в окне индикатора выводить в определенное время цены из файлов.
После окончание тестов окно индикатора открывается.
Только в том случае, если в советнике не используется HideTestIndicators()
Индикатор, который вызывается в эксперте через iCustom() не обязан выводить свои буферы на график пока вы сами его на график не накинете с теми же параметрами, что в эксперте используются. Исключение составляют лишь те индикаторы, которые рисуют не через буфер, а графическими объектами.
После окончание тестов окно индикатора открывается.