Блог им. Kirill129
Тут в чате посвящённом алго-торговле 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 году были, то почему сейчас их не может быть), чем пытаться играть с другими роботами и хитроумными параметрами и алгоритмами.
А вы как думаете?
Все остальное для себя характеризую как лажу, которая рано или поздно закончится.
а какие, если не секрет?
1. Простая склонность к тренду и контртренду на разных таймфреймах к ним могут отноститься?
2. И если не можешь достоверно объяснить какую-то, на свой взгляд, неэффективность, то ее можно торговать?
2) Я не знаю, как другие. Я такой человек, если что то не могу объяснить, то это вообще не трогаю. Нафиг надо такие риски.
1) Лично у меня? Наверное. В подавляющем кол-ве случаев на нашем рынке я знаю кто стоит за боковиком, кто стоит за разворотом и почему пошло резкое движение в основных наших фучах. Если ситуация мне предельно ясна, я буду такое трейдить.
Зачем работать со статистикой, если менять ничего нельзя?
Вход- выход менять нельзя, а кол-во можно. А почему только кол=во?
т е что хотим — меняем, остальное — ни в коем случае.
Спасибо за статью! У вас интересный опыт! Плюсу и в профиль.
Не хочу язвить, но думаю вы согласитесь с этой правдой жизни: то что вам (или мне) ну удалось найти неэффективность, не значит что ее нет. Вот пример:
www.bloomberg.com/news/features/2018-05-03/the-gambler-who-cracked-the-horse-racing-code
Про него есть статья и в википедии.
И как раз примерно на этом поле:
Нужны либо оригинальные подходы — например определять тональность реакции зрителей по аудиодорожке трансляции, или пытаться выявлять договорные матчи, профилируя игроков.
KIRILL, Ваш подход к работе с данными весьма грамотный, вопросов нет. Только направление выбрано такое, где ничего и быть не может. Фактически Вы оттестили насколько корректно выставленный коэффициент отражает реальную вероятность наступления выбранного исхода. А в бэтфэйр точность весьма высока (я сейчас не учитываю расходы), что и было подтверждено Вашими тестами. Если Вы проделаете такой же опыт с русскими буками, результат будет намного интереснее, только фильтровать матчи все-таки нужно более тонко. Кстати, Вы писали, что высшая лига (ATP) показывала меньшую дисперсию результатов. Это, разумеется, работает и в любом другом виде спорта. Дело в том, что в топовых чемпионатах букмекер уделяет намного больше внимания анализу матчей, чем в любых других по причине ликвидности. Как думаете, кого легче и нужней анализировать: Манчестер Юнайтед или Верхнепышмские Крылья Советов?
1. Буки корректно выставляют кефы только до матча. Действильно, неэфыективностей в лайве гораздо больше, но эту закономерность, к большому сожалению, нивелирует адское проскальзывание, которое настроено в пользу бука ( в свое время работал в БК, была возможность поковырять ПО которое предлставлял головной офис для работы)
2. Игроки своими ставками двигают кефы в лайве. Да, это так. Но точно так же это верно и для кефов до матча))) Сначала выставляются эталонные кефы (за вычетом маржи), а после этого кефы корректируются в процессе приема ставок. Если попытаться прикинуть конкретный механизм (как бы Вы двигали кефы на месте букмекера, на каком основании) то многие вещи становятся понятны.
А по поводу психологии Вы на правильную мысль наткнулись, только, на мой взгяд все с точностью до наоборот: люди любят фаворитов! Вдумайтесь: кто в здравом рассудке станет проставлять большие суммы на аутсайдера? Мой опыт работы подтверждает эту мысль. Поэтому сумма принятых ставок всегда пропорционально больше на фаворита! А ведь это обстоятельство является триггером для букмекера, вынуждая его менять кеф. Все буки знают об этом свойстве психологии игроков. Поэтому при вычитании маржи из эталонного кефа она будет непропорцинально смещена на фаворита. Таким образом возникает парадокс: по дефолту выгодней ставить на аутсайдера!
А вообще, кажется, круг замкнулся))))) Засим, откланиваюсь, приятно было пообщаться.