Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 1068
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
всем доброго здравия. Подскажите как взять открытие дня со смещением на час. То есть не первый час брать, а второй за день???
Примерно так
Но не мешало-бы поставить проверку на новый-ли день, иначе все тики с 1:00 до 2:00 будут соответствовать условию.
Добрый день, уважаемые! Подскажите, где ошибка в моих рассуждениях, и, если её нет, то какие исправления нужно внести в код: При повторном включении компа после отключении электричества происходит последовательная загрузка всех строк кода и после закрывающей фигурной скобки ф-и OnTick() идет считывание расположенных за ней пользовательских функций, и, прочитывая код ф-и CloseAllBuy(), происходит ее исполнение, хоть она и не была вызвана из ф-и OnTick(). То есть, при загрузке эксперта происходит закрытие всех открытых позиций. Как этого избежать?
Попробуй воспользоватся глобальными переменными . Если хочешь чтобы советник запускался с того же состояния когда и был закрыт, то все флаги состоянию нужно хранить в глобальных переменных. Их значение не меняется и храниться уеву тучу дней. как то так....
У меня есть такой оператор iOpen(NULL,PERIOD_D1,1) он показывает открытие дня, а как сделать открытие второго часа этого дня....????
iOpen() - это цена, все же правильней использовать iTime(), как выше уже подсказали. Ну и у разных западных компаний день может открыться в воскресенье вечером, за этим тоже как-то надо следить.
В общем, изучайте что такое iBarShift.
Добрый день, уважаемые! Подскажите, где ошибка в моих рассуждениях, и, если её нет, то какие исправления нужно внести в код: При повторном включении компа после отключении электричества происходит последовательная загрузка всех строк кода и после закрывающей фигурной скобки ф-и OnTick() идет считывание расположенных за ней пользовательских функций, и, прочитывая код ф-и CloseAllBuy(), происходит ее исполнение, хоть она и не была вызвана из ф-и OnTick(). То есть, при загрузке эксперта происходит закрытие всех открытых позиций. Как этого избежать?
А как вы проверяли, что CloseAllBuy() ниоткуда не вызывается? А может закрытие ещё где-то прописано?
Без кода никто не скажет, кроме автора.
CloseAllBuy() вызывается в одном-единственном месте: в ф-и OnTick() по условию if(Bid>buycloseprice) CloseAllBuy(); И это условие при новом включении не наступило и в период отключения тоже не наступало, а ф-я CloseAllBuy() все равно сработала при повторном включении эксперта.