Полное руководство по покупке алгоритмической торговой системы
Покупка алгоритмической торговой системы
Зелёными точками отмечены пики
Рисунок 1. Кривая капитала выглядит отлично. Можно ли ей доверять?
«Тьфу! Я снова попался. Купил в интернете «идеальную» торговую систему. В рекламе всё выглядело замечательно, но в торговле на реальные деньги она оказалась полным дерьмом. И это происходит со мной каждый раз, когда я покупаю очередную торговую систему. Почему так происходит?»
Звучит знакомо? Конечно, если у вас есть привычка покупать торговые системы. Это не значит, что хороших систем не существует – они есть. Но в целом покупка торговых систем – это рискованное занятие.
Итак, прежде чем купить алгоритмическую торговую систему, вам нужно знать следующее.
Начнем с терминологии.
Что такое торговая система?
Торговая система – это набор правил, которые говорят вам, когда покупать и когда продавать. Они могут быть простыми (например, покупать на пробое 20-дневного диапазона) или сложными (содержащими тысячи строк кода).
В зависимости от типа торговой системы, которую вы покупаете, в ней будут раскрываться либо абсолютно все правила, либо только некоторые, либо не будет раскрываться ни одно из правил. Об этом мы поговорим ниже.
Наконец, система может быть полной (где обозначены все правила) или частичной (например, вы сами задаёте правила выхода).
Что такое алгоритмическая торговая система?
Алгоритмическая торговая система, также известная как алготрейдинг – это полный набор правил по покупке и продаже, обычно уже закодированных. Алгоритмическая торговая система часто на 100% основана на правилах и не предполагает дискреционных действий.
Типы торговых систем
Во-первых, есть системы типа «чёрный ящик» (black box), где вы вообще не видите никаких правил. Вы получаете сигналы, но не знаете логику, стоящую за ними.
Во-вторых, есть системы типа «белый ящик» (white box), где все правила и логика полностью раскрыты.
Наконец, есть системы типа «серый ящик» (gray box), где для вас раскрыта бо́льшая часть, но не вся логика торговой системы.
Поставщики, как правило, продают один из трёх видов алгоритмических торговых систем.
По моему опыту, по стратегиям типа «чёрный ящик» очень трудно торговать, так как вы не имеете понятия, на чём основаны сигналы данной системы. Сложно доверять системе, которая может давать случайные сигналы на покупку и продажу. Вы поймёте, насколько трудно торговать по системам типа «чёрный ящик», во время просадки.
Купить торговую систему или использовать другие подходы?
Большинство продаваемых торговых систем основаны на нереалистичных бэктестах или подгонке данных. При покупке алгоритмической торговой системы будьте очень осторожны.
Опасности, связанные с покупкой алгоритмических торговых систем
Когда вы покупаете торговую систему после увиденной рекламы в своей почте, журнале или на сайте, вы обычно видите некую общую статистику и плавную кривую капитала. Она будет выглядеть слишком хорошо, чтобы быть правдой (первый предупреждающий сигнал!), но, безусловно, будет выглядеть заманчиво – как кривая капитала, показанная на рисунке 1.
Хотя где-то в глубине души вы задумаетесь, почему продавец отдаёт «Святой Грааль» так дешёво, скорее всего, вы не будете долго размышлять о его мотивах (по всей видимости, ему нужны деньги, чтобы покрыть собственные торговые убытки!). Конечно же, вы подумаете, что такая высокая производительность возможна, и вы были бы рады даже 25% или 50% от показанной прибыли. В этот момент крючок уже у вас во рту, и продавцу остаётся только дёрнуть леску и зацепить вас, чтобы затащить в свою лодку.
Можно ли гарантировать или спрогнозировать будущие торговые результаты?
Если вы какое-то время торговали на фьючерсном, товарном или валютном рынке, то, вероятно, вы слышали фразу: «прошлые результаты не обязательно указывают на будущую производительность» (или «не являются гарантией будущей производительности»). Это утверждение обязательно для упоминания по закону США для организаций, участвующих в определённых видах торговой деятельности. И, как вы увидите, оно обязательно по очень веским причинам. Таким образом, ответ на вопрос в заголовке – нет, прошлая производительность не прогнозирует будущие результаты.
Это предупреждение/отказ от ответственности является обязательным во многих случаях, потому что большинство людей смотрят на историю результатов или кривую капитала и экстраполируют её в будущее. Например, если алгоритмическая торговая система за последние 5 лет приносила в среднем 40% прибыли в год, многие люди предположат, что она принесет им 40% прибыли и в следующие 5 лет – или хотя бы в следующие 1-2 года. Это самое худшее, что можно предположить, и на то есть две причины: во-первых, будущее никогда не повторяет прошлое; во-вторых, сама история результатов может быть ошибочной. Оба этих аспекта обсуждаются ниже.
Несмотря на очевидность того, что никто не может спрогнозировать будущее, люди всегда это делают. Это происходит во всех сферах жизни и проявляется в таких разных видах деятельности, как прогноз погоды, гадание, прогнозы спортивных чемпионатов и прогнозы фондового рынка. Хотя прогнозировать будущее весело, на самом деле никто не может сделать это с какой-либо точностью (тем не менее, многие будут утверждать, что у них есть этот «дар»; но если бы у них действительно была эта способность, то почему все они до сих пор не мультимиллиардеры?).
Нострадамус – отличный тому пример. Если он был так хорош в предсказании будущего, почему же он не был самым богатым человеком на свете?
Итак, типичный способ спрогнозировать будущее – это использовать прошлое в качестве руководства. Например, клуб «Тампа-Бэй Бакканирс» недавно выиграл Супербоул, и если основываться на прошлых результатах, они должны были выиграть его и в следующем году. Но они, естественно, не одержали победу. Или, может быть, в конце 2007 года вы думали, что если метод «купи и держи» для акций работал с 1910 года по 2007 год, то он должен с таким же успехом работать и в 2008 году, и дальше? Видите проблему? Знание прошлого не обязательно помогает нам в знании будущего. Часто оно ослепляет нас в отношении возможностей, о чём многие узнали во время финансового кризиса 2008 года. И это одна из причин предупреждения правительства.
Вторая причина оговорки, что «прошлые результаты не гарантируют будущие», состоит в том, что в мире инвестиций представленные кривые и цифры производительности зачастую являются гипотетическими (то есть никто на самом деле не торговал подобным образом на реальные деньги и, возможно, не мог бы так торговать, даже если бы захотел) или были разработаны с учётом ретроспективного анализа (хороший пример – ненадлежащее «бэктестирование»). Поэтому результаты торговой системы, на которые вы смотрите, могут иметь абсолютно нулевое значение в будущем.
Как же себя защитить?
Во-первых, если вы видите, как кто-то делает прогнозы рынка, осознайте, что есть высокая вероятность того, что он ошибётся. Независимо от того, кто этот гуру, относитесь скептически к любым прогнозам. На самом деле никто не знает будущего.
Во-вторых, всегда приятно смотреть на результаты торговых систем, но никогда не думайте, что прошлые результаты повторятся. Такое случается редко. Однако история результатов, особенно если она проверена независимой третьей стороной, может дать вам некую уверенность в том, что люди, управляющие инвестициями, знают, что делают. Это, конечно же, лучше, чем доверять деньги кому-то без какой-либо истории. Но, опять же, это не гарантия будущих результатов.
В-третьих, какую бы историю результатов вам ни представляли, всегда спрашивайте её автора, была ли она получена на реальном торговом счёте с реальными деньгами. Если нет, это может быть жизнеспособная торговая стратегия, но относитесь к ней со здравым скептицизмом. Она может оказаться несбыточной мечтой, которую невозможно реализовать в реальной жизни. А если она была получена с помощью подгонки данных задним числом, то она почти гарантированно окажется убыточной в будущем. Есть хорошие и плохие алгоритмические торговые системы. И зачастую трудно понять, какая из них перед вами.
Наконец, убедитесь, что вы проявили должную осмотрительность перед покупкой любой системы. Это ваши с трудом заработанные и накопленные деньги. Не выбрасывайте их, принимая поспешное решение. Найдите время и усилия, чтобы тщательно исследовать и изучить каждую инвестиционную возможность. Если вы поспешите и поверите рекламным обещаниям, то вскоре узнаете, почему существует обязательное предупреждение о том, что «прошлые результаты не гарантируют будущих».
Предположим, что некая торговая система на первый взгляд выглядит хорошо. Как узнать, что продавец этой торговой системы не хитрит? Вот несколько самых распространённых приёмов, используемых недобросовестными продавцами.
Распространенные хитрости продавцов алгоритмических торговых систем
Чрезмерная оптимизация
Возьмите какие-то рыночные данные и многократно протестируйте их – в итоге получится отличная кривая капитала. Это происходит из-за злоупотребления процессом тестирования, известным как оптимизация. Если продавец добавляет в стратегию много правил с большим количеством параметров для создания миллионов разных торговых систем, то по чистой случайности несколько систем покажут выдающиеся результаты. По сути, данные подвергались долгим и интенсивным пыткам, чтобы раскрыть свои секреты. Но эти секреты почти никогда не применимы к будущим данным.
Трудность оптимизации состоит в том, что часто невозможно сказать, правильно ли она была использована в процессе разработки. Мой ключевой аргумент в таких случаях: если что-то выглядит слишком хорошо, чтобы быть правдой, то, вероятно, оно было чрезмерно оптимизировано.
Некорректный процесс разработки
Большинство продавцов не имеют ни малейшего представления о том, как правильно разрабатывать торговые системы. В этом состоит ещё одна опасность алгоритмических торговых систем. Этот факт объясняет, почему они главным образом являются продавцами, а не трейдерами! Разработать систему надлежащим образом – это тяжелая и часто разочаровывающая работа. Например, на рисунке 2 представлен мой процесс разработки системы под торговой маркой Strategy Factory. Он длинный, утомительный и сложный. Большинство торговых идей, которые я тестирую, оказываются бесполезными. Хотя существуют и другие способы разработки торговых систем, этот подход в очередной раз доказал мне свою эффективность.
Как и в случае с чрезмерной оптимизацией, вы почти никогда не узнаете, были ли ошибки в процессе разработки. Именно по этой причине я всегда предполагаю, что поставщик разрабатывал её неправильно. Это предположение может сэкономить вам тысячи долларов.
Рисунок 2. Мой процесс разработки стратегии под торговой маркой Strategy Factory
Хитрости с программным обеспечением для бэктестирования
Ещё один распространённый приём, который используют продавцы «липовых» торговых систем – это мошенничество с программным обеспечением для бэктестирования с целью получения ложных результатов. Любое программное обеспечение, включая лидеров индустрии, таких как Tradestation, Ninja Trader и Multicharts, имеет несколько методов для тестирования стратегий. Хитрые поставщики это знают и используют при любой возможности.
Один из популярных видов спекуляции связан с лимитными ордерами. В реальной торговле большинство лимитных ордеров исполняются только тогда, когда цена превышает лимитный ордер. Однако большинство программ можно настроить так, чтобы лимитные ордера считались исполненными сразу же, как только цена коснулась их. Это может сделать большинство скальпинговых систем великолепными при бэктестировании, но в реальной жизни они потерпят полное фиаско.
На рисунке 3 показан пример. Кривая капитала слева предполагает, что лимитные ордера исполняются, как только цена касается их (неправильный способ). Кривая капитала справа показывает сделки, которые исполняются только тогда, когда цена пробивает лимитный ордер. Разница существенная!
Хотя часто эту хитрость трудно обнаружить, есть один верный признак – посмотреть на график сделок, подобный представленному на рисунке 4. Если вы видите много покупок на минимумах или продаж на максимумах, можете быть уверены, что здесь применялся мошеннический приём с лимитными ордерами, и данные результаты следует игнорировать.
Рисунки 3 и 4.
Лучшие советы, как защитить себя при покупке алгоритмической торговой системы
Распознавайте уловки продавцов алгоритмических торговых систем
Защищайте себя
Что вы можете сделать, чтобы защитить себя, зная три распространённые уловки, с помощью которых результаты торговых систем обычно получаются другими, чем было обещано? Вот несколько рекомендуемых действий:
Будьте скептичны: помните, что Святой Грааль не продаётся
Какой дурак станет продавать золотого гуся за несколько долларов? Разве не лучше оставить его себе и торговать, приближая финансовое богатство и лёжа на тропическом пляже? Прежде чем покупать торговую систему, задумайтесь об этом. С другой стороны, есть честные поставщики, которые продают системы с нормальными результатами и, скорее всего, используют их сами. Но кто захочет купить «нормальную», когда можно купить торговую систему, которая выглядит как «Святой Грааль»? Честные продавцы с хорошими системами тонут под грудой блестящего мусора. Странно, но обычно чем лучше выглядят результаты бэктестирования торговой системы, тем хуже она работает на реальном рынке!
Запустите торговую систему в режиме реального времени без настоящих денег
Многие чрезмерно оптимизированные торговые системы рушатся при форвардном тестировании. Возможно, для этого потребуется неделя или месяц, но в конечном итоге они потерпят крах. Поэтому, если вы хотите купить торговую систему, будьте терпеливы, прежде чем отдавать за неё реальные деньги. Понаблюдайте за результатами в течение 3-6 месяцев и внимательно отслеживайте её эффективность. Потом вы будете рады, что протестировали её.
Торгуйте малым размером и проверяйте совпадение исполнения сделок
Если вы беспокоитесь о чрезмерно оптимистичном исполнении, что часто случается со скальпинговыми системами, вы можете открыть несколько сделок на реальном счете. Одновременное наблюдение за результатами реальной торговли и работой стратегии в режиме реального времени поможет вам раскрыть тайну оптимистичного исполнения сделок. Такой ограниченный тест обычно является небольшой платой за раскрытие истины.
Разрабатывайте свои собственные системы
Если у вас есть возможность и желание, то лучшим решением будет разработка своей торговой системы. Это единственный способ, который я сейчас использую. Конечно, необходимо создать правильный процесс, иначе вы допустите одну из сотен ошибок разработки, которые совершают неопытные трейдеры. Но если всё сделать правильно, вы сможете создавать одну хорошую торговую стратегию за другой.
Сосредоточьтесь на убытках
При принятии почти каждого решения в жизни люди склонны фокусироваться на позитивных сторонах и минимизировать отрицательные. Подумайте о ситуации с покупкой дома. Что привлекает вас прежде всего? Обычно это внешний вид, и если первое впечатление благоприятное, вы будете минимизировать все его недостатки, например, какой ремонт потребуется внутри этого дома.
То же самое касается и алгоритмических торговых систем или стратегий. Большинство людей склонны сосредотачиваться на доходности или, возможно, на проценте прибыльных сделок, и если всё выглядит хорошо, они будут приуменьшать недостатки этой системы, такие как просадка. Для тех, кто не знает, «просадка» – это сумма денег, потерянная от наивысшей точки капитала. Это может быть временный убыток, но вы должны будете выдержать его, если торгуете по системе. Лучше всего иметь малые просадки, но они обычно связаны с низкой доходностью (аналогично низким процентам на банковском счете).
При выборе автоматизированной торговой системы ваше внимание должно быть сосредоточено на риске, связанном с убытками. Просадка – это отличный способ измерить данный риск.
Хорошие способы сосредоточиться на убытках:
1. Убедитесь, что история торговли, которую вы видите, действительно принадлежит системе, которую вы покупаете. К сожалению, есть масса глупых разработчиков, которые вносят значительные корректировки в алгоритмическую систему в ходе её создания, но утверждают, что это та же самая система! Следовательно, когда вы смотрите на кривую капитала, вы видите комбинированные результаты двух или более систем. Это в лучшем случае нелепо, а в худшем – вводит в заблуждение и неэтично.
2. Перед покупкой узнайте, какой была историческая максимальная просадка данной системы, и умножьте её на 1,5. Сможете ли вы справиться с таким убытком? Если нет, то не следует её покупать. Выполняя этот расчёт, обязательно учитывайте размер позиции.
3. Если у вас есть возможность, выполните моделирование всех сделок по методу Монте-Карло и посмотрите, что из этого получится. Моделирование по методу Монте-Карло (доступно на моей странице «Калькулятор») – это методика, которая вводит фактор случайности в будущие торговые результаты. Поскольку прошлое никогда в точности не повторяется, это хороший способ смоделировать возможные будущие результаты. Вы сможете увидеть просадки с точки зрения вероятностей. Например, вы можете обнаружить, что торговая система X имеет шанс 50%, что в течение первого года просадка составит более 30%. Такая серьёзная просадка может произойти, а может и нет, но суть в том, что у вас будут более точные данные, на которые можно опираться.
4. Перед тем, как купить алгоритмическую торговую систему, определите свою точку выхода и придерживайтесь её. Вы должны рассуждать следующим образом:
«Я проверил данную торговую систему у разработчика – он не вносил в неё изменений с момента её создания. Проверка его сделок подтверждает тот факт, что она торгует так же, как всегда. Его независимо проверенные результаты показывают 20%-ю просадку. Гипотетическая история производительности торговой системы у этого разработчика показывает 25%-ю просадку, а симуляция по методу Монте-Карло показывает 50%-й шанс максимальной просадки в 30% в течение первого года. Следовательно, я возьму худший случай из всех и умножу результаты на 1,5. Это даст 1,5*30 = 45%-ю просадку, к которой я должен быть готов. Данная просадка для меня является слишком большой, поэтому мне нужно либо добавить капитал на свой счёт, либо не торговать этой системой. Анализируя полученные результаты, я прихожу к выводу: если я удвою свой начальный капитал, я получу очень хорошую доходность и смогу выдержать просадку в 22,5%. Если эта просадка произойдёт, я прекращаю торговлю – без вопросов. В ином случае я придерживаюсь данной системы!»
Суть в следующем: не соблазняйтесь заманчивой привлекательностью чистой прибыли или нормы доходности. Копайте глубже и смотрите на потенциальный риск, особенно на просадку. Это требует бо́льших усилий, но в трейдинге нет лёгкого пути. Те, кто пытается найти лёгкий путь, обычно теряют свои деньги.
Заключение
Покупка торговой системы чаще всего является плохой идеей, особенно если вы знаете этого поставщика только по кривым капитала в его рекламе. Большинство поставщиков торговых систем – либо трейдеры-неудачники, либо трейдеры-новички. Они зарабатывают деньги на продаже торговых систем, а не в трейдинге. И они используют множество хитрых уловок!
После 30 лет в мире розничной торговли я пришёл к выводу, что единственный правильный путь – это создание своих собственных торговых систем. Хотя вам всё равно придётся остерегаться тех же трюков, которые используют продавцы, чтобы продать свой мусор, но как только у вас будет проверенный процесс разработки, включающий надёжные методы, вы будете гораздо ближе к тому, чтобы стать успешным трейдером, чем если бы вы полагались на какого-то продавца сомнительной торговой системы. Другими словами, ваш успех в трейдинге будет зависеть от ваших способностей, а не от мнимого успеха поставщика торговых систем.
Переведено специально для TLAP,
Кевин Дж. Дэйви
