indicator is too slow - страница 2

 
Alexey:
Ну а чего вы хотите от такого индикатора?
Я пытаюсь отловить зависимость появления ошибки "... too slow...". 
 
barabashkakvn:
Я пытаюсь отловить зависимость появления ошибки "... too slow...". 

Зависимость нужно ловить в той функции, которая передает сообщение в окно индикатора, скорей всего там ошибка.

В старом учебнике МТ4 был подобный индикатор, без каких либо параметров, для вывода информационных сообщений советника. Это на подобие

 
Alexey:
Зависимость нужно ловить в той функции, которая передает сообщение в окно индикатора, скорей всего там ошибка

Неа. Нет окна. Нет ничего. Ноль индикаторных буферов. В понедельник будет видно, но пока:

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

indicator is too slow

barabashkakvn, 2015.04.18 16:09

Нет. Я упростил. Индикатор теперь вообще ничего не рисует. Только отсылает события и свои события он не обрабатывает. На выходных, к сожалению, ничего не проверить.

 
barabashkakvn:

Неа. Нет окна. Нет ничего. Ноль индикаторных буферов. В понедельник будет видно, но пока:


А имя у индикатора есть? для его вызова
 
Alexey:
А имя у индикатора есть? для его вызова
Нет вызова, так как нет индикаторных буферов.
 
barabashkakvn:
Нет вызова, так как нет индикаторных буферов.
Так значит и индикатора нет, если нет имени
 
Renat:
Сколько обьектов читается/пишется/модифицируется/перемещается на каждом тике?

Есть ли защита от попыток бесполезного изменения позиций/статусов/итд, если позиция не изменилось?

Учтите, что очередь сообщений(все чтения и запись идут через очередь с блокировками) обьектов тесно связана с чартом и запросто может тормозить, если обьем изменений огромен или компьютер слаб.

Как идет работа с обьектами? Смешано ли чтение с записью? Если идет массовый режим читаю/пишу по каждому обьекту, то очередь будет постоянно синхронизироваться, ожидая сброса команд записи, что в разы увеличит задержки. Лучше всего массово читать (если обьектов очень много), а потом писать.
То есть такая ситуация: один график; быстрый рынок - котировки идут с большой скоростью; на графике индикатор №1 отсылает пользовательское событие на каждом тике, а индикатор №2 ловит событие и отрисовывает один или несколько (до десяти) графических объектов; планшет, но при этом терминал грузит процессор от 12 до 25%; - может возникать переполнение очереди сообщений и получается ошибка "... too slow..."?
 
barabashkakvn:
То есть такая ситуация: один график; быстрый рынок - котировки идут с большой скоростью; на графике индикатор №1 отсылает пользовательское событие на каждом тике, а индикатор №2 ловит событие и отрисовывает один или несколько (до десяти) графических объектов; планшет, но при этом терминал грузит процессор от 12 до 25%; - может возникать переполнение очереди сообщений и получается ошибка "... too slow..."?

Что мы все без кода гадаем-то?

Ведь запросто напрашивается ситуация самовозбуждения событий, когда создаются графические события (перемещения и тд) объектов, которые сам же (или кто-то другой) отлавливаешь и раскручиваешь проблему по экспоненте.

Нужен код.

 
Renat:

Что мы все без кода гадаем-то?

Ведь запросто напрашивается ситуация самовозбуждения событий, когда создаются графические события (перемещения и тд) объектов, которые сам же (или кто-то другой) отлавливаешь и раскручиваешь проблему по экспоненте.

Нужен код.

Сейчас создам заявку. И сразу вопрос: "А вообще можно как-то очередь сообщений контролировать"?
 
barabashkakvn:
Сейчас создам заявку. И сразу вопрос: "А вообще можно как-то очередь сообщений контролировать"?
Почему нет? Работайте только с теми событиями, которые генерируются Вашей программой.