Вопросы от "чайника" - страница 95

 
Подскажите можно ли как либо в переменную получить текущее значение шага ценовой шкалы?
 
sultanm:
Подскажите можно ли как либо в переменную получить текущее значение шага ценовой шкалы?
Можно получить данные о минимуме и максимуме текущего окна чарта, а что вы имеете в виду не очень понятно, уточняйте.
 
Urain:
Можно получить данные о минимуме и максимуме текущего окна чарта, а что вы имеете в виду не очень понятно, уточняйте.
Шаг сетки текущего чарта постоянно меняется в зависимости от выставленного увеличения и выбранной таймсерии да и просто в процессе появления новых баров. Вот и надо мне в реальном времени знать этот шаг. В принципе может и "данные о минимуме и максимуме" помогут. Подскажите как их получить.
Обработчик события "новый бар"
Обработчик события "новый бар"
  • 2010.10.04
  • Konstantin Gruzdev
  • www.mql5.com
Язык программирования MQL5 позволяет решать задачи на совершенно новом уровне. Даже те задачи, которые уже вроде имеют решения, благодаря объектно-ориентированному программированию могут подняться на качественно новый уровень. В данной статье специально взят простой пример проверки появления нового бара на графике, который был преобразован в достаточно мощный и универсальный инструмент. Какой? Читайте в статье.
 
sultanm:
Шаг сетки текущего чарта постоянно меняется в зависимости от выставленного увеличения и выбранной таймсерии да и просто в процессе появления новых баров. Вот и надо мне в реальном времени знать этот шаг. В принципе может и "данные о минимуме и максимуме" помогут. Подскажите как их получить.

Ну вот и вытянули из вас суть, оказывается вам нужен вертикальный размер сетки в прайсах.

Справочник MQL5 / Операции с графиками / ChartGetInteger   ENUM_CHART_PROPERTY_INTEGER

Справочник MQL5 / Операции с графиками / ChartGetDouble    ENUM_CHART_PROPERTY_DOUBLE

вам в помощь.

Хотя за самой формулой лучше к разработчикам, она то им известна (терминал то автоматом пересчитывает значения), а вам придётся её подбирать опытным путём.

 
 Программно построено N-ное количество рандомных графических объектов с рандомными именами, свойствами и прочими атрибутами. Возможно ли доступиться к очереди этих объектов, в порядке которой они были построены (например, чтобы удалять самые ранние объекты)? То есть отстраивались они последовательно во времени и с точки зрения списка/очереди/массива по мере создания должны иметь порядковые индексы по возрастанию. Есть ли такой список или массив, если по имени и прочим атрибутам искать бесполезно?
 
x100intraday:
 Программно построено N-ное количество рандомных графических объектов с рандомными именами, свойствами и прочими атрибутами. Возможно ли доступиться к очереди этих объектов, в порядке которой они были построены (например, чтобы удалять самые ранние объекты)? То есть отстраивались они последовательно во времени и с точки зрения списка/очереди/массива по мере создания должны иметь порядковые индексы по возрастанию. Есть ли такой список или массив, если по имени и прочим атрибутам искать бесполезно?
Есть свойство  OBJPROP_CREATETIME. Не проверял правда, ведь объекты создаются очень быстро и могут быть созданы предполагаю в одно и тоже время. Если другого способа не найдётся пока, то придёться при создании объектов вести запись в динамический массив, например.
Документация по MQL5: Основы языка / Типы данных / Объект динамического массива
Документация по MQL5: Основы языка / Типы данных / Объект динамического массива
  • www.mql5.com
Основы языка / Типы данных / Объект динамического массива - Документация по MQL5
 
tol64:
Можно ли программно только средствами MQL5, именно той программой, в которой содержатся ресурсы, сохранить эти ресурсы на диск?
Посмотрите функцию ResourceSave
 
Rosh:
Посмотрите функцию ResourceSave

Спасибо, с этим знаком. Отправленное мной пожелание в сервисдеск было исполнено. :) Только вот в справке написано:

ResourceSave

Устанавливает значение предопределенной переменной _LastError в ноль. 

То есть, ошибочное описание в справке. Из ResetLastError наверное попало. :)
 
tol64:

Спасибо, с этим знаком. Отправленное мной пожелание в сервисдеск было исполнено. :) Только вот в справке написано:

То есть, ошибочное описание в справке. Из ResetLastError наверное попало. :)
Да, Вы правы. Спасибо за сообщение, исправили.
 

 tol64, дело в том, что OBJPROP_CREATETIME - это, опять же, не что иное, как одно из свойств объекта... и я опасаюсь, что оно, повиснув на нём, придаст ему "излишней уникальности". Ведь не только имя объекта идентифицирует его как уникальный объект, но и некоторые другие его параметры, не так ли? Я этого позволить себе не могу, так как есть случаи, когда на месте прежнего объекта рисуется с теми же параметрами (time1,price1,time2,price2) другой такой же объект, но терминал, видя, что точно такой же уже существует, не рисует поверх него новый, а пропускает, а если прежний объект, скажем, был синий, а новый пришёл жёлтым, то просто поменяется цвет на жёлтый. Это я называю поглощением, которое сильно экономит ресурсы, так как не плодятся никому не нужные близнецы, загораживающие друг друга. Никакого ObjectFind, парсинга строки имени, сравнений через if и прочих лишних телодвижений. Но это достигается за счёт отказа от поименования объектов уникальными именами. Со свойствами - пока не проверял...

Причина обращения: