Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Он не должен быть равен нулю по логике вообще - не понятно, почему так получается!
Он не должен быть равен нулю по логике вообще - не понятно, почему так получается!
Запустил в отладчике на Si-9.18. Время в rates почему-то 2016 год. Хотя значение i - 2189. Соответственно, он начинает расчет в начале графика, где ликвидности нет. Первоначальное время между старт и стоп - 1 час. Но за этот час - всего одно значение времени. Он находит его и переменной старт, и стоп. В итоге старт = стоп. Разумеется. если их отнять, получится ноль. Дальше не разбирался пока.
У вас d1 выдает миниатюрные цифры, я избегаю подобных проблем преобразуя price в int, т.е. например int bid=int((tick_array[0].bid+_Point/10)/_Point);, наверняка иногда выдается 0, если расчеты производить в double
Да не будем обсуждать d1 - так надо, значит надо, там всё корректно считается. Вопрос в том, почему у нас получается одинаковое значение у start_time и stop_time, как и start_index и stop_index ?
Да не будем обсуждать d1 - так надо, значит надо, там всё корректно считается. Вопрос в том, почему у нас получается одинаковое значение у start_time и stop_time, как и start_index и stop_index ?
После очередного зависания терминал перестал включатся.... как его оживить без переустановки?
Оказалось, что висит в памяти - принудительно убил процесс - запустился.
Как такое возможно, что время становится равным? Пол года все работало корректно...
Запустил в отладчике на Si-9.18. Время в rates почему-то 2016 год. Хотя значение i - 2189. Соответственно, он начинает расчет в начале графика, где ликвидности нет. Первоначальное время между старт и стоп - 1 час. Но за этот час - всего одно значение времени. Он находит его и переменной старт, и стоп. В итоге старт = стоп. Разумеется. если их отнять, получится ноль. Дальше не разбирался пока.
Поставьте BarsUsed=100 во входящих параметрах.
Поставьте BarsUsed=100 во входящих параметрах.
Да, так ошибок не возникает. Но если попадете на какой-то малоликвидный инструмент или на неликвидное время - в вечернюю сессию например, то в течение часа запросто может оказаться 1 младший бар. Вот Вам limit = 0 и обеспечен! А если котировки 2 - то limit/2 все равно при округлении 0 даст.
Да, так ошибок не возникает. Но если попадете на какой-то малоликвидный инструмент или на неликвидное время - в вечернюю сессию например, то в течение часа запросто может оказаться 1 младший бар. Вот Вам limit = 0 и обеспечен! А если котировки 2 - то limit/2 все равно при округлении 0 даст.
Возможно, подумаю, спасибо. Но глобальная проблема в чём то другом.... беда в том, что она не стабильна.
Дело хозяйское, попробуйте разделить 0,0000099999 на 2, например
Принтанул d1 - для моих задач это
В общем дело не в этом, спасибо.