Зарабатывающая идея реального форекс-робота

форекс робот советник

Вступление

В этом тексте (опубликован на Хабре в сентябре 2015 года за авторством программиста-разработчика Алексея «Asmodeux» — прим. редакции) описана зарабатывающая идея реального форекс-робота (советника). На реализацию отказоустойчивого алгоритма торговли от точки компетенции, описанной в статье, у автора ушло два года и «несколько моментов творческого озарения». Тесты, пруфлинки и стейтменты прилагаются. Смотрим.

От редакции: свои соображения по поводу высказанных идей оставляем в комментариях.

Математики и программисты против коллективного разума

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

Похожая статьяАндрей Мовчан: «Вы никогда не заработаете на алготрейдинге» Речь пойдет не о чудесных Граалях, продаваемых в интернете, не о высокочастотной торговле и не о «безрисковых» вложениях в мифические ТОП-20 лучших трейдеров. Только хардкор: мы проводим многочисленные торговые операции, кто-то вручную, кто-то ― автоматически, и получаем в результате этих операций положительный прирост счета при статистически значимом количестве сделок.

Люди поступают рефлекторно, и рефлексы одинаковы у всех. Приобретенные рефлексы также записываются у всех одинаково. Любой торговец, торгует он на Форекс или на товарной или фьючерсной бирже, учится на своем опыте, а чаще хуже ― пытается дополнительно почерпнуть что-то из умных книг, таким образом быстрее перенимая «лучшие практики» мира спекулянтов.

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

Технически подкованные спекулянты используют различные средства автоматизации ― нейронные сети, алгоритмы принятия решений, а то и просто голые методы управления капиталом, такие как мартингейл, например. Независимо от выбранного способа построения торговых правил, всех разработчиков торговых алгоритмов (стратегий) объединяет одна цель ― заработать денег. Но цель эта искажается при постановке задачи: делать ставки, которые будут угадывать как можно чаще. В этом и заключается безнадежная ошибка построителей торговых граалей ― угадать невозможно.

Многие трейдеры люто поспорят со мной, но я отважусь высказать мнение, что попытка научиться «угадывать» больше чем в 50% случаев на основании любого объема исторических данных (прежнего опыта), чутья или технического или фундаментального анализа обречены на неудачу. Просто в силу того, что график цены отображает случайный процесс с соответствующим распределением исходов.

Нельзя угадать результат случайного процесса. Может повезти или нет, но итог будет один ― при разумном управлении капиталом каждая сделка в среднем будет уносить сумму, равную накладным расходам на сделку (спред, комиссия, проскальзывание и т.д.). Имеется в виду статистически значимое количество сделок ― истории о двух годах прибыльной торговли при сотне–другой–третьей сделок могут говорить только о везении. Да, на миллионы трейдеров всегда найдутся десятки везунчиков с историями успеха. Проследите, что будет с ними еще через столько же сделок, и увидите, как гармония возвращается в жизнь.

Может показаться, что я пытаюсь поставить крест на идее заработка на Форекс в принципе, но ― нет! Однако следует отказаться от желания «угадать» в пользу желания «заработать».

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

график №1

Но это ― результат внешнего воздействия. Гораздо интереснее другое: даже при наличии «хвостов» распределение вероятностей настолько близко к нормальному, что заработать на знании о хвостах не получается. То есть не удается покрыть даже заявленные брокером накладные расходы, не говоря уж о реальных затратах, включающих расширения спреда, исполнения по худшей цене и т.д. Скрытый текст ниже экспериментально подтверждает бесперспективность хвостов.

Да, есть некий перекос, но совокупный разум спекулянтов своими действиями как бы приводит распределение к нормальному. Вот здесь и появляется возможность заработать!

Если взять все лекала, которые используют трейдеры, и обобщить их в некий усредненный набор шаблонов для принятия торговых решений, то обнаружится удивительная вещь: вся огромная масса трейдеров действует одинаково, с брутальным упорством совершая одни и те же, скажем так, ошибки.

лекало

У каждого из нас в школе был набор подобных вещиц. При всей неправильности и нелогичности их форм, обводить эти фигурки карандашом очень легко и приятно. Сложнее будет подстроиться и точно скопировать уникальные загогулины произвольного рисунка. Для создания же новых осмысленных форм они практически непригодны. Лекала профессиональных трейдеров намного проще представленных выше фигур, они прямолинейны и имеют всего два–три изгиба ― трейдер быстро привыкает к ним и никогда уже им не изменяет.

Прелесть шаблонов поведения спекулянтов в том, что они имеют всего одну степень свободы ― вертикальное движение от одного уровня цены до другого. Уровни имеют «магическое» свойство ― они дают человеку иллюзию понимания происходящего в данный момент, провоцируя его на конкретные действия. Остальные параметры реального рынка (время, торговый объем и т.д.) не дают таких четких ориентиров, как уровни, поэтому имеют сравнительно слабое обучающее влияние на шаблоны поведения.

график №2

График в левой части рисунка показывает типичную рыночную ситуацию. Цена подходит к уровню предыдущего максимума (верхняя штриховая линия), а трейдеры всего мира стоят перед выбором: купить или продать в этот момент? Момент на рисунке обозначен красным кругом.

Статистически вероятность достижения ценой предыдущего минимума равна вероятности достижения симметричного уровня выше текущей точки (см. правую часть рисунка).

Протестируем кое-что

Проверка равновероятности достижения симметричных уровней и бесперспективности хвостов.

Узнать подробности

Для тестирования на исторических данных напишем простейшего робота, который будет открывать сделки при пробитии «канала»: диапазона цены, ограниченного штриховыми линиями на картинке выше. Закрывать сделки робот будет при достижении одного из симметричных уровней ― противоположной границы канала или равноудаленной от нее линии сверху.

Если вероятности достижения уровней не 50/50, то мы будем получать какой-то определенный финансовый результат на ощутимом множестве сделок ― положительный или отрицательный. В частности, если упомянутые выше «хвосты» действительно не укладываются в нормальное распределение, то открытие на пробое канала наружу будет приносить устойчивую прибыль.

Ниже приведены результаты серии тестов на исторических данных для двух вариантов условной комиссии брокера: 1 пункт (слева) и 7 пунктов (справа). Для справки: 7 пунктов ― это минимальная, заявляемая в рекламе, комиссия брокера форекс по самой ликвидной паре EURUSD; реальные же значения отличаются минимум в 2 раза и составляют от 14 до 27 пунктов.

график №4

Робот был запущен на различных периодах графиков цены, чтобы получить серию независимых испытаний на истории котировок за 15 лет. В ходе каждого теста просчитано от 4000 до 15500 сделок (чем больше период графика, тем меньше сделок успевает открыть робот).

Для тестов с комиссией 1 пункт мы имеем средний коэффициент прибыли (Profit factor) 1,008. На одной из картинок при этом график баланса имеет ярко выраженный тренд, а общий микроскопический перекос идет в сторону прибыли. Испытания в условиях идеального брокера дают коэффициент прибыли 0,992. То есть влияние отклонения распределения вероятностей от нормального настолько мало, что заработать только на знании о его существовании не получится.

Обратите внимание, что чем больше сделок совершает робот, тем сильнее прибита вниз кривая баланса, особенно это заметно на нижнем правом графике ― 15500 сделок с комиссией 7 пунктов неузнаваемо изменили результат в сравнении с условно нулевой комиссией (нижний левый график).

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

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

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

Если точнее, заранее известно две цены выхода: для прибыльной и убыточной сделки. На форексе большинство трейдеров закрывают прибыльную сделку достаточно быстро, не накапливая прибыль, но готовы терпеть убытки и не закрывать позицию вплоть до полной потери депозита.

Кое-какая инфографика

Доказательство несимметричности сумм прибыльных и убыточных сделок.

Узнать подробности

На рисунке приведены количество и суммарная прибыль сделок для разных размеров выигрыша. Сумма выигрыша измеряется в пунктах. По горизонтальной оси отложены суммы выигрышей: от 0 до 5 пунктов, свыше 5 до 10 пунктов, свыше 10 до 20 и т.д. То же самое для проигрышей.

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

график №5

Из рисунка видно, что убыточных сделок в два раза меньше прибыльных, но суммы их вполне уравновешены. Разница обусловлена накладными расходами, которые составляют около 15 пунктов на сделку. Пики количества сделок и, особенно, сумм выигрыша/проигрыша заметно несимметричны: убыточные сделки гораздо длиннее, что и требовалось доказать.

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

график №3

Зарабатывающая идея состоит в том, что между этими двумя зонами часто возникает некая непустая зона (далее ― Нейтральная зона), попав в которую, цена неизбежно пройдет ее всю. Это произойдет потому, что отложенные ордера, которые фиксируют убыток в красной зоне, «притянут» к себе цену. Помните, выше я заявил, что действия трейдеров корректируют распределение вероятностей? Это гипотеза, которую я проверил на практике ― она реально работает, и вы можете сразу этим пользоваться! (Я потратил 5 лет на вывод и доказательство этого.)

Исходя из вышесказанного, если мы фиксируем прибыль или убыток между зеленой и красной зонами, то мы работаем чуть лучше среднестатистического спекулянта, а поскольку спекулянт работает в 0 (без учета комиссии брокера), то мы работаем в плюс.

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

"Покажи стейтмент!"

Издевательское приветствие, принятое в среде трейдеров, когда требуется реальное подтверждение неких заявлений.

Узнать подробности

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

стейтмент

Счет был изначально пополнен на 3000 USD, после чего из него постепенно выводили прибыль, выведя всего 14500 USD. Максимальный временный проигрыш составлял 86% от остатка средств на счете ― это результат самой длинной полосы «неугаданных сделок», по окончании которой положительное мат. ожидание вывело счет к новым вершинам доходности. Кстати, расчетный максимальный проигрыш, при котором еще возможна нормальная работа системы, ― 95%.

Усредненная картина по сделкам (6920 штук на момент написания статьи) — ниже:

стейтмент №2

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

Вот свежая картинка того же счета на 24 февраля 2018 года (2430% —> 11998%):

стейтмент №3

Теперь вернемся к шаблонам поведения спекулянтов, которые позволят нам лучше выделить нижнюю границу зеленой зоны (где мы будем фиксировать убыток) и верхнюю границу красной зоны (там следует фиксировать прибыль). Рынок постоянно меняется, работает с разной амплитудой, разной ликвидностью, разной напряженностью его участников и т.д. Но механизм принятия решений участником рынка не меняется, будь то человек или торговый робот, который всего–навсего позволяет человеку быстрее выплачивать комиссию своему брокеру. Это относится и к высокочастотному трейдингу тоже (фронт–раннеров и прочих мошенников мы в расчет не берем).

Так вот, участник рынка корректирует свое видение ситуации, основываясь на прежнем опыте, причем более свежие эпизоды имеют большее влияние на его решения. Шаблон поведения един, но его параметры постоянно плавают в небольших пределах, корректируются в свете последних событий. Под этот процесс необходимо подстроиться, учитывая минимально достаточный набор исторических данных. Если анализировать много данных, то мы получим большой объем вычислений при ничтожной полезности значительной их части.

Самый важный момент при работе с шаблонами ― они имеют кумулятивный эффект, поэтому, выбрав для работы определенный временной интервал (например, период 50 баров на пятиминутном графике), необходимо четко отрабатывать каждое совпадение шаблона, не пропуская ни единой возможности.

Физический смысл предыдущего абзаца, если очень упрощенно, таков: каждая корректировка шаблона в голове спекулянта происходит с учетом нескольких прошлых корректировок, и иногда шаблон изменяется радикально. Злость или эйфория по разные стороны баррикад (у купивших и продавших) накапливается, и временами общий психоз очень выгодно расширяет Нейтральную зону. Такие случаи нельзя пропускать!

Похожая статьяКак устранить конфликт интересов в любой форекс-компании Кстати, огромная масса трейдеров рассматривает рынок в разных масштабах, поэтому то, что мы видим на нашей картинке, является лишь незначительным эпизодом в более крупном плане, который, в свою очередь, тоже является фрагментом большой картины… И так далее. Поэтому очень важно рассматривать строго ограниченный участок графика, а также до предела его упростить (нет времени, нет объемов, нет изгибов и прочего, а есть только несколько уровней, обозначенных локальными экстремумами).

Шаблон, работающий на выбранном нами участке, будет так же работать в любом другом масштабе, и тогда всё, что нам остается ― делать много-много сделок и зарабатывать.

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

В следующей статье, если она появится, я расскажу о реалиях и предрассудках Форекс (и не только его); почему вы не станете сразу долларовым миллионером, даже имея прибыльную торговую систему; что нужно принимать во внимание, если вы отважитесь пытаться заработать в этой индустрии развлечений, и кое–что еще. Спасибо за внимание!

Оригинал статьи.

Оставить отзыв

 

Отзывы к записи:

На данный момент отзывов к этой записи нет. Ваш комментарий может быть первым.

наверх