Финансовая лаборатория

Биржевая торговля и торговые роботы


В прошлый раз я рассказывал Вам, как установить программу QUIKLiveTrading для создания связи между торговым терминалом QUIK и программой для создания и тестирования торговых систем Wealth-Lab. Сразу же после установки QUIKLiveTrading Вы получите возможность получать исторические данные из терминала QUIK и работать с этими графиками в Wealth-Lab. Для этого нужно создать наборы данных (DataSets) в Wealth-Lab и провести некоторые настройки как в квике, так и в Wealth-Lab.

Передача информации из QUIK в Wealth-Lab

Давайте посмотрим, как это делается…

Подготовка QUIK для экспорта из него исторических данных

Сначала давайте настроим список тех инструментов, с которыми мы будем работать в КВИК.

Настройка списков в программе QUIK

Заходим в программу QUIK и выбираем:

Связь >> Списки

Таблица "Списки" в QUIK

Настройка таблицы "Выбор принимаемых параметров"

Появляется таблица "Выбор принимаемых параметров и инструментов.

Выбираем классы инструментов, которые нам нужны для торговли и устанавливаем фильтры инструментов, которые нам нужны.

Выбор параметров и инструментов

Настраиваем принимаемые параметры и инструменты

Отфильтровать нужно только те финансовые инструменты, которые Вы реально собираетесь использовать в торговле. Остальные финансовые инструменты будут только нагружать систему. Поэтому их лучше убрать.

Я использую следующие классы и следующие фильтры инструментов.

Для акций, которые торговались ранее на ММВБ:

А1 - Акции:

  • Лукойл
  • Сбербанк
  • Сбербанк-п

А2-Акции:

  • ГМКНорНик

Б-Акции:

  • ВТБ ао
  • ММК
  • НЛМК
  • Распадская
  • Роснефть
  • СевСт-ао
  • Сургнфгз
  • Сургнфгз-п
  • Транснф ап
  • ФСК ЕЭС ао

Внесписочные акции:

  • Газпромнефть
  • ГАЗПРОМ ао

Для фьючерсных контрактов, которые торгуются на секции срочного рынка FORTS:

FORTS: Фьючерсы

  • EU-9.12
  • RTS-9.12
  • Si-9.12
  • GAZR-9.12
  • SBRF-9.12

Кроме того, нужно сразу отфильтровать ненужные параметры, оставив лишь нужные.

Для ММВБ я оставил следующие параметры:

  • % изменения от закрытия
  • Размер лота
  • Цена последней сделки

Для FORTS оставил следующие параметры:

  • % изменения от закрытия;
  • Гарантийное обеспечение покупателя;
  • Дата исполнения инструмента;
  • Размер лота;
  • Статус клиринга;
  • Стоимость шага цены;
  • Цена последней сделки.

Настройка текущих таблиц в QUIK

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

Текущие таблицы в QUIK аналогична таблице финансовых инструентов в Алор-Трейд.

Я для удобства отображения настроил две текущие таблицы (одну для ММВБ, а другую для FORTS).

Вот как эти таблицы выглядят:

Текущая таблица секции ММВБ:

Текущая таблица на ММВБ

Настройка текущей таблицы для акций на ММВБ

Текущая таблица секции FORTS:

Текущая таблица FORTS

Настраиваем текущую таблицу для FORTS

Теперь, когда мы настроили эти текущие таблицы переходим к настройке экспорта данных.

Настройка таблицы "экспорта данных для технического анализа"

Давайте  настроим экспорт данных для тех финансовых инструментов, которые собираемся использовать для торговли и графики которых нам нужны в программе Wealth-Lab.

Выбираем в основном меню QUIK:

Экспорт данных >> Данные для технического анализа

Экспорт данных

Выбираем экспорт данных - данные для технического анализа

Открывается таблица "Экспорт данных для технического анализа":

Данные для технического анализа

Настраиваем таблицу "Данные для технического анализа"

В данной таблице нажимаем на кнопку "Общие настройки"

появляется таблица "Общие настройки экспорта"

Общие настройки экспорта

Настройка таблицы "Общие настройки экспорта"

Заполняем эту таблицу так, как показано на рисунке и назжимаем кнопку "Да".

Это делается для того, чтобы в дальнейшем сэкономить время при настройке экспорта конкретного инструмента.

Возвращаемся теперь к таблице "Экспорт данных для технического анализа".

Нажимаем кнопку "Добавить"

Появляется таблица "Добавить инструмент для вывода в систему тех. анализа (ТА)

Добавить инструмент для технического анализа

Добавляем нужный инструмент для технического анализа

Перед нами несколько разделов.

В разделе «Доступные ценные бумаги» выбераем тот финансовый инструмент, данные по которому Вы собираетесь экспортировать в Wealth-Lab. В нашем случае это акция Сбербанка.

В разделе «Система ТА» выбераем «WealthLab». Это логично, ведь именно в Wealth-Lab будет происходить экспорт данных.

В поле «Обозначение в  системе ТА» пишем название финансового инструмента.

При написании финансового инструмента обязательно нужно использовать следующий синтаксис:

<код класса>.<тикер инструмента>

Где взять название кода класса и тикера инструмента? Ведь не зря мы с Вами настраивали текущие таблицы (таблицы финансовых инструментов). Именно в этих таблицах в столбце 1 и столбце 2 Вы берете и название кода класса и обозначение тикера инструмента.

В нашем случае, так как мы стараемся экспортировать данные по акции Сбербанка, будут следующие обозначения:

Код класса: EQBR

Тикер финансового инструмента: SBER

Соответственно синтаксис для обозначения сбербанка, который нужно занести в поле "Обозначение в системе ТА" будет следующим:

EQBR.SBER

Cинтаксис нужно определять именно таким способом для того, чтобы адаптер QUIKLiveTrading мог отправлять ордера из Wealth-Lab в Квик.

Выберите требуемый интервал времени (таймфрейм). В нашем случае интервал равен 60 минут.

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

Остальные настройки оставляем по умолчанию.

Нажимаем на кнопку "Да"

В результате таблица "Экспорт данных для технического анализа" примет следующий вид:

Экспорт данных для теханализа

Вид таблицы "Экспорт данных для теханализа" после добавления Сбербанка

Прежде чем нажимать на кнопку "Начать вывод" нам необходимо теперь поработать с программой Wealth-Lab.

Настройка Wealth-Lab для импорта исторических данных из торгового терминала QUIK

Для того, чтобы получать экспортируемые из квика исторические данные в программу Wealth-Lab необходимо подготовиться к их приему.

Создаем новый набор данных (DataSet) в Wealth-Lab.

Для  создания нового набора данных (DataSet) в программе WLD-6 в главном меню выбираем следующую последовательность:

Открываем DataManager

Открываем в Wealth-Lab управление данными (DataManager)

Открывается окно «Data Manager»

Создание DataSets

Создаем новый набор данных (DataSets)

Нажимаем здесь на ссылку "Create a new DataSet"

Появляется окошечко.

Создание нового набора данных

Создаем новый набор данных (DataSet)

В нем выбираем пункт "QUIK Static Data" и нажимаем на кнопку "Next ->"

Появляется новое окно.

Создание DataSet - выбор интервала

Выбираем таймфрейм и рабочий инструмент

В этом окне выбераем нужный нам интервал времени (таймфрейм)

Как Вы помните, в Квике мы настраивали интервал времени равный 60 минут. Поэтому здесь также выбираем соответствующий таймфрейм.

Кроме того, в пустом поле вводим название финансового инструмента.  Обратите внимание, что обозначение финансового инструмента должно быть точно таким же, как мы называли финансовый инструмента при настройке экспорта в программе QUIK.

В нашем случае инструмент будет обозначаться: EQBR.SBER

Если Вы собираетесь ввести здесь несколько финансовых инструментов, то их названия должны быть разделены запятыми.

Нажимаем на кнопку "Next ->"

В появившемся окне вводим название создаваемого нами набора данных (чтобы потом точно знать - что за инструменты и какого таймфрейма хранятся в данном наборе).

Выбор имени при создании набора данных

Выбираем название набора данных

Назовем создаваемый набор данных "QUIK DataSet (60m)". Т.е. здесь будут хранится инструменты, получаемые из QUIK с часовым таймфреймом.

Нажимаем на кнопку "Finished" и видим сообщение о том, что набор данных "QUIK DataSet (60m)" был успешно создан.

Завершение создания нового набора данных

Новый набор данных успешно создан

Теперь Вы можете видеть слева новый набор данных, который называется  "QUIK DataSet (60m)" и содержит один финансовый инструмент: EQBR.SBER

Однако при попытке выбора данного инструмента (двойной щелчок по инструменту) в поле графика отобразится надпись о недоступности данных.

QUIK DataSet

Данные из нового набора данных не выводятся

Все верно. Прежде чем увидеть график созданного инструмента нужно включить экспорт данных в программе QUIK и обновить данные в Weatlh-Lab.

Вывод данных из Квик в Велс Лаб

Возвращаемся в программу QUIK к таблице "Экспорт данных для технического анализа".

Выбираем строчку с созданным нами инструментом для экспорта

Экспорт данных для теханализа

Вид таблицы "Экспорт данных для теханализа" после добавления Сбербанка

Нажимаем на кнопку "Начать вывод по бумаге"

Как результат в столбце перед столбцом "Класс" квадратик превратится в треугольник, показывая тем самым, что экспорт данных начат.

Теперь возвращаемся в программу Wealth-Lab.

Снова переходим в DataManager (Tools >> DataManager)

Переходим на вкладку Update Data

Обновление данных

Обновляем данные в Wealth-Lab

Выбираем QUIK Static Data (ставим галочку)

Нажимаем на кнопку "Update all data for selected Providers now"

Как результат Вас перекинет на вкладку "Data Update Log", где Вы сможете прочитать следующее сообщение:

лог при обновлении данных

Вывод лога при обновлении данных в Wealth-Lab

Но самое главное, что если в наборе данных   "QUIK DataSet (60m)" дважды щелкнуть по инструменту EQBR.SBER, то…

График Сбербанка

Вывод исторических данных из QUIK на график в Wealth-Lab

Мы увидем график сбербанка. Этот график Weatlh-Lab построил используя данные, которые содержатся в Квике и экспортируются в Wealth-Lab с помощью адаптера QUIKLiveTrading.

На данном этапе мы достигли того, чего добивались. Ура!!!

Добавление новых инструментов в набор данных

Давайте посмотрим теперь - как добавить в наш набор данных новые инструменты:

Сначала нужно снова зайти в программу QUIK

Выбираем уже знакомую таблицу "Экспорт данных для технического анализа"

Здесь для добавления нового инструмента создаем новую строчку, для чего нажимаем на кнопку "Добавить".

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

Давайте добавим экспорт по нескольким новым финансовым инструментам.

Добавление происходит по одной строчке…

Не забывайте, что обозначение финансового инструмента должно иметь синтаксис:

<код класса>.<тикер инструмента>

Соответственно,  финансовые инструменты получат такие названия:

  • Газпром будет обозначаться как: EQNE.GAZP (класс "Внесписочные акции" имеет код EQNE).
  • ГМК НорНикель обозначится как: EQBS.GMKN (класс "A2 - Акции" имеет код EQBS).
  • ВТБ будет иметь название: EQNL.VTBR (класс "Б-Акции" имеет код EQNL).
  • Лукойл будет иметь название: EQBR.LKOH (класс "А1 - Акции" имеет код EQBR).
  • сентябрьский фьючерс на индекс РТС будет обозначаться как: SPBFUT.RIU2 (класс "FORTS: Фьючерсы" имеет код SPBFUT, а тикер сентябрьского фьючерса RIU2).

И еще не забывайте менять диапазон времени ММВБ с 9-30 до 19-00, а FORTS с 10-00 до 23-50

В общем, думаю принцип добавления экспорта по новому финансовому инструменту Вы усвоили.

Экспорт данных для нескольких бумаг

Экспорт данных одновременно для нескольких бумаг

Единственное отличие - чтобы начался вывод не по одному финансовому инструменту, а сразу по нескольким - необходимо нажать не на кнопку "Начать вывод по бумаге", а на кнопку "Начать вывод".

В этом случае вывод данных будет происходить не по одной выбранной бумаге, а сразу по всем выбранным финансовым инструментам.

Отмечу, что у брокера "АЛОР+" вывод данных по часовым диапазонам доступен для 2829 часовых баров. Т.е. вывод данных происходит с 22.03.2011 года по 15.06.2012 года, т.е. за 15 месяцев.

Конечно, этого количества для тестирования торговых систем не хватит, но для торговли - вполне.

Тестирование же будет происходить с использованием Финамовского адаптера, который доступен для лицензионных пользователей Wealth-Lab.

Теперь переходим в Wealth-Lab.

Чтобы здесь добавить новые инструменты необходимо сделать следующее:

Переходим в DataManager на вкладку DataSets

Добавление нескольких инструментов

Добавление нескольких инструментов в набор данных

В области «DataSets» выбираем мышкой нужный набор данных. В нашем случае это QUIK Data Set (60m)

Справа, в области «Symbols», появится перечисление инструментов уже имеющихся в этом наборе. Чтобы добавить новые  инструменты, достаточно вписать в этом разделе их названия.

Обращаю Ваше внимание, на следующие особенности:

  • названия инструментов должны в точности соответствовать названиям, созданным ранее в QUIK;
  • нельзя добавлять суффикс с указанием текущего таймфрейма вручную (это будет сделано автоматически);
  • названия нескольких финансовых инструментов должны быть разделены пробелами

Нажимаем кнопку «Apply Symbol Changes made above to DataSet»

Как результат - в поле "Symbols" появятся названия финансовых инструментов уже с автоматически добавленным суффиксом с указанием текущего таймфрейма (т.е. вместо введенного нами EQBR.LKOH отобразится EQBR.LKOH_60MINUTES).

Добавление нескольких финансовых инструментов одновременно

И кроме того в наборе данных "QUIK Data Set (60m)" появится весь список введенных нами финансовых инструментов.

Теперь в DataManager нужно перейти на вкладку "Update Data" и обновить все данные, выбрав нужный набор данных и нажав на кнопку "Update all data for selected Providers now" (точно также, как мы сегодня уже делали).

Вуаля! Все графики по нужным нам инструментам существуют, отображаются и их можно обновлять при включенном экспорте в Квике.

Все графики исторических данных

Результат экспорта исторических данных из QUIK в Wealth-Lab

Удаление существующих финансовых инструментов из набора данных

Легче всего удалить ставший ненужным финансовый инструмент из набора данных (DataSet).

Для удаления ненужного финансового инструмента просто щелкните правой  кнопкой мыши по инструменту и в появившемся меню выберите  пункт «Remove this Symbol from the DataSet».

Можно тажке использовать Data Manager. Для этого:

  • перейдите на вкладку "Data Sets"
  • выберите набор данных
  • в области «Symbols» удалите требуемые инструменты
  • нажмите кнопку "Apply Symbol Changes made above to DataSet".

Обновление наборов данных

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

Давайте еще раз напишу, как это делается:

  • проверьте, что в программе QUIK в окне "Экспорт данных для технического анализа" нажата кнопка "Начать вывод".
  • Перейдите в окно «Data Manager» на вкладку DataSets
  • в списке «DataSets» выберите набор, который необходимо обновить
  • нажмите кнопку «Update DataSet»
Обновление нескольких инструментов

Обновление нескольких финансовых инструментов

Кроме обновления наборов данных по одному, вы можете обновить все наборы,  созданные с помощью системы QUIKLiveTrading за один раз.

Сделать для этого нужно следующее:

  • проверьте, что в программе QUIK в окне "Экспорт данных для технического анализа" нажата кнопка "Начать вывод".
  • Перейдите в окно «Data Manager» на вкладку "Update Data"
  • в списке «Data Providers to Update» выберите  «QUIK Static Data»
  • нажмите кнопку «Update  all data for selected Providers now»

Обратите внимание на то, что здесь в разделе «Data Provider Update Option» Вы можете задать дополнительные настройки  обновления:

  • Update only Symbols that are contained in DataSets – обновлять только те  инструменты, которые содержаться в наборах данных.
  • Also Update Symbols that you accessed, but are not contained in DataSets – обновлять все инструменты, которые вы когда-либо использовали, но которые сейчас не содержатся в наборе данных.

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

Выставление галочки в поле «Delete data for Symbols that are not contained in DataSets» при обновлении физически удалит с диска Вашего компьютера всю информацию об инструментах, которые ранее использовались, но сейчас не содержатся ни в одном наборе данных.

После того как обновление будет запущено Вы попадете на вкладку «Data Update Log»,  где будет отображаться информация о процессе загрузки новых данных

Удаление набора данных

Для удаления набора данных нужно проделать следующее:

в списке «DataSets» главного окна WLD-6 кликните правой кнопкой мышки по набору данных, который желаете удалить.

В появившемся меню выберите пункт «Delete this DataSet»

На сегодня все. В результате проделанной работы мы имеем функционирующую связку между QUIK и Wealth-Lab. В Wealth-Lab содержатся финансовые инструменты, информация о которых была получена из программы QUIK и эта информация в любой момент может быть обновлена при включенной программе QUIK.

Также мы научились добавлять, удалять любые наборы данных и конкретные финансовые инструменты из любых наборов данных.

На сегодня это все. Статья получилась очень объемная, но надеюсь это поможет и Вам и мне в будущем не забыть - как нужно экспортировать исторические данные из QUIK в  Wealth-Lab для того, чтобы иметь возможность строить торговые системы именно в той программе, которая для этого и предназначена. В следующий раз покажу Вам как настроить QUIK и Wealth-Lab для того, чтобы торговые сигналы, генерируемые в велсе передавались в QUIK. Не забывайте подписываться по RSS, чтобы не пропустить новые статьи.

Не забывайте также о том, что создатели программы QUIKLiveTrading в обмен на публичное тестирование программы-адаптера предоставили мне несколько купонов, дающих право на скидку в 10% при покупке этого адаптера. Я могу подарить эти скидочные купоны посетителям моего блога.

Купон можно использовать только один раз, поэтому просьба обращаться за этими купонами только если Вы действительно хотите купить этот адаптер, т.к. количество таких купонов у меня ограничено (10 штук). Если Вам нужен этот купон - пишите через форму "Контакты" (левый верхний угол блога), указав в теме "Купон для QUIKLiveTrading".

Комментариев: 10

  1. SAV пишет:

    Дмитрий, Спасибо за содержательную статью!
    Хотелось бы узнать Ваше мнение по поводу этой связки Quik+WealthLab через адаптер QUIKLiveTrading в режиме реального трейдинга. Какие слабые стороны у него, какие сильные?
    Когда-то клиенты жаловались на zerichAlgoTrading, а этот адаптер(QUIKLiveTrading) стабилен? Собираюсь приобрести QUIKLiveTrading, но есть опасения. Кстати я тоже попался на удочку Zerich, собирался приобрести zerichAlgoTrading, все уже оформил, а они мне звонят потом, когда уже мои деньги у них были на счете и говорят, что не предоставляют его. Пришлось самому приобретать WealhtLab у Fidelity, самому писать некоторые индикаторы(в том числе zig-zag, который у них шел в библиотеке только для клиентов)- но это так отклонение от общей темы, хотелось бы услышать ответы от Вас на поставленные выше вопросы.

    • Дмитрий Власов пишет:

      Да мне и самому не терпится попробовать адаптер в деле. Если бы не описывал так подробно – давно уже торговал бы с его помощью. Но в том, что описываю для себя большой плюс вижу – в дальнейшем всегда смогу вспомнить – как первоначально настроить.

      Церих, конечно учудил – но я стараюсь во всем видеть только положительные моменты. Кстати, насколько я знаю – Арсен Яковлев с командой сейчас вот здесь: http://wealth-lab.net – даже активность в блоге начали проявлять.

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

  2. SAV пишет:

    ок, буду ждать Вашего мнения по поводу адаптера, кстати я в ветке форума Real-TimeTrading по адаптеру quik задал им пару вопросов, а то продукт новый и не ясно что от него ожидать.

  3. rasswet пишет:

    не вкурсе QUIKLiveTrading с велсом 5.4 состыкуется? в списке требований у них заявлена 6-ка.

    • Дмитрий Власов пишет:

      Кажется, только с лицензионным Wealth-Lab 6 Там для торговли нужно настраивать Market Manager. Но можно у разработчиков уточнить.

      • rasswet пишет:

        off:
        а можно как-то настроить уведомления на сайте? чтобы когда мне отвечают на комент-то приходило уведомление в почту?

  4. rasswet пишет:

    подписался

Оставить комментарий