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

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


В прошлый раз мы выяснили, что можно торговать СПРЕД фьючерс на индекс РТС - стандарт против фьючерса на РТС и доллар. В сегодняшнем и последующих постах постараюсь осветить следующие вопросы:

  • Как построить и отобразить СПРЕД;
  • Как настроить уровни для торговли;
  • Как создать задачу для торговли (на основе уровневого арбитража)…

Итак, начнем…

Прежде чем торговать, нам нужно проанализировать – как на исторических данных вела себя раздвижка между фьючерсом на РТС-стандарт и синтетическим инструментом, состоящим из фьючерса на индекс РТС и фьючерса на доллар.

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

Как уже упоминалось,  многие используют в качестве источника исторических данных для тестирования торговых систем сайт Финама.

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

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

Итак, ВИДЕО:

Вот краткая инструкция для тех, кому видео смотреть лень…

Шаг №1: – заходим на сайт ФИНАМа (www.finam.ru)

Шаг №2: – переходим на вкладку «Экспорт»

Шаг №3: – выбираем площадку, инструмент, таймфрейм, период

Шаг №4: – нажимаем на кнопку «Получить файл» и сохраняем в нужной папке.

В результате у нас появилось 3 текстовых файла с котировками следующих фьючерсов:

  • на индекс РТС-стандарт,
  • на индекс РТС
  • на курс доллара к рублю

Следующая задача – превратить эти котировки 3-х инструментов в котировки одного синтетического инструмента…

Сделать это можно многими способами: - с помощью самописной программы, вручную, и т.п.

Здесь я описываю простейший способ преобразования, который доступен практически всем:

Шаг №1: - открываем эти файлы в Excel

Шаг №2: - экспортируем эти файлы в Access

Шаг №3: - строим в Access перекрестный запрос

Шаг №4: - открываем получившуюся таблицу в Excel и убираем строки с пустыми данными.

Шаг №5: - рассчитываем по нужному алгоритму величину СПРЕДа по имеющимся данным

Шаг №6: - сохраняем в текстовом формате.

Как результат – у нас появляется файл, в котором описывается динамика синтетического инструмента. Этот файл можно проанализировать как в Excel, так и в WealthLab.

Каждый шаг подробно расписывать не буду – покажу только, как рассчитать и подготовить для просмотра в WealthLab файл со значением синтетического инструмента (СПРЕДа) и сохранить его в текстовом формате (Шаг №5 и Шаг №6).

Смотрите видео:

Для тех, кто опять не захотел посмотреть видео – выкладываю краткое содержание…

Итак, давайте рассчитаем СПРЕД между фьючерсом на индекс РТС-стандарт и синтетическим инструментом, состоящим из фьючерса на индекс РТС  и фьючерса на доллар.

Исходные данные:

Фьючерс на индекс РТС-стандарт = 9 250 пунктов;

Фьючерс на индекс РТС = 141 000 пунктов;

Фьючерс на доллар = 30 576 пунктов.

Для того, чтобы построить СПРЕД – нужно перевести стоимость всех единиц измерения к одному основанию. Ведь стоимость пункта фьючерса на индекс РТС-стандарт составляет 10 рублей, фьючерса на индекс РТС – 0,02 доллара, а фьючерса на доллар – одному рублю.

Для перевода всех инструментов к одной единице измерения – нужно проделать несколько простейших операций:

1 нога: стоимость фьючерса на индекс РТС (в пунктах фьючерса на индекс РТС) = 9 250

2 нога рассчитывается следующим образом:

Где

RTS – фьючерс на индекс РТС;

Si – фьючерс на доллар;

Koeff – найденный коэффициент, показывающий во сколько раз фьючерс на индекс RTS-standard дороже фьючерса на индекс РТС.

СПРЕД = 1 нога – 2 нога.

Теперь посмотрим, как это будет выглядеть на исторических данных, для чего по описанному алгоритму просчитаем это всё в Excel и сохраним в виде текстового файла (как это делать – смотрите в видео).

Данный текстовый файл легко можно открыть в WealthLab и изучить динамику. После чего создать план торговли и поручить торговлю нашей программе.

Как это сделать – читайте на нашем БЛОГе в следующий раз, а на сегодня это всё.

Чтобы не пропустить следующие посты – не забывайте подписываться на новые статьи по RSS… (кто не знает, что такое RSS – можете посмотреть здесь>>)

Если Вам понравилась данная статья – поддержите наш блог (заодно посмотрите, о чём пишут другие трейдеры).

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

  1. Иван пишет:

    забавно.. 10 минут назад сам построил график именно этого спреда, а потом уже увидел статью на блоге :)
    для новичков – конечно, будет полезно такое подробное описание теоретической подготовки.
    но всё-таки больше всего затруднений возникает именно при работе с программой, не до конца понятны настройки и алгоритм работы (с суперзадачей).
    например, я успешно добавил суперзадачу для RTS против (RTS + Si). Что надо указывать в “расширенных настройках торговли” для задач “RTS-Empty” и “Si-Empty”? Вторая, синтетическая, нога тоже перекрывается лимитками? Какая гарантия, что вторая нога успешно перекрется? Хотелось бы понять алгоритм.

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

      ДЛя RTS-Empty и Si-Empty – делаем простую задачу без перекрытия с усреднением за 0,1 минуты, т.е. за 6 секунд. После этого Целевой СПРЕД на покупку делаем +100, а Целевой СПРЕД на продажу делаем “-100″. В результате генерируем, практически рыночные заявки, что гарантирует 100% перекрытие.
      А вообще обо всем этом как раз хотел в видеовыкладках рассказать – чтобы наглядно было.

  2. Andrew пишет:

    RTSS в начале года был уж совсем слабо ликвидным.
    Возможно стоит оценивать спрэд с мая-июня?

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

      Согласен с Вами!
      Но тут был важен принцип – как строить такой СПРЕД – полученные данные нужны нам для “ГРУБОЙ” оценки диапазона колебания СПРЕДа. Как уровни для торговли выстроить – это другая тема.

  3. Rem пишет:

    Koeff – найденный коэффициент, показывающий во сколько раз фьючерс на индекс RTS-standard дороже фьючерса на индекс РТС.

    1. Этот коэффициент со временем будет иметь относительно значительные изменения. Почему он constanta?
    2. В видео при показе алгоритма рассчитанный Koeff=1,0727832 (или 1,073). Потом при расчете спрэда по историческим данным Вы берете уже Koeff=1,0739 ?

    Все-таки какой у Koeff “физический” смысл???

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

      Привет.
      Этот коэффициент на практике меняю один раз в 3 месяца – после экспирации.

      1. Для расчета СПРЕДа – коэффициент остается константой, но для перекрытия, когда будем строить таблицу перекрытия этот коэффициент меняется каждый день – об этом поподробнее в следующем посте напишу.
      2. Какой Вы внимательный!!! :-) Когда писал видео – в первой строке был правильный коэффициент равный 1,0739, а во второй строке – нечаянно скопировал другое (неправильное) значение. Потом когда СПРЕД по историческим данным стал считать – заметил эту ошибочку и исправил.

      Физический СМЫСЛ этого коэффициента – во-первых – сделать на начальной точке отсчета СПРЕД равный нулю…
      во-вторых – при перекрытии – если стоимость фьючерса РТС не совпадает со стоимостью фьючерса на РТСС – чтобы не делать направленной позиции – покупать чуть больше контрактов более дешевых в данный момент, чтобы позиция была рыночно нейтральной.

      • Иван пишет:

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

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

          Да, конечно можно. Ведь суперзадача – это не какая-то отдельная задача, а “СВязка” уже существующих задач. В общем, в ближайшее время продолжение будет – там всё подробно расскажу.

          • Леонид пишет:

            Дмитрий, а можно пост про создание заготовки второй ноги и далее создание суперрзадачи с этими тремя фьючами. Если выложите на видео как все это делается-сильно поможете всем!
            В идеале выложите плз готовую задачу для скачивания своим клиентам, тогда уж каждый сможет подкорректировать под свои цели на ее основе.

          • Вячеслав пишет:

            Ой, как присоединяюсь к Леониду.
            Уже просил и по почте и на форуме разжевать мне глупому именно эти моменты работы с ПО, но все как то без ответов остаются мои мольбы.
            Может у кого то другого получится уговорить разработчиков дать несколько наглядных прмеров с реальными данными на текущий момент, а то меня эти абстрактные данные в мануале вообще сшибли с ног.

  4. Vetal пишет:

    Даа.. Что то вы совсем навалили на арбитраж.. И забыли все остальные темы. Жаль.(
    Арбитраж будет интересен участникам с более менее крупным капиталом. Нам малкофизикам он думаю малоинтересен((

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

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

  5. ramires пишет:

    Нее вы арбитраж пожалуйста не трогайте !!!

    арбитраж рулит однозначно

    наконецто начали разжевывать про ртсс против ртс доллар
    так держать !

  6. Вячеслав пишет:

    Не, не!
    Арбитраж продолжайте как основной. Тем более Вы описывете не классический же, где требуются мильЁны :)
    Все не дождусь продолжения данной статьи, где надеюсь наконец то найти почти все ответы на свои ранее заданные вопросы и оставленные пока без ответа.

  7. Андрей пишет:

    Если во время экспорта ставили время окончания свечки – т.е. первая минута заканчивается в 10,31 – тогда получается, что первая минута оставлена.

  8. Сергей пишет:

    Много искал на тему арбитража, наконец нашел настоящий “клад”.Посты супер, Респект автору! Обязательно развивайте и продолжайте дальше. Очень радует подача материала и его подробное изложение.

  9. Вячеслав пишет:

    Меня все мучает вопрос, почему же мы не учитываем при расчете спреда сам Si?
    Мы же его тоже будем покупать и продавать и также нести убытки и прибыль по этому инструменту.
    Дмитрий, раскройте зановес, в чем фишка и секрет ?

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

      Мы должны будем на практике рассчитывать СПРЕД в режиме реального времени и иметь возможность совершать операции по хеджированию долларового риска в течение дня. Как купить доллар (а не фьючерсный контракт) – я не знаю. Кроме того, разница между ценой фьючерса на доллар и курсом доллара не велика, а динамика точно отражается. Нам ведь и нужна именно динамика движения СПРЕДа и возможность проводить операции со всеми инструментами, являющимися “кирпичиками” СПРЕДа.

      • Вячеслав пишет:

        Ладненько, дождусь окончания статьи, погляжу, может дойдет и до меня. Пока уДАВа почитаю ))))

      • Rem пишет:

        Дмитрий, а в роботе вместо курса доллара используется цена фьючерса на доллар / 1000 или берется текущий курс доллара? Если второе, то откуда он берется?

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

          Именно цена фьючерса в качестве переменной подставляется. Естественно, деленная на 1000

    • Rem пишет:

      Вячеслав, сами попытайтесь отделить “мух” от “котлет”: что есть сигнальная система, а что – страхование рисков. И тогда, глядишь, зановес и откроется.

  10. [...] арбитраж с программой FinLab.PairTrade (часть 4)    Арбитраж РТС-стандарт против РТС (часть 2) [...]

  11. gars пишет:

    По поводу экспорта из Финама. Вроде все делаю как описывалось. Открываю скачанный текстовой файл в Екселе. прекрасно открывается, но столбцы опен-хай-лоу-клоус текстовые. Т.е. операции с ними делать не получается. Например сложить что-то с чем-то.
    Подскажите, пожалуйста, как быть.

    • Serg пишет:

      Сначала надо убрать точку, после которой идут нули. Делается это с помощью – Правка-Заменить на Пишем найти . и заменить на , и нажимаем заменить всё. Все эти цифры примут правильный вид и даже уберутся нули. И теперь делайте сними что пожелаете.

  12. Володя пишет:

    Дмитрий, добрый день! После прочтения Ваших статей очень заинтересовала торговля спредом. Тема для меня новая и сразу возник важный (во всяком случае мне так кажется) вопрос. Вчера я строил спред по паре Сбербанка, фьючерсы на обыкновенные акции и на привилегированные. Вопрос состоит в том, нужно ли приводить стоимость этих инструментов к единой? Ведь фьюч сбера обычек стоит 8087 руб, а привилегированных – 5816 руб. Насколько я понял из Вашего видео об индексном арбитраже, нужно вывести коэффициент, во сколько раз фьюч обычных акций больше фьюча привилегерованных. А затем в экселе все котировки привилегерованных умножить на этот самый коэфф. И только потом находить разность между этими инструментами и строить график спреда. Напишите пожалуйста правильно ли я всё делаю, и если нет, то в чём моя ошибка.

  13. gars пишет:

    Здравствуйте!
    Не могли бы Вы поподробнее описать процедуру расчета спреда по историческим данным с помощью Excel и Access?

  14. Александр пишет:

    Как вариант, с целью избежать связки excel-access и перекрестных запросов, можно в окне экспорта с Финама поставить галку “заполнять периоды бес сделок”; в этом случае данные разных инструментов легко стыкуются в экселе простым копированием.

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