Comments 18
Если алгоритмическая торговля работает, зачем об этом всем рассказывать вместо того, чтобы просто скупать элитную недвижимость в теплых странах? Ведь это гораздо интереснее, чем собрать пять лайков и три комментария на Хабре.
Кривая капитала впечатлает:
Ну в .csv файле мы видим, что распределение сделок по прибыльности адекватное, всё грамотно работает. Прикреплю equity curve и .csv файл на гитхаб - можете посмотреть и их.
Бектест позволил нам понять, что наша стратегия действительно работает
Я скачал с гитхаба файл trades.csv, там 110 сделок и кривая эквити капец как далека от той картинки, которую вы разместили в статье с надписью "Кривая капитала впечатлает".
Вот какое шатание доходности у вас в файле trades.csv:

Поэтому вопрос, что за картинка эквити у вас в статье? Там ни одной убыточной сделки :)
Ну а эквити в файле trades.csv... Это нельзя назвать "действительно работает" - это в жизни не будет работать, раз оно даже на бэктесте показывает такое. Это фактически подобрали параметры так, чтобы хотя бы первые 25 сделок принесли доход, а потом пила-слив.
И почему бэктест на данных за пол года?
Перебор параметров - это просто подгонка. На дистанции такие "системы" сольют. Ведь представим, что мы начали торговлю в середине августа? И всё, убыток.
У меня есть рабочая система, и я был активен при поиске знаний в подобных дискуссиях ещё лет 20 назад.
Так вот, тезис о том, что систему следует тестировать на годах и десятилетиях — неверен.
Он даже чисто теоретически неверен, структуры рынка меняются по несколько раз в год, и фитить стратегию нужно гораздо чаще.
Но я когда вижу, что есть рабочая стратегия, я одного не понимаю - почему классификаторы, даже навороченные, никаких корреляций не находят? Почему классификаторы выдают 0.5 на выходе всегда?
Но я когда вижу, что есть рабочая стратегия
Видеть недостаточно, у человека есть когнитивные искажения, мы можем навыдумывать себе всякое. Рабочая стратегия или нет можно проверить только бэктестом. А для бэктеста её нужно формализовать (а это не всегда получается).
Почему классификаторы выдают 0.5 на выходе всегда?
Это лишь вопрос к архитектуре ваших классификаторов (и/или данным, и разметке данных). Может быть ваш классификатор недостаточно "мощный"? Допустим для классификации картинок мы взяли нейросеть всего из 1 нейрона, то есть ёмкости сети точно недостаточно для нахождения паттернов на картинках, а значит в процессе обучения система "обучится" на наименьшую ошибку, а наименьшая ошибка получается, если предсказывать на выходе просто 0.5 во всех случаях :)
В общем мы знаем, что яблоко от морковки легко отличается, и если классификатор не может их различить, значит что-то не то с архитектурой этого классификатора (или данными, или разметке этих данных).
А на бирже комбо, тут и с данными сложно (нужно придумать хитрое представление данных, понятное машине, в данных часто есть дисбаланс классов, нужно балансировать или решать весами), и с разметкой данных сложно (какой период брать в сампл, какие именно метки использовать). А уж про архитектуру вообще - простор для экспериментов.
А почему на бегктестах часто все радужно?
Потому, что многие путают системостроительство с подгонкой.
Проделайте вот такой мысленный эксперимент.
Случайным образом подбрасываем монетку 1000 раз, и записываем: если выпал орёл, то "пошли вверх на 20 пипсов", если решка, то "сходили вниз на 20 пипсов". Таким образом у вас получится какой-то график, который будет очень похож на рыночные колебания визуально. То есть это чистый рандом, и там нет никаких взаимосвязей событий, соответственно и ежу понятно, что на основе левой части графика никакие предсказания наперёд невозможны.
Теперь набрасываем на этот "график" простую скользящую среднюю и ещё какой-нибудь индикатор, придумываем на их основе "правила" и перебираем их параметры.
Я утверждаю, что при каких-то комбинациях параметров - "система" покажет прибыль даже на таком рандомном графике. Но это будет просто подгонка под график! Такая система ничего не может зарабатывать.
И многие "системщики" занимаются просто перебором параметров и находят такие комбинации, при которых на левой части графика система дала бы прибыль. Но так как простой перебор - это не "понимание рынка" и даже не "нахождение закономерностей (паттернов), неэффективностей", то вот и получается, что "системщики" часто находят лишь "совпадения параметров", когда на бэктесте что-то "показывает", а на реале будет слив, а может даже и смыв :)
Вот кстати пользуясь моментом разрешите у вас спросить) есть у меня скрипт - анализатор свечных паттернов. Дергает окнами блоки по 50, 100 и так далее свечей. Вот допустим он нашёл прибыльный паттерн. И вот прям сейчас проверил что этот паттерн отработал во всех трех окнах. Почему бы этому паттерну не продержаться еще хотя бы сутки. Нет, сливается или даже как вы сказали смывается.
как оценивается, что паттерн прибыльный? Были прогоны бэктестом и есть статистика?
Почему бы этому паттерну не продержаться еще хотя бы сутки. Нет, сливается
Если мы говорим о реально устойчивой проверенной статистически закономерности, то она ведь никогда не будет работать в 100% случаев. Там будет, что-то типа: в 62% случаев на истории такой паттерн давал прибыль, в 38% случаев получали убыток. Зная вероятность, можно на что-то надеяться в будущем, считать безопасный максимальный размер капитала в сделке, размеры тейков и стопов и прочее. Но нельзя от системы требовать, чтобы она непременно завтра сразу же давала прибыль. Нужно судить только по результатам статистически значимого количества сделок (и/или количества торговых дней).
СсылОчка на рефку с биржи в описании, как говорица. Какие-то несколько относительно случайных индикаторов, которые лишь производные от цены, и было бы странно, если бы они показали что-то дельное в моменте. Какая-то подгонка циферок в этих индикаторах на истории. Если и алго работает, то не так
Мы тоже постоянно проводим тесты стратегий через так сказать алготрейдинг. Очень тяжело однозначно сказать. Этот график зря прикрепили, бред, в реальности такого не будет 98%.
Соглашусь что понадобится время. Год мало. Минимум 3.
Тоже пользуемся индикаторами, каждый раз по разному. Обычное соотношение 1 к 1 или 1 к 3, вот в чем вопрос.
Прав, написав, что тестировать нужно не менее 10 лет.В tslab тестирование стратегии в 10 лет
По видимому разработчики этого приложения потеряли не только (страх и жадность) , но 99% от капитала прежде чем создать квантовую запутанность между двумя этими частицами.
Везде вижу уроки, что в алготрейдинге используют только тупые индикаторы. Но никогда не слышал, чтобы кто-то пытался сделать алгоритмы, которые торгуют те же идеи, что и люди: фигуры типа флагов, головы и плечей, бэтменов, волн Эллиотта или Вульфа и т.п..
И свечные модели, всякие price action тоже в алгоритмах не видел, хотя то, что рассказывают на Ютубе, вроде неплохо формализуется на первый взгляд. Конечно наверняка большинство - это инфоцыгане, но бэктест бы это сразу показал.
Везде вижу уроки
уроки на то и уроки, чтобы на простых примерах показать что-то. То есть как пример наипростейшей системы с простенькими "индюками" - статья сгодится. Но вот утверждать "наша стратегия действительно работает" - тут автор выдаёт желаемое за действительное, тем более учитывая странность с кривой эквити в статье.
Но никогда не слышал
А большая у вас выборка? ;) Поверьте, все просто формализуемые паттерны уже давно проверили вдоль и поперёк ещё десятилетия назад.
Мне кажется, что даже на не трейдерском ресурсе, то есть тут где-то было на Хабре, у кого-то была статья, когда формализовывалась вся классика теханализа и прогонялась бэктестом. Ожидаемо ничего не было найдено. Также помню где-то был цикл статей про прогоны стратегий из "уважаемой" книжки Линды Рашке, тоже фигня на выходе была.
Рынок ведь немного сложнее, чем "голова и плечи". "Голова и плечи" может сработать 3 раза, а в четвертый не сработать, и всё, что "нажито" в предыдущие 3 раза сливается в этой четвертой сделке. Вот основная проблема классических фигур и индикаторов.
Лет 25 назад я, окрыленный открывающимися перспективами, купил дорогущую тогда бумажную книгу Джона Мэрфи "Технический анализ финансовых рынков". Тогда её называли чуть ли не "библией теханализа" :) А через несколько лет я её отнёс в мусорный контейнер с простым бытовым мусором, так как ей там и место. Даже отдавать никому не стал (сейчас с раздельным сбором мусора сдал бы во вторсырье разве что). Потому, что это разводняк, иллюзия простоты, типа "изучи технический анализ и зарабатывай". Но всегда можно сказать "если сделки убыточны, значит ты что-то не учёл, недостаточно глубоко проанализировал". То есть вообще вся тема с техническим анализом, "фигурами" и прочими паттернами - это инфоцыганщина, создание иллюзии, что простой человек может что-то там "освоить и зарабатывать". А если не заработал и слил, то "сам виноват, значит что-то не учёл", и ведь всегда на левой части графика задним числом можно найти что именно не учёл :) Ведь даже на полностью сгенерированном рандомом графике можно найти и линии поддержки и сопротивления и "фигуры". Так что есть огромный простор для всех обучателей и прочих инфоцыган.
За годы ковыряния в этой теме я понял, что всё существенно сложнее устроено. Да что там теханализ и книжки по нему, я считаю, что вообще весь рынок - это в какой-то мере узаконенный разводняк :) (за исключением, когда рынок используют именно как инструмент, например когда фермеры хеджируют риски изменения цен на топливо в будущий уборочный сезон, закладывая сейчас уже цены топлива при которых их деятельность будет прибыльна). То есть как инструмент рынок можно использовать. Для инвестиций на годы (например купить акции с горизонтом держания 10 лет) акций из индекса с ребалансировкой портфеля - тоже хорошо. А вот для краткосрочных спекуляций и заработка - тут целая индустрия разводок и лучше сюда не лезть.
Ну наверное больше десятка видел статей про алготрейдинг с использованием только индикаторов. А из фигур видел только один урок по поиску чего-то похожего на ГиП, но который находил не далеко не все ГиП, а только в небольшом окне из нескольких свечей. И дальше не было никакого алгоритма с бектестами.
Я полгода назад искал в гугле алготрейдинг с фигурами, но попадается либо просто базовое неформализованное описание фигур без алгоритма, либо алготрейдинг с индикаторами. Статью на Хабре, про которую вы говорите, не находил.
Меня интересуют фигуры не сами по себе, а с точками входа и стопами за линии поддержки. Если фигура сработала, то заработал, если нет - закрылся по маленькому стопу. В итоге в среднем можно неплохо зарабатывать, мне кажется. По крайней мере, некоторые курсы по трейдингу так учат. И их авторы побеждают на турнирах и ЛЧИ с сотнями процентов доходности за несколько месяцев. Но они торгуют руками, попыток сделать такое в алгоритмах я не видел.
То, что рынок - разводняк, не спорю. Скорее всего, им крутят большие дяди с огромными капиталами, провоцируя толпу на выгодные для них действия, которые ведут к перетеканию денег от толпы к ним. Должны быть какие-то правила, по которым они действуют, инициируют движения, которые психологически заставляют толпу продавать и покупать тогда, когда это выгодно им. Если разгадать хотя бы их часть, можно к ним присоединиться и тоже себе часть этого потока забрать. Я думаю, это возможно, но не сводится к простым индикаторам. И как только заметная для них часть потока начнёт утекать посторонним, они эти правила усложняют, поэтому старая информация в интернете и книгах не работает или становится неполной.
Для меня странно: читать данные с одной биржи, расчеты/действия по ним делать для другой?
Создание максимально стабильной автоматизированной торговой системы: от бектеста до реального бота