Предлагалось делать это по таймеру раз в полторы минуты. А никак не перед каждым тиком, и тем более — не по событию чарта.
Доступ к таймсериям в МТ5 действительно не идеальный. Но если нужно решить задачу, а не найти оправдание, то это возможно.
Никто оправдания не ищет. Вы не знаете уровень сложности задачи. Поэтому так просто и говорите про оправдание.
Предлагалось обновлять по таймеру раз в 2 минуты. Так у меня и сделано.
Но. Этого мало. Даже после этого обновления по таймеру при создании события на чарте через графический интерфейс часто получалось так, что вызов iBarShift дает -1 . Это, соответственно, вызывает выход за границу массива или еще какую-то ошибку. Поэтому попробовал перед входом в ОнЧартЕвент делать проверку доступности к таймсериям. Для лучшего понимания, скажу, надо ко всем 21 таймсериям делать проверку доступа. Если хотя бы к одной таймсерии нет доступа, то почти 100% вероятность, что графические построения будут сделаны с какой-нибудь ошибкой.
Программа сложная. примерно 50 000 строк. На таком объеме много различных обращений к таймсериям.
Тормоза постоянно возникают (В варианте для МТ5). В МТ4 работает как часы.
МТ5 для меня не интересен. Я не использую его в торговле. Только МТ4. Программу стал переводить только по запросам пользователей. Столкнувшись с таким геморроем, решил, что лучше заниматься тем, что интересно.
За 14 лет разработки этой программы появились интересные идеи. Вот реализацией этих идей и занимаюсь.
Предлагалось обновлять по таймеру раз в 2 минуты. Так у меня и сделано.
Но. Этого мало. Даже после этого обновления по таймеру при создании события на чарте через графический интерфейс часто получалось так, что вызов iBarShift дает -1 .
У меня тоже были сложности с синхронизацией, даже после обновления по таймеру. Но воспроизвести железно не смог, проблема плавающая.
Eugeni Neumoin:
МТ5 для меня не интересен. Я не использую его в торговле. Только МТ4. Программу стал переводить только по запросам пользователей. Столкнувшись с таким геморроем, решил, что лучше заниматься тем, что интересно.
За 14 лет разработки этой программы появились интересные идеи. Вот реализацией этих идей и занимаюсь.
Я не пропагандирую за МТ5. Просто сразу заметил, что у вас особого желания разобраться нет )
Никто оправдания не ищет. Вы не знаете уровень сложности задачи. Поэтому так просто и говорите про оправдание.
Предлагалось обновлять по таймеру раз в 2 минуты. Так у меня и сделано.
Но. Этого мало. Даже после этого обновления по таймеру при создании события на чарте через графический интерфейс часто получалось так, что вызов iBarShift дает -1 . Это, соответственно, вызывает выход за границу массива или еще какую-то ошибку. Поэтому попробовал перед входом в ОнЧартЕвент делать проверку доступности к таймсериям. Для лучшего понимания, скажу, надо ко всем 21 таймсериям делать проверку доступа. Если хотя бы к одной таймсерии нет доступа, то почти 100% вероятность, что графические построения будут сделаны с какой-нибудь ошибкой.
Программа сложная. примерно 50 000 строк. На таком объеме много различных обращений к таймсериям.
Тормоза постоянно возникают (В варианте для МТ5). В МТ4 работает как часы.
МТ5 для меня не интересен. Я не использую его в торговле. Только МТ4. Программу стал переводить только по запросам пользователей. Столкнувшись с таким геморроем, решил, что лучше заниматься тем, что интересно.
За 14 лет разработки этой программы появились интересные идеи. Вот реализацией этих идей и занимаюсь.
То есть предлагаете не использовать буферы, а работать со своими массивами?
Загляните в СБ. Там есть работа с индикаторами. Если своё делать не хочется. А вообще - один раз сделать класс, а дальше только пользоваться им для любого тф. И данные всегда будут в разовой доступности. Только новых добавлять побарно.
То есть предлагаете не использовать буферы, а работать со своими массивами?
Зачем тогда буферы?
То есть предлагается сделать свой костыль, вместо буферов :(
И вместо iTime, iLow и т.д. сделать свои функции... переписать все по своему, в обход неработающих функций из МТ5...
Всё там работает. Но иногда в доступе отказывается. Может по причине обновлений таймсерии - не знаю. При отказе нужно повторить запрос, так как первый запрос активизирует подкачку данных.
Предлагалось делать это по таймеру раз в полторы минуты. А никак не перед каждым тиком, и тем более — не по событию чарта.
Доступ к таймсериям в МТ5 действительно не идеальный. Но если нужно решить задачу, а не найти оправдание, то это возможно.
Никто оправдания не ищет. Вы не знаете уровень сложности задачи. Поэтому так просто и говорите про оправдание.
Предлагалось обновлять по таймеру раз в 2 минуты. Так у меня и сделано.
Но. Этого мало. Даже после этого обновления по таймеру при создании события на чарте через графический интерфейс часто получалось так, что вызов iBarShift дает -1 . Это, соответственно, вызывает выход за границу массива или еще какую-то ошибку. Поэтому попробовал перед входом в ОнЧартЕвент делать проверку доступности к таймсериям. Для лучшего понимания, скажу, надо ко всем 21 таймсериям делать проверку доступа. Если хотя бы к одной таймсерии нет доступа, то почти 100% вероятность, что графические построения будут сделаны с какой-нибудь ошибкой.
Программа сложная. примерно 50 000 строк. На таком объеме много различных обращений к таймсериям.
Тормоза постоянно возникают (В варианте для МТ5). В МТ4 работает как часы.
МТ5 для меня не интересен. Я не использую его в торговле. Только МТ4. Программу стал переводить только по запросам пользователей. Столкнувшись с таким геморроем, решил, что лучше заниматься тем, что интересно.
За 14 лет разработки этой программы появились интересные идеи. Вот реализацией этих идей и занимаюсь.
Предлагалось обновлять по таймеру раз в 2 минуты. Так у меня и сделано.
Но. Этого мало. Даже после этого обновления по таймеру при создании события на чарте через графический интерфейс часто получалось так, что вызов iBarShift дает -1 .
А exact у iBarShift, случайно, не равен true?
У меня тоже были сложности с синхронизацией, даже после обновления по таймеру. Но воспроизвести железно не смог, проблема плавающая.
МТ5 для меня не интересен. Я не использую его в торговле. Только МТ4. Программу стал переводить только по запросам пользователей. Столкнувшись с таким геморроем, решил, что лучше заниматься тем, что интересно.
За 14 лет разработки этой программы появились интересные идеи. Вот реализацией этих идей и занимаюсь.
Я не пропагандирую за МТ5. Просто сразу заметил, что у вас особого желания разобраться нет )
Конечно, лучше заниматься тем, что интересно!
Никто оправдания не ищет. Вы не знаете уровень сложности задачи. Поэтому так просто и говорите про оправдание.
Предлагалось обновлять по таймеру раз в 2 минуты. Так у меня и сделано.
Но. Этого мало. Даже после этого обновления по таймеру при создании события на чарте через графический интерфейс часто получалось так, что вызов iBarShift дает -1 . Это, соответственно, вызывает выход за границу массива или еще какую-то ошибку. Поэтому попробовал перед входом в ОнЧартЕвент делать проверку доступности к таймсериям. Для лучшего понимания, скажу, надо ко всем 21 таймсериям делать проверку доступа. Если хотя бы к одной таймсерии нет доступа, то почти 100% вероятность, что графические построения будут сделаны с какой-нибудь ошибкой.
Программа сложная. примерно 50 000 строк. На таком объеме много различных обращений к таймсериям.
Тормоза постоянно возникают (В варианте для МТ5). В МТ4 работает как часы.
МТ5 для меня не интересен. Я не использую его в торговле. Только МТ4. Программу стал переводить только по запросам пользователей. Столкнувшись с таким геморроем, решил, что лучше заниматься тем, что интересно.
За 14 лет разработки этой программы появились интересные идеи. Вот реализацией этих идей и занимаюсь.
Кешируйте таймсерии.
Что имеется в виду? Вручную свои кеши делать?
Что имеется в виду? Вручную свои кеши делать?
А exact у iBarShift, случайно, не равен true?
true. Мне нужно знать точный номер бара.
Один раз считать все таймсерии, а дальше только дополнять. Можно в окне.
То есть предлагаете не использовать буферы, а работать со своими массивами?
Зачем тогда буферы?
То есть предлагается сделать свой костыль, вместо буферов :(
И вместо iTime, iLow и т.д. сделать свои функции... переписать все по своему, в обход неработающих функций из МТ5...
Это кардинально. Но пусть этим энтузиасты занимаются. Постою в сторонке. Даже наблюдать за процессом не буду.
То есть предлагаете не использовать буферы, а работать со своими массивами?
То есть предлагаете не использовать буферы, а работать со своими массивами?
Зачем тогда буферы?
То есть предлагается сделать свой костыль, вместо буферов :(
И вместо iTime, iLow и т.д. сделать свои функции... переписать все по своему, в обход неработающих функций из МТ5...
true. Мне нужно знать точный номер бара.
Тогда ошибка в логике, возможно. Бара может и не быть.