Нужна таблица текущих значений по выбранным инструментам. - страница 7

 
Восстановление высоты панели поправили уже, будет в следующем билде.
 
joo:
По-хорошему, нужно просить у разрабов чарты с возможностью их "придокивания" в любом месте интерфейса терминала (приводить примеры подобного решения в терминалах не буду, все знают), тогда и можно будет заполнять неиспользуемое место в интерфейсе терминала как жаждет топикстартер. А уже на таком чарте рисуй что душе угодно, хоть и бестолковые (пардон, на мой взгляд) таблицы сабжа.
Вроде как просили. От них один шаг остался бы до кастомной истории... не дадут.
 
Количество колонок в маркет вотче обязательно будем увеличивать.
 
Renat:
Количество колонок в маркет вотче обязательно будем увеличивать.
Это уже интересно. Спасибо что услышали.
 

В продолжение темы...

В моем воспаленном мозгу наконец, оформилась конкретная идея.)) Очень надеюсь, что она будет интересна...

Можно всё сделать гораздо красивей!

  • Естественно и очевидно, что параметры рыночного окружения конкретного символа в терминале хранятся в одном месте и в единственном экземпляре. Независимо от количества графиков, советников и индикаторов.
  • Очевидно и то, что эти значения постоянно синхронизируются с сервером и изменяются.
  • Так вот, если добавить в эту кучу специальный хеш-массив даблов и сделать к нему доступ(r/w)  только из MQL, это открывает широчайшие возможности для обмена данными в мульти-инструментных роботах. 
  • И самое главное!)) Это позволяет решить и проблему сабжа. В смысле, достаточно будет сделать возможность подключения в марктвотче столбцов с нэймами и значениями из этого массива и всё. Больше не надо никаких других столбцов!  Сами нарисуем как нам надо. 
  • Вам конечно видней... На мой взгляд, доработка не громадная. Повлиять и как-то нарушить целостность архитектуры МТ не должна. В MQL придется добавить  всего несколько функций. Возможно, порешать с потокобезопасностью.  Зато, способ можно назвать красивым и незатейливым.
 
pronych:

В продолжение темы...

В моем воспаленном мозгу наконец, оформилась конкретная идея.)) Очень надеюсь, что она будет интересна...

Можно всё сделать гораздо красивей!

  • Естественно и очевидно, что параметры рыночного окружения конкретного символа в терминале хранятся в одном месте и в единственном экземпляре. Независимо от количества графиков, советников и индикаторов.
  • Очевидно и то, что эти значения постоянно синхронизируются с сервером и изменяются.
  • Так вот, если добавить в эту кучу специальный хеш-массив даблов и сделать к нему доступ(r/w)  только из MQL, это открывает широчайшие возможности для обмена данными в мульти-инструментных роботах. 
  • И самое главное!)) Это позволяет решить и проблему сабжа. В смысле, достаточно будет сделать возможность подключения в марктвотче столбцов с нэймами и значениями из этого массива и всё. Больше не надо никаких других столбцов!  Сами нарисуем как нам надо. 
  • Вам конечно видней... На мой взгляд, доработка не громадная. Повлиять и как-то нарушить целостность архитектуры МТ не должна. В MQL придется добавить  всего несколько функций. Возможно, порешать с потокобезопасностью.  Зато, способ можно назвать красивым и незатейливым.
Ничего не понял. Но задумка судя по обилию жирного текста интересная.
 
С-4:
Ничего не понял. Но задумка судя по обилию жирного текста интересная.

Не удивлён! ))

Попробую объяснить на уровне программёров, разработчиков метатрейдера. 

К примеру, у символа есть ласт-цена, так? Она относится только к своему символу и ни к чему более, так?

Переходим на уровень кода терминала (МТ).  Вот там, где находится  эта ячейка - это поле хранящее ласт-цену, в том же классе, в той же структуре, прям следующей строкой, надо объявить динамический  dictionary-массив.  dictionary-это с доступом по стринговому ключу, хэш-массив - я правильно понимаю?

Из MQL сделать доступ к этому массиву. Полный. Т.е. из одного индикатора мы можем добавить  туда элемент с присвоением имени и  записать в него любое значение, например уровень корреляции орбит венеры-марса. В другом считать это значение. На лицо прямой обмен данными, как с помощью глобальных переменных, только объединенными по конкретному символу.

Далее, останется сделать управляемое подключение столбцов в MWatch где можно будет добавить столбец с именем, взятым из любого ключа таких массивов. И отображать в маркетвотче значения из них. Хэши по столбцам, значения по символам.

Например, разные советники на трех парах выполняют такой код

на EURUSD:  

CustomAdd("Change%");...  CustomUpdate (Symbol(), "Change%", -2.21);  //добавляем элемент массива(это однажды в ините), изменяем элемент

double pos_lot = [получаем текущую позицию];  CustomAdd("Position");...  CustomUpdate ( Symbol(), "Position", pos_lot);  // Открытый объем   
на GBPUSD:  
CustomAdd("Change%");...  CustomUpdate ( Symbol(), "Change%", -1.32);  //добавляем элемент массива(...), изменяем элемент  

double pos_lot = [получаем текущую позицию];  CustomAdd("Position");...  CustomUpdate ( Symbol(), "Position", pos_lot);  // Открытый объем
на USDJPY:  
double i=CustomGet("EURUSD", "Change%") + CustomGet("GBPUSD", "Change%");//получаем кастомные значения соответствующих символов

CustomAdd("ChangeSum");...  CustomUpdate (Symbol(), ChangeSum", i);   //добавляем элемент массива(...), изменяем элемент

double pos_lot = [получаем текущую позицию];  CustomAdd("Position");...  CustomUpdate ( Symbol(), "Position", pos_lot);  // Открытый объем     

 

Получится такое:

Так может быть 

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

 
pronych:

Не удивлён! ))

Попробую объяснить на уровне программёров, разработчиков метатрейдера. 

Не нужно было пытаться объяснять программистам, как им лучше написать программу.

Достаточно было вынести аргументированное предложение по доработке Обзора рынка.

Что я и предложил сделать несколькими страницами ранее ) 

 
komposter:

Не нужно было пытаться объяснять программистам, как им лучше написать программу.

Достаточно было вынести аргументированное предложение по доработке Обзора рынка.

Что я и предложил сделать несколькими страницами ранее ) 

Да, ладно! 

Когда нет взаимопонимания, заказчик пробует разные формы донесения информации. ;)

 
komposter:

Не нужно было пытаться объяснять программистам, как им лучше написать программу.

Достаточно было вынести аргументированное предложение по доработке Обзора рынка.

Что я и предложил сделать несколькими страницами ранее ) 

Это был ответ С-4. Просто 'развернуто' получилось))
Причина обращения: