KIRILL
KIRILL личный блог
24 ноября 2019, 14:23

Алготрейдинг. Вставлю и я свои 5 копеек....

     Тут  в чате посвящённом алго-торговле  t.me/algoinvest ,  развернулось активное обсуждение вопроса о том, что невозможно создать и алгоритм торговли «на всю оставшуюся жизнь», протестировав максимально возможный исторический отрезок. Основные причина которая называются следующая: рынок (торговая среда) постоянно меняются и то что работало вчера не работает сегодня. Я думаю, что   этот факт достаточно просто объясняется. Участники рынка стараются выиграть друг у друга с помощью торговых роботов, роботы влияют на поведение цены (график, паттерны, параметры), затем появляются новые роботы, которые вносят новые изменения в параметры торгового пространства  и этот цикл продолжается бесконечно, что и не даёт возможность создать вечный двигатель (вечный грааль).  Всё логично …

Но хочу вставить свои пять копеек в эту глобальную тему. Думается мне дело не только в постоянном изменении среды рынка и в войнах роботов, а в чём- то другом. И да, возможно Насим Талеб прав утверждая, что нельзя недооценивать случайность.

Поделюсь своим опытом. Лет 5 назад мне пришла в голову мысль сделать робота, торгующего ставками на теннисные матчи. Технические условия для этого очень даже неплохие. Биржа ставок Betfair даёт возможность делать ставки он-лайн по ходу матча и транслирует графики со ставками других участников, ликвидности более чем предостаточно ( сумма ставок на рядовой  матч в серии ATP в районе 300 000 – 700 000 USD, когда звёзды играют и до 10 000 000 USD доходит ) И плюс ко всему этому есть история торгов за несколько лет и API к самой бирже. В общем торгуй – не хочу.  Почему теннис думаю то же всем понятно: исходов всего два ( выигрыш/проигрыш) плюс это игра с огромным количеством статистики (счёта) внутри матча. А так-же с очень жёсткой структурированностью турниров и игроков. Дело оставалось за малым: подобрать параметры которые бы позволяли рубить капусту)). Ну ведь всё просто не так ли? Надо найти при каких начальных коэффициентах на игру, наступает момент в матче ( текущий  коэффициент и время матча  ) при котором вся совокупность матчей удовлетворяющим  данным условиям будут дальше развиваться в дном направлении (например выигрышем фаворита матча)  и соответственно приносить положительный финансовый результат. Тестирование началось с «очевидных» стратегий, ну как бы фаворит всегда должен дожимать аутсайдера если «почти» уже выиграл у него, но оказалось что нет… дальше больше… ну это уж точно, а это уж точно наверняка… Короче кончилось всё сканированием всего пространства параметров (просто тупым перебором вообще всего ) … И что Вы думаете? Таки да, абсолютно все стратегии в итоге ломались. Думаю излишне говорить, что все фильтры, которые могли быть применены к пространству матчей конечно же применялись (мужчины/женщины, квалификация турниров ну и так далее). Кстати надо всё таки отметиьт, что высшая мужская лига ( турниры ATP) показывали наиболее стабильные ( точнее, менее  не стабильные ) результаты по сравнению другими категориями турниров.

К чему это я всё? А к тому что в теннисе не существует торговых роботов, и таким образом торговая  среда то (теннисные турниры, матчи, игроки) не изменяется, а остаётся постоянной, но тем не менее закономерности выявить не удалось, хотя казалась бы она там должна присутствовать, ну по логике ( ну даже не буду пытаться аргументировать почему… ну ведь очевидно же… психология людей  и правила тенниса ведь не менялись ), но её там нет… закономерности… Так что наверное Талеб прав….

Теперь приведу другой пример из моей же жизни.  В начале 2012 года я сделал арбитражного робота которой одной ногой торговал фьючерсные  контракты на доллар  Si. А другой на Споте в одной крупной форекс-конторе. Фишка была в том, что торги долларом на ММВБ велись в то время до 19-00  и после того, как торги на ММВБ прекращались цены Si (Si торговался до 23-00) и Форекса теряли ориентиры и каждый из них уходил в самостоятельное плавание, создавая, таким образом шикарные возможности для арбитража. Ну а к 9-00  на следующий день, когда начинались торги на ММВБ, обе цены ( форекс и Si)  гарантированно становились одинаковыми. Абсолютно безрисковый арбитраж был. К сожалению счастье длилось не долго. В ноябре 2012 ММВБ стала торговать до 23-00 и эта схема перестала работать, цены перестали разлетаться….

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

А вы как думаете?

35 Комментариев
  • Андрей К
    24 ноября 2019, 14:36
    Я пришел к такому мнению, что если алго не арбитраж, то алго должен торговать какие то фундаментальные вещи, азы, которые подчиняются логике и имеют объяснение.

    Все остальное для себя характеризую как лажу, которая рано или поздно закончится.
    • Кот Матроскин
      24 ноября 2019, 14:55
      Андрей К, 
      а какие, если не секрет?
      1. Простая склонность к тренду и контртренду на разных таймфреймах к ним могут отноститься? 
      2. И если не можешь достоверно объяснить какую-то, на свой взгляд, неэффективность, то ее можно торговать?
      • Андрей К
        24 ноября 2019, 15:00
        Кот Матроскин, 

        2) Я не знаю, как другие. Я такой человек, если что то не могу объяснить, то это вообще не трогаю. Нафиг надо такие риски.

        1) Лично у  меня? Наверное. В подавляющем кол-ве случаев на нашем рынке я знаю кто стоит за боковиком, кто стоит за разворотом и почему пошло резкое движение в основных наших фучах. Если ситуация мне предельно ясна, я буду такое трейдить.
          • Андрей К
            24 ноября 2019, 15:04
            KIRILL, нет конечно =) разве можно о таком трепать на форумах 
          • Capital Management
            24 ноября 2019, 17:59
            KIRILL, есть стратегии которые работают всегда, главное понимать что процент будит всегда плавающий выигранный проигранных сделок, главное в стратегии ни когда ее не менять и работать со статистикой 
            • Виталий Зотов
              24 ноября 2019, 18:42
              CapitalMAN, 
              главное в стратегии ни когда ее не менять и работать со статистикой 
              Разрыв шаблона. 
              Зачем работать со статистикой, если менять ничего нельзя?
              • Capital Management
                24 ноября 2019, 18:44
                Виталий Зотов, управление капиталом
                • Виталий Зотов
                  24 ноября 2019, 19:12
                  CapitalMAN, 
                  главное в стратегии ни когда ее не менять
                  и 
                  управление капиталом
                  т е это не изменение ?
                  Вход- выход менять нельзя, а кол-во можно. А почему только кол=во? 
                  т е что хотим — меняем, остальное — ни в коем случае.
                • Cheshire Cat
                  24 ноября 2019, 23:01
                  CapitalMAN, неа. Помнится ты давно это утверждаешь. И общал привести пример управления, который бы делал 5% годовых. Но вот нет до сих пор обоснования с твоей стороны. Лукавство.
  • Павел
    24 ноября 2019, 16:01
    KIRILL, в беттинге работает только одна вещь — value. Использовать её помогает временной лаг на смену кефов у разных буков. НО: на бэтфэйре практически нет нежффективностей. Посмотрите вилки бетфэйр — 1хбет, мли другой русский бук. Потом пинакл — любой русский бук. Вилок будет море. Притом, что спред у этих буков минимальный. После посмотрите вилки бетфэйр — пинакл. Опа… а из и нет практически! Собственно, как и неэффективностей
      • Павел
        24 ноября 2019, 17:00
        KIRILL, Вот-вот. Я о том и говорю, что Вы пытались найти неэффективности там, где их быть не может по определению. Неудивительно, что результата нет. Алгоритмическая торговля подразумевают серию однотипных сделок, т.е. исходные условия должны быть одинаковыми, а без учета конкретных игроков/команд данное условие является невыполненым.
  • Андрей Возяков
    24 ноября 2019, 16:30
    Появилась такая мысль по ставкам. Цены ведь меняются в режиме онлайн и в это время можно делать ставки? А что если применить какую нибудь идею на этих ценах из трейдинга? Например пробой канала дончиана. Цена пробила максимум за 5мин, то покупаем надеясь на тренд.
    • Павел
      24 ноября 2019, 17:04
      Андрей Возяков, меняются не цены, а коэффициенты, которые отражают вероятность выбоанного исхода. Это сродни опционам скорее, нежели споту. А там ТА бесполезен.
  • Павел
    24 ноября 2019, 17:25
    KIRILL, посмотрите внимательно еще раз: сообщение выше адресовано не Вам, а Андрею)) я не зануда и не буквоед))
  • dip
    24 ноября 2019, 18:56

    Спасибо за статью! У вас интересный опыт! Плюсу и в профиль. 
    Не хочу язвить, но думаю вы согласитесь с этой правдой жизни: то что вам (или мне) ну удалось найти неэффективность, не значит что ее нет. Вот пример: 
    www.bloomberg.com/news/features/2018-05-03/the-gambler-who-cracked-the-horse-racing-code 

    Про него есть статья и в википедии. 

  • MS
    24 ноября 2019, 22:10
    невозможно создать и алгоритм торговли «на всю оставшуюся жизнь»
    Пытаюсь опровергнуть утверждение, близок к успеху.

    И как раз примерно на этом поле:
    Простая склонность к тренду и контртренду на разных таймфреймах
  • Spekyl
    24 ноября 2019, 23:49
    Это большая ошибка в подходе, что на теннисе, что на ставках — попытаться найти некий фундаментал, который одновременно и будет объяснять матч и одновременно не будет известен другим участникам. Особенно это заметно на американских видах спорта, типа бейсбола и американского футбола, где накоплено просто море статистики. 
    Нужны либо оригинальные подходы — например определять тональность реакции зрителей по аудиодорожке трансляции, или пытаться выявлять договорные матчи, профилируя игроков. 
    • Пафос Респектыч
      24 ноября 2019, 23:56
      Spekyl, довольно стандартная ситуация в машобучении — чтобы улучшить предсказательную силу модели, нужно или искать дополнительные фичи которые увеличат общее имеющееся количество информации, или допиливать алгоритм обучения, чтобы из того что есть извлечь чуть больше чем смогли другие.
      • Павел
        25 ноября 2019, 08:56
        KIRILL, В этом все и дело! Как раз в отсутствии фундамента. Раз коэффициент (справедливо оцененый) отражает вероятность наступления исхода, то на дистанции значимых статистических расхождений не будет по определению! Те моменты, когда Ваша стратегия показывала плюс были аномалией (по существу жирным хвостом распределения). Поэтому стратегия и ломалась постоянно.Здесь скорее уместно было играть на возврат к среднему, но, думаю, расхождения были невелики, а учитывая отрицательное МО в виде спреда, комиссий и проскальзываний — денег там нет от слова вообще.
        KIRILL, Ваш подход к работе с данными весьма грамотный, вопросов нет. Только направление выбрано такое, где ничего и быть не может. Фактически Вы оттестили насколько корректно выставленный коэффициент отражает реальную вероятность наступления выбранного исхода. А в бэтфэйр точность весьма высока (я сейчас не учитываю расходы), что и было подтверждено Вашими тестами. Если Вы проделаете такой же опыт с русскими буками, результат будет намного интереснее, только фильтровать матчи все-таки нужно более тонко. Кстати, Вы писали, что высшая лига (ATP) показывала меньшую дисперсию результатов. Это, разумеется, работает и в любом другом виде спорта. Дело в том, что в топовых чемпионатах букмекер уделяет намного больше внимания анализу матчей, чем в любых других по причине ликвидности. Как думаете, кого легче и нужней анализировать: Манчестер Юнайтед или Верхнепышмские Крылья Советов?
      • Павел
        25 ноября 2019, 09:05
        KIRILL, результаты исследования сравнивали с нормальным распределением?
          • Павел
            26 ноября 2019, 19:37
            KIRILL, Ваш личный опыт игры, к сожалению, статистически нерелевантен. А вот дальнейшие утверждения верны только отчасти, а именно:
            1. Буки корректно выставляют кефы только до матча. Действильно, неэфыективностей в лайве гораздо больше, но эту закономерность, к большому сожалению, нивелирует адское проскальзывание, которое настроено в пользу бука ( в свое время работал в БК, была возможность поковырять ПО которое предлставлял головной офис для работы)
            2. Игроки своими ставками двигают кефы в лайве. Да, это так. Но точно так же это верно и для кефов до матча))) Сначала выставляются эталонные кефы (за вычетом маржи), а после этого кефы корректируются в процессе приема ставок. Если попытаться прикинуть конкретный механизм (как бы Вы двигали кефы на месте букмекера, на каком основании) то многие вещи становятся понятны.
            А по поводу психологии Вы на правильную мысль наткнулись, только, на мой взгяд все с точностью до наоборот: люди любят фаворитов! Вдумайтесь: кто в здравом рассудке станет проставлять большие суммы на аутсайдера? Мой опыт работы подтверждает эту мысль. Поэтому сумма принятых ставок всегда пропорционально больше на фаворита! А ведь это обстоятельство является триггером для букмекера, вынуждая его менять кеф. Все буки знают об этом свойстве психологии игроков. Поэтому при вычитании маржи из эталонного кефа она будет непропорцинально смещена на фаворита. Таким образом возникает парадокс: по дефолту выгодней ставить на аутсайдера!
  • Павел
    26 ноября 2019, 20:33
    Кончилось все закономерно, по озвученным мною выше причинам…

    А вообще, кажется, круг замкнулся))))) Засим, откланиваюсь, приятно было пообщаться.

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

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