![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
При чем тут привязка к новому бару? Требуется время задавать
Их смысл в этом и заключается - чтобы не сбрасывались при смене таймфрейма, например. Если нужно обнулять при перезапуске - обнуляйте явно.
Логично, я вообще так обычно пишу, чтобы не реагировать на смены ТФ и т.д.
Их смысл в этом и заключается - чтобы не сбрасывались при смене таймфрейма, например. Если нужно обнулять при перезапуске - обнуляйте явно.
Особенно показателен текущий пример - использовать статик для определения нового бара, особенно когда переключился на другой период. Удачи в поиске граблей.
Особенно показателен текущий пример - использовать статик для определения нового бара, особенно когда переключился на другой период. Удачи в поиске граблей.
Я ж написал: если нужно обнулять - обнуляйте явно. Или вам религия не позволяет? :)
В ОнИните вызвать с параметром тру.
Я ж написал: если нужно обнулять - обнуляйте явно. Или вам религия не позволяет? :)
В ОнИните вызвать с параметром тру.
Вообще, выгода от использования локальных static лишь в том, что, в отличии от глобальных мы экономим имена. То есть не надо для 10 функций объявлять 10 глобальных переменных
А память не экономится, так как каждая локальная переменная имеет фиксированный адрес, как и глобальная и она резервируется до старта программы. По крайней мере, так в Си/С++.
Вообще, выгода от использования локальных static лишь в том, что, в отличии от глобальных мы экономим имена. То есть не надо для 10 функций объявлять 10 глобальных переменных
А память не экономится, так как каждая локальная переменная имеет фиксированный адрес, как и глобальная и она резервируется до старта программы. По крайней мере, так в Си/С++.
Какая ещё экономия? Какая, нафиг, память, вы о чём???
Преимущество локальных переменных перед глобальными в том, что их область видимости ограничена одной функцией. Всегда ваш, кэп. )
Какая ещё экономия? Какая, нафиг, память, вы о чём???
Преимущество локальных переменных перед глобальными в том, что их область видимости ограничена одной функцией. Всегда ваш, кэп. )
Алексей имел в виду, что при использовании локальных переменных нет проблемы с пересечением имен, т.е. можно использовать одинаковую "static datetime dtLastBarTime" в каждой функции, а не плодить "datetime dtLastBarTime_1, datetime dtLastBarTime_2" на глобальном уровне.
С уважением, Он же )
Алексей имел в виду, что при использовании локальных переменных нет проблемы с пересечением имен, т.е. можно использовать одинаковую "static datetime dtLastBarTime" в каждой функции, а не плодить "datetime dtLastBarTime_1, datetime dtLastBarTime_2" на глобальном уровне.
С уважением, Он же )
А, ну это да. Ещё при использовании локальных i в каждом цикле не нужно плодить глобальные "int i_сycle1", "int i_cycle2" и т.д.
а не плодить "datetime dtLastBarTime_1, datetime dtLastBarTime_2" на глобальном уровне.
Нет, правда, как такие "изящные" решения вообще в голову прийти могут? ))