Sereas
Sereas личный блог
25 декабря 2015, 18:40

Первые шаги в создании торгового робота. Шаг второй

Всем добрый день!

Вчера я написал о том, что хочу создать торгового работа, который торговал бы на фьючах на нефть и ртс. Во вчерашней записе я рассмотрел простейшее торговое правило: смотрю закрылась ли часовая свечка по бренту в плюсе или минусе и в следующий час открываюсь в соответствующем направление по РТС. Результаты в целом были впечатляющими, но довольно противоречивыми — у системы был долгий период убыточных/нулевых сделок, затем резкий рост доходности и еще пара резких спадов, после которых шел рост. Процент успешных сделок составил около 52%.

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

Начать я решил именно со второго пути — так как он проще и требовал меньше времени на придумывание и тестирование. Одним из основных минусом своего простейшего правила я считаю то, что я вхожу по открытию свечи и выхожу по закрытию, в то время как почти у каждой свечи есть тень и я мог бы заходить в позицию по более выгодной цене. Отсюда вытекает логичный вопрос — на каком уровне выставлять ордер для входа в сделку? Вариантов было несколько: 
1) Взять среднее значение максимального отклонения от уровня открытия (вниз для того, чтобы входить в лонг и вверх, чтобы шортить). По формулам это выглядит так (Low-open)/open и (high-open)/open. Соответственно заходим если относительно уровня открытия цена падает/поднимается больше чем средние значения.

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

3) Понимая, что минус второго способа заключается в том, что я смотрю на волатильность совершенно другого актива, я решил что выходом из ситуации будет задание распределения волатильности ртс и делать корректировки на уровень захода исходя из последней реализовавшийся волатильности

Из 3х способов наилучшим, естественно является 3ий способ, но я пока не придумал как его правильно реализовать, поэтому начал с введения 2 способа.
В идеале, эта торговая система будет закрываться по тейк профиту, который будет выставляться по похожему принципу как ордер на вход в позицию. К сожалению, я не могу достоверно протестить систему если поставлю это правило — ведь я не знаю, сначала цена сходила на хай, а потом опустилась и сработал ордер на вход или наоборот. Поэтому, чтобы не вселять ложный оптимизм, я решил оставить, что закрытие всегда по уровню закрытия свечи.
В дополнение я решил установить базовые правила риск-менеджмента, а именно ставил стоп на уровне 1% от уровня открытия.

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

Первые шаги в создании торгового робота. Шаг второй
По внешнему виду очень напоминает график капитала без всяких правил, с одной лишь оговоркой — максимальная просадка здесь составила всего 30% капитала. И в первые года система вела себя намного лучше, принося около 25-30% годовых

Первые шаги в создании торгового робота. Шаг второй
Первые шаги в создании торгового робота. Шаг второй

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

Жду Ваших предложений!

20 Комментариев
  • helk3rn
    25 декабря 2015, 19:20
    Разве минус второго способа не убирается вычислением коэффициента волатильности RTS/BR за период?
  • Alexand77
    25 декабря 2015, 19:29
    Я сегодня как раз сделал последний шаг к роботу, скомпилил dll. А вы пока делаете шаги к системе, робот тут не причем и далеко до него. Мой совет — не откроете вы сделку в реале по открытию свечи, бросьте эту идею. Ну и не усложняйте, чем сложнее чем хуже, тестируйте концептуальные идеи а не подбирайте стоп или период МА грубо говоря, это бесполезно. Робот не решает ни одной проблемы и не является панацеей, если торговая идея плохая или тем более ее вообще нет. Идею можно торговать и руками, а робот это дело десятое.
  • Счастливый Конец
    25 декабря 2015, 20:47
     Не очень понятно почему именно RI. Может лучше Si+BR? И потом, вот у вас есть гипотезы. Ну там "-1 по BR и дадут такую же по RI", а почему не -0.8 или -1.2 Ну раз начали изобретать, так берите, подгоняйте поточнее. Понятно, что это подгон параметров, но можно выдвинуть гипотезу, что если их подгонять после каждого закончившегося торгового дня, то следующий день будет идти в русле параметров и вероятность того что день будет совершенно вне стратегии — мала.
  • Счастливый Конец
    25 декабря 2015, 20:55

    просадка 30% это что-то дофига. Я бы такую стратегию не торговал. Для себя решил, что 5% просадка уже нервирует.

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн