QUIK 6.0: Фильтры и условное форматирование в таблицах

Еще одним существенным дополнением в 6-й версии QUIK стала появившаяся возможность задания гибких фильтров и условного форматирования, которые можно независимо задавать для каждого столбца таблицы.

Для того, чтобы указанный функционал стал доступен, необходимо выбрать в меню Настройки -> Основные, и в открывшемся диалоге включить указанные опции:

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

Фильтрацию строк таблицы проиллюстрирую на примере таблицы «Купить/Продать». Ранее в ней всегда отображались либо все инструменты, для которых присутствует запись в таблице лимитов плюс все маржинальные инструменты, либо список отображаемых инструментов можно было настроить вручную, но каждый новый инструмент приходилось добавлять снова руками через диалог настроек параметров таблицы. Теперь, используя условную фильтрацию, стало возможным автоматическое отображение только тех инструментов, по которым в данный момент у нас есть открытая позиция.

Сделаем следующее. В настройках таблицы «Купить/Продать» установим ручную настройку списка инструментов и добавим в нее все инструменты из интересующих нас классов.

Нажмем «Применить», и в «Купить/продать» отобразятся все выбранные инструменты. Подведем курсор к заголовку столбца «Остаток» и кликнем по возникшей «воронке»:

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

После нажатия кнопки «Применить» таблица станет пустой, т.к. на данный момент у нас нет открытых позиций ни по одному из инструментов. Если теперь открывать короткую или длинную позицию по какому-либо инструменту — в таблице «Купить/Продать» будет автоматически появляться соответствующая строка, а при закрытии позиции строка с инструментом будет исчезать, что проиллюстрировано «мультиком» ниже. Обратите внимание, что на столбце «Остаток» теперь постоянно отображается иконка «воронки», сигнализируя о том, что для этой колонки задано условие фильтрации.

Кроме фильтров, в таблицах появилась возможность очень гибкой настройки условной подсветки строк и отдельных ячеек таблиц. Например, ниже я приведу пример настроек той же таблицы «Купить/продать», где строки и ячейки будут подсвечиваться по следующему алгоритму:

  • строки с убыточными открытыми позициями (согласно текущим рыночным данным) подсвечиваются красным;
  • величина убытка в колонке «Прибыль/убытки» отображается жирным темно-красным цветом;
  • для прибыльных открытых позиций значение прибыли отображается жирным синим цветом.

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

Ниже приведен подробный разбор каким образом настроены параметры условного форматирования на столбцах таблицы «Купить/продать», позволившие получить показанный результат.

Для настройки параметров подведем курсор к заголовку колонки «Прибыль/убытки» и кликнем на появившуюся букву «А».

Откроется диалог настройки параметров условного форматирования.

Как видим, здесь можно задать 3 независимых условия форматирования, причем при выполнении условия заданное в каждом форматирование может быть применено как ко всей строке, так и только к отдельной ячейке, для которой настроены параметры. Согласно документации, если сработает одновременно несколько условий, то каждое из них будет применяться последовательно, т.е. сначала будет применено форматирование, заданное для первого условия (если оно сработало), затем для второго условие (если оно сработало) и т.д. Если в разных сработавших условиях заданы какие-то параметры раскраски для одного и того же элемента (например, цвета фона) — то в итоге фон будет окрашен в цвет последнего из сработавших условий.

UPD: В версии 6.11 появилась возможность сравнивать не только с константами, но и с соседними столбцами.

Итак, в первом условии зададим подсвечивание красным всей строки, в которой значение «Прибыль/убытки» отрицательное. Для этого в условие 1 выберем из выпадающего списка условие «меньше», а в значение впишем ноль. Кроме того, обязательно отметим признак «применить ко всей строке», т.к. вся строка у нас должна быть окрашена красным цветом.

Теперь нажмем кнопку «Формат» в первом условии и настроим требуемый цвет.

Как видим, здесь необходимо настроить цвета текста и фона для двух случаев: когда строка таблицы выделена (обычно она выделается синим фоном в этом случае) и когда она не выделена (т.е. для всех прочих строк, кроме выделенной). Хоть наличие стольких настроек формально правильно и очень гибко, но, если честно, не совсем это удобно: например, для нашего случая хотелось бы, чтобы строка с убыточным инструментом была всегда красной не зависимо от того выделена она или нет, а значит необходимо не забыть задать цвет фона для обоих случаев, кроме того указать черный цвет для выделенной ячейки, как показано на картинке выше. Наверное, есть смысл точно указать черный цвет и для текста невыделенной ячейки/строки, но т.к. он у нас и так черный — оставим его без изменений (в диалоге отображается серым). Параметры шрифта менять не будем, ведь это настройки для подсвечивания целиком всей строки. Жмем «Применить» и переходим к настройке следующего условия.

Во втором условии настроим подсветку красным жирным шрифтом величину отрицательных значений поля «Прибыль/убытки».

Здесь зададим снова условие «меньше» и укажем значение «0», снимем галочку «применять ко всей строке», т.к. шрифт должен изменяться только у одной выбранной ячейки. Нажмем кнопку «Формат» на настроим цвета для текста и стиль шрифта:

И снова одинаковый цвет задаем и для выделенной, и невыделенной строки; цвет фона не изменяем, оставляем в положении «Нет цвета». Для шрифта укажем «жирный».

Третье условие используем для выделения прибыльных позиций, выбрав условие «больше» и задав значение «0».

И установим свой формата отображения:

Нажимаем в диалоге «Формат ячеек» кнопку «Применить». Теперь у нас настроены все три условия диалога «Условное форматирование». В нем тоже нажмем «Применить» и посмотрим, что у нас получилось:

Почти все хорошо, но картинку портит активная строка, если ею является строка с прибыльной позицией: хорошо бы убрать фоновый синий цвет. (При этом, как видим, в прибыльных строках столбца «Прибыль/убытки» фон всегда белый, как и было задано в его параметрах форматирования.) Для исправления раскраски фона выделенной строки можно было бы воспользоваться тем же методом, что мы уже применили для подсветки строк с убыточными инструментами: сделать еще одно условие «больше нуля» для всей строки, прописав в нем белый цвет фона; но в диалоге условного форматирования доступна настройка всего 3-х условий на столбец, и они все у нас уже задействованы! Как же быть?

Но ведь у нас есть и другие столбцы, где вполне можно задать условное форматирование для всей строки. Как именно применяются заданные параметры форматирования/раскраски в случае, когда для нескольких столбцов задано условие с признаком «применить ко всей строке» — подробно написано в документации к терминалу QUIK. Кратко можно описать правила так: параметры, заданные в столбцах, расположенных правее, перекрывают (т.е. заменяют собой) параметры, заданные в столбцах, расположенных левее. Таким образом, если мы зададим белый цвет фона для выделенной строки в како-либо столбце, левее «Прибыль/убытки», то это, с одной стороны, не помешает красной окраске убыточных позиций (т.к. данное правило задано для столбца, расположенного правее), с другой — решит нашу задачу. Для задания такого правила форматирования я выбрал столбец «Остаток». Как мы помним, в начале этой заметки для него было задано условие: не равен 0.  Таким образом, во всех отображаемых строках значение этого столбца гарантированно не равно нулю, чем мы и воспользуемся.

Итак, подведем указатель мыши к заголовку столбца «Остаток», дождемся появления буквы «А» и кликнем по ней. В открывшемся диалоге зададим следующее условие и формат:

Значения цветов фона и текста поля «В ячейке таблицы» оставим без изменений, т.е. «Не задано». Такое условие будет истинным для всех строк таблицы, что позволит раскрасить их в белый цвет выделенную строку (подсвечивание красным строки с убыточной позицией задано в столбце «Прибыль/убытки»).

Вот теперь у нас все работает как надо и активная строка не выбивается из общей картинки. Полный внешний вид настроенной таблички мы уже видели выше.

Другие материалы про QUIK 6

Print Friendly, PDF & Email
Запись опубликована в рубрике Большой QUIK с метками . Добавьте в закладки постоянную ссылку.

297 комментариев: QUIK 6.0: Фильтры и условное форматирование в таблицах

  1. facebook.com Alexander Taranenko говорит:

    Большое спасибо за материал! Вот когда есть вот такая флэш-анимация — это упрощает обучение. Да и вообще просто фантастика! По Квику найти что-то подобное просто супер!!!
    Еще раз большое спасибо!

  2. facebook.com Alexander Taranenko говорит:

    Как выставлять заявки и стопы сразу (тейк профит) к этим заявкам на покупку ниже рынка и продажу выше рынка. То есть нужно реализовать правило вхожу в рынок уже подготовленным и у меня стоят и стопы и цели. Как это делается в КВИКЕ?

    И второй момент на сколько мне известно, что выставить стоп-лосс на заявку на движение, то есть покупка выше рынка и продажа ниже рынка сложновато — там есть какие-то связанные заявки но может быть бывают всякие отличия у разных брокеров.

    Буду очень препблагодарен за ответ и флэш анимацию если конечно это возможно.
    Еще раз большое спасибо!

    • iQuik.info говорит:

      Про стоп-заявки скоро точно не сделаю, руки даже до обзоров новых версий iQuik не доходят, которых уже несколько штук вышло за последнее время 🙁

      По поводу стоп-заявок есть весьма подробное описание на сайте квика, правда в неочевидном несколько месте:
      http://www.quik.ru/about/features/conditional-orders/
      Очень подробно, с картинками. Надо, конечно, вчитаться и осмыслить, готовых стратегий там нет, но описано все, что доступно. Другого — нет. Только комбинация указанных возможностей, либо свои рукописные скрипты, например на Lua.

  3. facebook.com Alexander Taranenko говорит:

    Спасибо за ссылку. Ценная информация. Еще раз спасибо. Да действительно, спрятали.

    Меня интересует только элементарный пока технологический прием — выставление заявок и работа с ними. Это довольно таки сложная технологически операция, по сравнению с МТ4. В МТ4 цена, стоп и тейк — очень упрощено, даже выхолощено. В КИВКЕ нужно больше совершать умственным операций перед открытием сделки, чем в МТ4.

    Сейчас занялся вопросом по отслеживанию результатов по сделкам в КВИКЕ.
    В МТ4, есть табличка, где можно посмотреть результат по каждой сделке. А какие таблицы необходимо использовать в КВИКЕ что бы посчитать результат по сделке?

    Спасибо.

  4. Алексей говорит:

    >> Фильтрацию строк таблицы проиллюстрирую на примере таблицы «Купить/Продать».
    А откуда получается сама таблица «Купить/Продать»?
    Как ее создать из меню КВИКа?

    • iQuik.info говорит:

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

  5. Алексей говорит:

    Спасибо! Вроде все сделал по инструкции. В понедельник посмотрим как оно в работе.

  6. Евгений говорит:

    Добрый день.
    А вы случайно не знаете, можно ли в таблице всех сделок сделать фильтр на круглые значения цены? К примеру показывать только 50,100,150,200… 25550,25600 итд.
    Буду благодарен за ответ.
    Спасибо

  7. Артем говорит:

    Очень помогло )спасибо

Добавить комментарий