Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Спасибо за совет.
Поделитесь, пожалуйста, опытом. А именно:
1. Механизм генерации уникальных имён. Прямой перебор существующих имён автомнкрементом?
2. Механизм проверки аутентичности объекта. Т.е. не просто проверить, есть ли объект с таким именем, а всех его параметров, например, размеров, типов, текста и прочее. При учёте экономии ресурсов. Выполнять колоссальное количество проверок каждого свойства каждого объекта на каждом тике - весьма трудозатратно. Конечно, если бы было либо блокировка объекта от любых изменений извне (кроме советника-создателя), или расчёт хэша объекта, чтобы БЫСТРО (за один "if") проверить объект на аутентичность.
Прошу подтвердить воспроизведение ситуации с отсутствием перерисовки чарта.
Приложил простенький эксперт. Условия:
1. С 2013.01.07 по 2013.02.11. Скорее всего, не влияет.
2. Тестирование в визуальном режиме.
3. При первом прогоне замедляем скорость до минимуму:
4. На последующем прогоне после инициализации нажимаем Ф12 (сгенерировать один тик).
Ещё одно очень важное условие - терминал должен работать в режиме офф-лайн. Для чистоты эксперимента попробуйте отключить комп от сети (отключить все сетевые адаптеры).
Наблюдаем.
1. Запаздывание отоброажение значения спреда на графике.
Некорретная работа функции ChartRedraw или я чего неверно сделал? Если пошевелить график мышкой (подвигать по горизонтали (времени), перерисовка производится корректно.
kPVT
Спасибо за совет.
Поделитесь, пожалуйста, опытом. А именно:
1. Механизм генерации уникальных имён. Прямой перебор существующих имён автомнкрементом?
2. Механизм проверки аутентичности объекта. Т.е. не просто проверить, есть ли объект с таким именем, а всех его параметров, например, размеров, типов, текста и прочее. При учёте экономии ресурсов. Выполнять колоссальное количество проверок каждого свойства каждого объекта на каждом тике - весьма трудозатратно. Конечно, если бы было либо блокировка объекта от любых изменений извне (кроме советника-создателя), или расчёт хэша объекта, чтобы БЫСТРО (за один "if") проверить объект на аутентичность.
Не претендуя на истинность и оптимальность.
1. Можно пользоваться стандартной библиотекой в ней для имени объекта используется рандомное число + имя, например: 18467RadioGroupItem0Button, 06334ClientBack. И самому не нужно удалять объекты.
Я пока не особо подружился со стандартной библой и делаю так, проблем не было.
Тут дискретность basedName будет 1 секунда. Если добавлять несколько одинаковых индикаторов из шаблона то будут коллизии, в этом случае можно к basedName прибавить параметры индикатора, или возможно милисекунды к TimeLocal(), рандомное число, что-то еще. В общем варианты есть.
2. Аутентичность объекта - его уникальное имя. Два объекта даже разного типа с одинаковыми именами не могут быть в одном окне графика. Зачем проверять все свойства объекта? Поясните.
Хотите сделать проверку на ручное изменение свойств объекта? Есть событие CHARTEVENT_OBJECT_CHANGE.
Для контроля случайного удаления, при обращении к объекту надо проверить его существование и при необходимости восстановить (кстати есть событие удаления объекта - не пользуюсь).
Если все таки охота использовать Comment для вывода форматированной информации, можно например задаться необходимой длиной строки и зная эту длину вставлять описание и значение параметра (определяя их длины) в нужные места.
kPVT
Спасибо за совет.
Поделитесь, пожалуйста, опытом. А именно:
1. Механизм генерации уникальных имён. Прямой перебор существующих имён автомнкрементом?
2. Механизм проверки аутентичности объекта. Т.е. не просто проверить, есть ли объект с таким именем, а всех его параметров, например, размеров, типов, текста и прочее. При учёте экономии ресурсов. Выполнять колоссальное количество проверок каждого свойства каждого объекта на каждом тике - весьма трудозатратно. Конечно, если бы было либо блокировка объекта от любых изменений извне (кроме советника-создателя), или расчёт хэша объекта, чтобы БЫСТРО (за один "if") проверить объект на аутентичность.
kPVT
Спасибо за совет. Попробую через CHARTEVENT_OBJECT_CHANGE контролить.
Dima_S
Спасибо. Но в применении стандартных классов не вижу необходимости.
Очень прошу, протестируйте, пожалуйста, функцию ChartRedraw с помощью готового простенького советника в моём предыдущем сообщении. К сожалению, почему-то он эта функция даёт опоздание на один тик. Т.е. в пример показывает, что значение спреда показывается за предыдущий тик, хотя обработка и вывод происходит на текущем.
kPVT
Спасибо за совет. Попробую через CHARTEVENT_OBJECT_CHANGE контролить.
Dima_S
Спасибо. Но в применении стандартных классов не вижу необходимости.
Очень прошу, протестируйте, пожалуйста, функцию ChartRedraw с помощью готового простенького советника в моём предыдущем сообщении. К сожалению, почему-то он эта функция даёт опоздание на один тик. Т.е. в пример показывает, что значение спреда показывается за предыдущий тик, хотя обработка и вывод происходит на текущем.
Из Маркета невозможно скачивать и устанавливать программы больших размеров. Будьте внимательны. Причина неизвестна.
Возможно, установлены какие-либо ограничения. Официально информации о них нет.
Подскажите, пожалуйста:
Может.Все тоже самое,как и iCustom().
Может.Все тоже самое,как и iCustom().
Точно, может. Допустил ошибку в коде.
Спасибо.