System Development Framework 2.0: Исследования практика

В предыдущем посте мы коснулись теоретических аспектов исследований в рамках System Development Framework 2.0, теперь пришло время поговорить о практике. Как я писал раньше, основной задачей моего фреймворка – является минимизация человеческого присутствия в принятии решений, а также отладка всех механизмов при создании торговых систем. По своему опыту я осознал, что достаточно трудно делать первый шаг в исследованиях, потому-что часто приходится идти на ощупь или искать черную кошку в темной комнате, особенно если ее там нет :)
Стандартизация бизнес процессов – это то что нужно любому бизнесу, без нее у вас может получиться в лучшем случае элитное производство штучного продукта, но никогда не получится массового производства, потому что на каждой технологической операции вы будете терять какое-то время. А время для трейдера – самый ценный ресурс, я это осознал давно, более того – переключение между задачами просто выжигает мне мозг, по-этому я предпочитаю перекладывать рутинные операции на ПО и формализованные процедуры, чтобы их выполнение не занимало много интеллектуальных ресурсов.

Шаг 1: Research Ticket™

Записывайте все, что придет вам в голову! Мозг трейдера каждый день бомбардируется тяжелыми нейтронами в виде новостей, чатов, твиттеров, социальных сетей и прочих отвлекающих факторов, а идея – она приходит быстро и также быстро уходит, если вы не запишите ее на будущее то скорее всего через несколько месяцев придется все выдумывать снова, или вообще все забудется навсегда.
Раньше у меня был список идей в OneNote, потом я писал в блокнот, сейчас я пришел к формату Research Ticket™, тикет содержит в себе 3 раздела: данные, цель исследования и методика исследования.

  • Данные – это не только котировки базового актива, но вообще любые данные, которые будут использованы в исследовании. Это могут быть фундаментальные данные по компании, или календарь экономических новостей, или данные по смежным рынкам. Все это пишется в соответствующую графу.
  • Цель исследования – в этой графе можно описать к каким ожидаемым результатам мы планируем придти, также описываются разные интересные моменты, которые нужно исследовать поподробнее.
  • Методика исследования – примерный алгоритм действий как будет проистекать исследование, этот раздел очень важен, потому что нужно ставить перед собой много маленьких, и выполнимых задач-шагов, в противном случае ваш мозг может отказаться решать слишком расплывчатую задачу, и просто впадет в ступор :)
  • Итоги исследования – результаты исследования, после завершения работы, должны быть написаны с обратной стороны листа, в зависимости от результатов исследование идет дальше по фреймворку или отправляется в архив до лучших дней.

Research Ticket я предпочитаю писать от руки, а не печатать, так как во время работы на компьютере возникает много соблазнов и отвлекающих факторов, лучше налить хорошего чайку и в спокойной обстановке, чтобы никто не отвлекал, занести мысли в тикет. Потом новый тикет вешается на “прикол” на доску рядом с рабочим местом, и он всегда перед глазами, так и просит, чтобы его порисечили :)

Шаг 2: Exploration

В зависимости от конкретности идеи, особенно если она не очень конкретная, необходим следующий шаг исследований – exploration. Этот шаг служит для базового знакомства с проблематикой, например оценка общих условий на рынке, как я делал со спрэдом на американских опционах CBOE, исследовать можно что угодно: цену, волатильность, объемы. Главное чтобы exploration вывел вас к следующим этапам, или как минимум дал идеи, где искать рыбу. Обычно тут наблюдается некий круговорот: идея – exploration – идея – exploration – следующий шаг. Существует 2 подхода к исследованиям: top-down и down-top, первый идет от общего к частному, второй наоборот от частного к общему, на мой взгляд их нужно совмещать, хотя признаюсь, что 2-3 года назад я был ярым сторонником подхода top-down, любил большие проекты и исследования, сейчас мое мнение изменилось, и я считаю что нужно совмещать оба подхода. Конечно exploration – это пример top-down исследований, и этот подход позволяет создать общую картину актива или рыночного эффекта, который мы исследуем.

Шаг 3: Clustering

Кластеризация необходима для отделения зерен от плевел и агнцев от козлищ, рынок чем-то похож на больницу, и многие трейдеры пытаются торговать среднюю температуру по больнице, при этом если бы они разделили больницу на 3 корпуса: морг, реанимация и регистратура, их картина мира бы изменилась к лучшему. Конечно, проще сказать чем сделать, ведь многим из нас в самом начале трейдерского пути приходит в голову следующая гениальная мысль: “нужно разделить рынок на тренд и флэт и торговать разные участки разными стратегиями или подходами”. Всем знакомо? :)

Для примера простой рисунок, как распределение роста мужчин и женщин, соотносятся с распределением роста homo sapiens (без учета пола).

кластеризация

Когда мы прошли все 3 шага, у нас на руках должны появиться несколько заготовок систем, которые можно дошлифовать и отправить в DataMining, а на выходе получить несколько готовых систем :) Про DataMining мы поговорим в следующих постах…

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

  • reply at60hz ,

    Хороший цикл. Очень понравился механизм работы с тикетами, чем то напоминает agile практики. А вот про кластеризацию совсем непонятно: что именно кластеризуется и с какой целью?

    • reply ubertrader ,

      Кластеризуются режимы рынка, грубо говоря тренд/флэт, можно и по другим критериям кластеризовать, например по воле низкая/высокая.

      • reply at60hz ,

        т.е., если я правильно понимаю,вы определяете зависимость перфоманса стратегии от режима рынка.

        • reply at60hz ,

          Правильнее даже сзать, не зависимость, а скорее взаимосвязь

          • ubertrader ,

            Зерна от плевел, агнцев от козлищ :) В целом, нет, рецепта для грааля…

    • reply robomakerr ,

      Полезный пост, спасибо.

      У меня есть еще одна забавная проблема :)
      Рыночные идеи настолько многомерны и перекрестно связаны, что сложно придумать внятный способ их документирования.
      А объем их настолько велик, что просто не помещается в мозг.
      В результате, иногда бывает, что сделаешь рисёч, а потом смутно кажется, что вроде бы его уже делал. Покопаешься в записках – точно, есть.
      Да что рисёч, я даже в коде иногда быстренько напишу функцию, а потом оказывается что уже написал ее полгода назад :)

      • reply ubertrader ,

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

      • reply Казай Мазай ,

        С днем рождения!

        Leave a comment