Просматривая статьи на страницах нашего форекс блога, которые, так или иначе, касаются алготрейдинга, я пришел к выводу, что полную картину об этом замечательном виде торговли по той информации, что представлена, составить довольно нелегко. Не хватает многих кусочков, элементов, без которых невозможно понять полную картину и многообразие мира алготрейдинга.
Поэтому я и поставил себе задачу в цикле статей упорядочить весь материал и заполнить те самые информационные бреши. По моему замыслу на выходе должно получиться полное руководство для желающих заняться таким увлекательным и многообразным, но отнюдь не простым делом, как торговля при помощи автоматических торговых систем. Многое из того, о чем я хотел бы рассказать, уже написано на страницах этого блога. Материал я дублировать не буду, но буду оставлять ссылки на нужные статьи в тех местах, где знания, находящиеся в них, могут потребоваться. Также в некоторых случаях я просто буду дополнять ранее написанное.
Начнем ?
Что такое алготрейдинг?
Итак, начнем с самого простого. Что же такое алготрейдинг? На данный момент существует громадное количество, в том числе совершенно нелепых и невероятных, мифов об алгоритмических системах. Например, некоторые совсем далекие от торговли люди считают, что существует огромный с пятиэтажный дом компьютер, который подключен к интернету, и, читая все новости мира и одновременно их переваривая, делает ставки на рынках. Что он настолько умный, что просто угадывает будущее.
Алготрейдинг – это некий стиль торговли на финансовых рынках, при котором некоторый торговый алгоритм, который включает в себя правила открытия, закрытия и сопровождения позиции, расчета объема позиции и прочих, реализуется программным путем, подключается к источнику данных и общается с сервером посредством торговых запросов (все это мы более подробно разберем позднее). Если выражаться проще – трейдер формулирует правила своей торговой системы, тестирует и настраивает ее, а затем автоматическая торговая система работает на рынке уже без непосредственного участия трейдера, которому остается только следить за эффективностью ее работы.
То есть основная задача алготрейдинга сводится к точному исполнению сигналов собственной системы. Отсюда и второе название данного подхода — трейдинг с использованием механических торговых систем (МТС). На форекс их называют советниками. Название алготрейдинг мне нравится больше, так как оно сразу указывает на суть подхода – торговлю на основе алгоритма. Термин «механический» означает последовательное исполнение всех сигналов торговой системы вне зависимости от собственного суждения о текущей ситуации на рынке. Также следует отметить, что термин механическая торговая система не означает автоматическая торговая система, которая сама совершает сделки на рынке без участия человека или с минимальным участием. Механическая торговая система вполне может быть и ручной.
На чем же основывается этот стиль торговли, какие его основные идеи? Во-первых, будущее угадать нельзя. Оно для простых смертных сокрыто. Во-вторых, рынок или цены на финансовые инструменты представляются некой случайной системой, и каждая следующая цена случайным образом может оказаться выше или ниже предыдущей, и предсказать это невозможно. В-третьих, алготрейдеры или квантовые трейдеры (quants) работают только с вероятностью попадания будущей цены в тот или иной диапазон, базируясь на неких правилах или расчетах, сделанных на анализе предыдущего ценового ряда одного или нескольких финансовых инструментов. При этом эти правила могут быть постоянными, а могут сами меняться со временем вместе с изменением рынка. То есть они ищут постоянно повторяющиеся зависимости на исторических данных, которые с определенной долей вероятности могут повторяться в будущем. В-четвертых, сама суть алготрейдинга и алгоритмических исследований заключается в подборе этих самых правил или семейств роботов. Подбор может быть ручным – с использованием неких математических или физических моделей, может быть автоматическим – с использованием перебора правил, а может быть еще и генетическим, когда правила изобретаются самим компьютером.
Все остальное, что вы слышите об алготрейдинге как о системах предсказаний, является вымыслами и фантастикой: будущее предсказать нельзя.
Так, например, у мировых лидеров алготрейдинга, таких как Citadel, Renessaince Technology или Virtu, в работе используется более 100 различных торговых правил (семейств) на 1000-3000 финансовых инструментах, что приводит к ежедневной прибыльности. Например, у некоторых фирм нет ни одного убыточного дня в течение довольно длительных периодов.
Как же подбираются и проверяются торговые правила или семейства роботов? На первом этапе трейдер создает свою механическую торговую стратегию. Тестирует ее на исторических данных для понимания уровня доходности данной стратегии. Тут мы подходим ещё к одному важному моменту: роботов можно подбирать только на реальных исторических рыночных данных. Невозможно придумать виртуальные или искусственно сгенерированные рыночные данные, так как именно в исторических данных содержатся все выводы и реакции огромного количества участников рынка, характеризующие именно тот момент времени, когда трейдеры и компьютеры делали ставки. Это то же самое, как например, невозможность создать искусственно сгенерированный прогноз погоды на 5 лет, так как погода меняется хаотически в зависимости от разных меняющихся окружающих условий. Поэтому роботы подбираются только на исторических данных, и работа их, опять же, может быть проверена только на исторических данных. При этом, естественно, нет никакой гарантии прибыльности каждого отдельного робота в будущем, но есть только вероятность его прибыльной работы. Если уровень доходности устраивает, то трейдер переходит к тестированию в режиме реального времени на минимальном капитале или используя демо-счет.
Что важно еще понимать про работу алгоритмов – это то, что у каждого из них есть параметры, которые, собственно, и отличают одного робота от другого даже в одном семействе. Параметры – это некие численные характеристики торгового правила – период индикатора или некий порог волатильности, при превышении которого робот начинает или останавливает работу. Подбор параметров – это неотъемлемая часть исследовательского процесса, и существует огромное число вариантов, как это делать. Для простоты можно сказать, что основным методом является простой перебор разных чисел и оценка результата работы робота для каждого набора параметров на некотором промежутке в прошлом (называется «in – sample» и проверка его работы на следующем промежутке «out – of – sample»).
Следует отметить, что уровень доходности, который дает торговая система является не единственным критерием оценки эффективности данной стратегии, но это уже тема отдельного разговора. Критерием оценки качества робота обычно являются показатели абсолютной прибыли или доходности, коэффициент Шарпа или коэффициент доходности на максимальную просадку, число сделок, а также их комбинации и много других показателей, которые мы обсудим позже.
Алгоритм торговой стратегии должен быть записан на специальном языке программирования, чтобы осуществить тестирование алгоритма на исторических данных и в дальнейшем использовать для создания сигналов открытия-закрытия позиций в специализированной программе технического анализа. Для валютного рынка, к сожалению, альтернатив не так уж и много – это или Metatrader, или Metatrader. Либо четвертая, либо пятая версия, на которых мы позже остановимся более подробно.
Можно с уверенностью сказать, что у каждой алгоритмической фирмы, работающей в этом направлении, много лет все эти подходы постоянно совершенствуются, и как в огромном замке, при открытии очередной двери, исследователь тут же видит следующую.
Хочу еще раз подчеркнуть: как вывод из вышеизложенного, алготрейдинг – это не миф и не чудо. Это такая же научная работа, как изобретение новых материалов или лекарств, это такой же научно-исследовательский и производственный процесс, как и другая деятельность человечества. Сколько бы люди не искали грааль или способ превращения металла в золото – их нет, как и нет роботов, предсказывающих будущее.
Так ли просто зарабатывать с помощью роботов?
Но раз над разработкой торговых систем работают целые группы программистов и ученых, какие шансы у обычного человека, такого, как мы с вами, преуспеть в этом бизнесе? О том, что шансы есть, говорят живые на протяжении долгого периода времени мониторинги автоматических торговых систем, например:
Тем не менее, многие системы, за которыми я следил и которые были запущены 4-5 лет назад, уже перестали существовать. Я бы сказал, примерно 99% из них. Поэтому, если вы видите неплохой мониторинг длительностью 2-3 года, это, к сожалению, еще не говорит о том, что завтра этот мониторинг так же будет существовать, как например, тут:
По моим наблюдениям, ни одна система, использующая мартингейл или сеточную торговлю, не закончила свое существование снятием всего профита. Конец всегда у таких систем один – кочерга. Также не выживают на длительном периоде времени стратегии, основанные на некоторых временных свойствах торгуемого инструмента. Не все вспомнят, но в 2009-2012 годах популярны были боты, торгующие только покупки на золоте. По канадцу вроде бы тоже были роботы схожего принципа.
К какой мысли я хочу вас подвести? Чтобы зарабатывать при помощи роботов вам придется разбираться в их устройстве и принципе работы. Хотя бы для того, чтобы отличить хлам от возможно потенциально неплохого робота. Пока же я вижу, как популярностью пользуются любые роботы, которые продержались на мониторинге хотя бы пару лет. При этом даже если сам принцип работы такого бота предусматривает временный характер его эффективности. Очень важно понимать, что есть такие стратегии, которые показывают шикарные результаты за короткий период, но в долгосроке обречены на провал. Такие стратегии сродни гэмблингу, где конечный результат неизвестен. Как у игрока в рулетку, который верит, что может в любой момент забрать свою прибыль, но приходит снова на следующий день и оставляет таки весь свой выигрыш казино, такой подход к торговле не имеет смысла. Ну то есть смысл то он имеет – такой же, как для того самого игрока в рулетку.
Конечно, создать долгосрочную прибыльную торговую систему очень нелегко. Фонды тратят на разработку таких систем миллионы долларов в год. Это требует много сил и времени, понимания и знания, бесконечных поисков новых алгоритмов и совершенствования старых.
И все же, мы видим мониторинги систем, которые приносят прибыли своим владельцам более пяти лет. Мы же хотим так же, поэтому почему бы не проанализировать мониторинги этих систем? Что довольно интересно и поучительно – ни одна из таких систем не является пипсующей (системы с профитом на сделку менее 10 пунктов). Также мы видим, что средняя продолжительность сделки этих систем составляет не менее 5 часов и вплоть до 6 дней со средней прибылью в 30 пунктов. И что занимательно, ни одна из систем-долгожителей не использует классическое всюду навязываемое отношение риска к профиту 1:2 или 1:3 и выше. В среднем риск к прибыли колеблется от 1:1 до 2:1, а количество прибыльных сделок от 65 до 85%. Кроме того, отношение годовой прибыли к просадке у многих этих систем редко поднимается выше 2:1. То есть практически все основные параметры систем, которые прожили пять лет и более, нарушают устоявшиеся «классические» правила. Это не значит, что классика нынче совсем не работает – эти правила были придуманы для оценки работы систем на фондовых рынках. Рынок форекс немного другой, поэтому классические стандарты для рынка акций должны быть пересмотрены для оценки роботов, торгующих валютами. Некоторые из вышеперечисленных моих выводов также косвенно подтверждает и эта статья:
Соотношение прибыли к риску – действительно ли это важный показатель ?
Есть ли у обычного алготрейдера преимущества перед мощными громадами, такими как фонды?
Чтобы найти преимущества трейдера, надо найти недостатки фондов. Вследствие природы институциональной нормативно-правовой базы, организационной структуры и необходимости поддержания отношений с инвесторами, фонды страдают от некоторых недостатков, которые не затрагивают розничных алгоритмических трейдеров. На фонды наложены важные нормативные ограничения, что приводит к определенному предсказуемому поведению, которое могут использовать розничные трейдеры. «Большие деньги» двигают рынки, и можно придумать много стратегий, чтобы этим воспользоваться. Но я хотел бы остановиться именно на относительных преимуществах, которые есть у алгоритмических трейдеров по сравнению с многими крупными фондами.
- Розничные трейдеры обладают большей свободой для торговли на небольших рынках. Они могут получать значительную доходность в этом пространстве, даже когда институциональные фонды не могут.
- Фонды страдают от «обмена технологиями», поскольку текучесть кадров может быть высокой. Соглашения о неразглашении информации и об отказе от конкуренции уменьшают проблему, но она по-прежнему приводит к тому, что многие количественные фонды «охотятся за одной и той же сделкой». Капризное настроение инвесторов и «очередная горячая тема» усугубляют проблему. У розничных трейдеров нет ограничений на стратегии, которые они могут отслеживать, то есть они могут быть не скоррелированы с более крупными фондами.
- Ввиду низких капиталов розничных трейдеров их сделки практически не оказывают никакого влияния на рынок
- Розничные алгоритмические трейдеры часто используют подход к управлению рисками, отличный от используемого более крупными количественными фондами. Часто в контексте риска выгодно быть «маленьким и быстрым». Важно то, что не существует бюджета управления рисками, возлагаемого на трейдера за исключением того, который он сам на себя возлагает, и также не существует отдела по контролю соблюдения норм или отдела управления рисками. Это позволяет розничным трейдерам задействовать специальные или предпочитаемые методологии моделирования риска без необходимости следовать «отраслевым стандартам» (подразумеваемое требование инвестора).
- В розничной торговле трейдер беспокоится только об абсолютной доходности. Нет требований к выходу из просадки. Розничные трейдеры также могут позволить себе более волатильные эквити.
- Для розничного трейдера нет требований обязательной отчетности. Кроме того, у них нет необходимости в предоставлении ежемесячных отчетов о результатах работы, или в «красивом оформлении» портфеля до того, как отправить информацию клиенту. Это большая экономия времени.
Чем же плоха ручная торговля, что многие задумываются над советниками?
В торговле руками есть и свои плюсы, и свои минусы. Но ракурс материала вынуждает меня сейчас поговорить только о минусах. Если же вы хотите услышать именно о плюсах ручной торговли по сравнению с алгоритмической, лично я их не вижу. Но вы всегда можете зайти в наш замечательный чат, где вам придумают пяток – другой или записаться на курсы какого-нибудь чудо брокера типа ММСИС. Итак, минусы ручной торговли:
Неверное понимание рынка.
Это не касается опытных игроков, скорее этим страдают новички. Каковы же причины? Их несколько: не научность литературы, гурупоклонничество, отсутствие серьезных исследований и научной базы. Очень многие труды по трейдингу написаны людьми далёкими от точных дисциплин, методологий верификаций знаний. Поэтому эти книги содержат ненаучные, или даже антинаучные знания. Знания, которые вводят читателя в заблуждение. Также книги, предназначенные для анализа рынков акций, не могут без некоторой модификации и тщательной проверке идей быть применимы к валютному рынку. Начиная свой путь в эту сферу, люди становятся заложниками этих фантазий – торгуют, основываясь на ложных рыночных парадигмах. Как нигде в другой области, в трейдинге распространено идолопоклонничество, сектантство, даже культ личности. Ведь как и в любом деле в котором часто сама жизнь зависит от принимаемых решений, слабые всегда стремятся переложить ответственность на другого человека. Очень часто это становиться причиной неправильных представлений о рынке. Попадая в “околорыночную секту”, человек утрачивает способность трезво мыслить. Толпа “верующих” захлёстывает разум, после чего человек начинает входить в позиции на основе знаний и прогнозов гуру. Если Вы понимаете как функционируют форумы “Эллиотчиков”, “Свечных аналитиков” или “следящих за куклом”, то это становиться грустно. Ибо таких людей очень и очень немало. В абсолютном большинстве источников (литературных, курсах обучения, видео-гайдах), которые претендуют на обучение человека трейдингу, его не учат искать рыночные неэффективности. Человеку не предлагается универсальный способ работы с информацией. В общем случае обучение сводиться к зазубриванию некоторых правил торговли, зная которые человек будет всегда «на правильной стороне». Подобный подход к обучению новичков плодит людей неспособных реагировать на новые обстоятельства и изучать предмет самостоятельно. Как результат всего вышеперечисленного, имеем у большинства торговцев проблемы с восприятием реальности. Как если бы водители на дорогах ездили с завязанными глазами или могли поворачивать только налево.
Психология
Многие люди очень часто не могут следовать своим же правилам. Иными словами, даже когда у вас на руках будет готовая и проверенная рыночная аномалия, или неэффективность, вы всё равно не сможете её правильно использовать. Человеческая психология создаёт здесь множество рисков. Ошибки неизбежны и значимы. Человеческий фактор огромен.
Физические ограничения организма
Процесс создания торговой системы со статистически значимыми результатами требует от человека огромных затрат энергии, времени, сил. Недели и даже месяцы уходят на тестирование своих торговых систем.
Да, на данный момент есть несколько различных решений, которые сокращают потраченное на тестирование торговой системы время. Почитать об этом можно в этих статьях:
Прокачай свои торговые навыки с TradeSystem2
Уроки по работе с программой Forex Tester
Тем не менее, даже использование подобного софта не избавляет трейдера от следующего недостатка.
Зависимость результата тестирования системы от личности трейдера.
Удачная или неудачная разработка торговой системы сильно зависит от самого трейдера, от его опыта, идей и торгового подхода. Когда вы тестируете новую торговую систему в том же Forex Tester, для вас может быть совершенно очевидным то, почему вот конкретно в эту сделку вы не вошли, а в ту вошли удвоенным лотом. А вот другой трейдер, тестирующий ту же систему по тем же правилам в первую сделку войдет, а вторую пропустит. В результате чьим тестам верить? Правильно, ничьим. Отсюда следует следующий недостаток.
Сложность повторения результатов торговли по системе.
Вот выложил человек свою систему на форуме, описал все правила торговли и показал свой красивый мониторинг. А его систему злые трейдеры опустили. Почему так произошло? Именно по той причине, о которой мы говорили выше – зависимость результата от трейдера. Причем, если у одного получается торговать по системе в плюс, а у другого нет, еще не значит, что тот другой трейдер недостаточно опытен или недостаточно хорош, или что он что-то не понимает. Просто его взгляды на рынок могут отличаться от взгляда первого трейдера, вот и все.
Несистемность.
И последний недостаток торговли руками – несистемность в создании своей торговой системы. Нет четкого алгоритма, технологии при создании торговой системы. Она зависит снова от личности трейдера и его опыта, взглядов на рынок и торговлю.
Самые серьезные недостатки на мой взгляд – последние два. Я знаю нескольких людей, которые уже не один год торгуют по своим собственным системам, но обучить, объяснить, как эти системы работают, у них не выходит. На собственном опыте знаю также, как это бывает, когда система перестает работать, а ты не знаешь, из-за чего и как это исправить.
Ну а теперь разберемся с достоинствами алготорговли
Прозрачное, научное, истинное понимание механики рынка.
У алготрейдеров есть ясное представление о движениях цены и устройстве рынка, иначе их алгоритмы бы попросту не работали. Научный подход к исследованию рынка гарантирует вам истинные представления о функционировании рынка. Это гарантируется использованием технических средств, а также статистически значимыми выборками во время поиска неэффективностей. Причем чем глубже вы погружаетесь в алготрейдинг, тем комплексней ваши познания о рынках.
Нет проблемы психологии.
На самом деле она все равно есть, ведь алготрейдер – тоже человек. Просто она перестает играть решающую роль в трейдинге и отходит на второй план. Да, боты не паникуют, не впадают в тильт и не переоценивают себя, в отличие от живых трейдеров. Но тот же самый живой трейдер сидит и наблюдает за их работой.
Исследование рынка техническими средствами
Алготрейдеру не нужно тратить свои деньги на исследование рынка или десятилетие учиться торговать, разглядывая графики, прежде, чем у него начнет генерироваться достойная прибыль. Исследование рынка для него – это использование специальных программ, которые делают за него всю работу быстро, качественно и достоверно. А это уже прямая экономия и денег, и времени. Конечно же, изучение подобных программ тоже требует времени. Иногда это занимает несколько лет. Но итоговые плюсы очевидны. Кроме того, подобный подход позволяет постоянно оставаться на “острие ножа”. Иметь в комплекте только рабочие, оттестированные стратегии. Своевременно перетряхивать портфель ботов и менять неэффективности, которые они используют. Это максимизирует время, которое Вы будете в плюсе.
Скорость
Одним из преимуществ использования роботов является скорость. Торговый робот может отслеживать десятки, сотни котировок, производить мгновенно сложнейшие вычисления, принимать решение и тут же выставлять заявки. Человек ни за что не сможет так быстро анализировать такое количество информации. Трейдеры, использующие в своей торговой системе большие объемы сложных вычислений, доверившие торговлю роботу получают преимущество перед коллегами, торгующими по-старинке. Трейдеры, которые не используют роботов, вынуждены сокращать количество торгуемых инструментов, увеличивать используемые временные интервалы (таймфреймы) и отказываться от перспективных, но сложных торговых систем.
Точность
Следующим положительным моментом использования торговых роботов является точность. Торговый робот не совершает ошибок (если конечно ошибка не закралась в код программы при ее создании), все входные и выходные данные могут рассчитываться с точностью до нескольких знаков после запятой, если это необходимо. Выставляя заявку, робот не наберет случайно лишний ноль и не поставит запятую не в том месте. Трейдеры, торгующие вручную, иногда могут ошибаться как в расчетах, так и при выставлении заявок.
Масштабируемость
Это, на мой взгляд, основной плюс. Если вы захотите добавить функциональности вашей торговой системе, вам потребуется лишь дописать код. Например, вы можете получать красивые отчеты и графики в любое время, вы можете настроить оповещения от робота по СМС, можно до бесконечности усложнять торговую стратегию. Вы можете создать сотни и тысячи торговых роботов и вся эта армия будет круглые сутки работать на вас. Торгуя вручную, вам придется тратить больше своего времени, если захотите расширить возможности своей торговли, или даже нанимать дополнительных помощников, либо отказываться от расширения деятельности.
Недостатки алготрейдинга
Сложность алгоритмов
Даже трейдеры с многолетней практикой и положительной историей хорошего соотношения прибылей к убыткам восприимчивы к внешним факторам. Вспомните, есть много историй, как известные трейдеры теряли свои депозиты. АТС же являются более прогнозируемыми в этом плане – их не хватит сердечный приступ, им не нужно беспокоиться о семье или внешней политике своей страны. Советник просто аккуратно исполнит все ордера согласно заложенному алгоритму без сожаления и колебания. Звучит, как плюс, но этот факт может обернуться и минусом. Если в алгоритме заложена ошибка или неточность, робот все равно будет бездумно открывать позиции, даже если они приведут к сливу депозита. Поэтому продуманность алгоритма очень важна, а она зависит уже от опыта самого алготрейдера. Тут как и в ручной торговле – неопытный трейдер теряет деньги, опытный зарабатывает. При этом, конечно, чем сложнее алгоритм, тем больше вероятность допустить ошибку. С другой стороны, чем сложнее алгоритм, тем меньше вероятности его повторения – по крайней мере со стороны ручных трейдеров. Эта мысль хорошо изложена в следующей статье:
Почему вы должны мыслить иначе, чем другие трейдеры
Недостаток информации
Еще одна проблема – недостаток литературы по обучению алготрейдингу. Некоторое заблуждение в процессе своих собственных изысканий и исследований может засесть очень глубоко и в конечном итоге оно будет обнаружено, когда существенное количество времени потрачено, к тому же оно будет оплачено живыми деньгами. При ручной торговле в этом смысле несколько легче – как правило ошибки и заблуждения обнаруживаются скорее рано, чем поздно.
Психология
Немного выше я говорил о том, что психология в алготрейдинге отходит на второй план, но все же присутствует. Так вот, часто алготрейдеры, особенно начинающие, начинают вмешиваться в торговлю своих советников. Тут встает вопрос доверия к своему роботу. Если ты своей разработке доверяешь, то можно ставить ее на реальный счет и ни в коем случае не вмешиваться в работу, пока не станет явно понятно, что была допущена ошибка при проектировании алгоритма. Но сидеть и смотреть, как тихонько день за днем сливает твой робот задача не из простых, даже если ты знаешь наверняка, что оно так и должно быть. Но, конечно же, наблюдать намного проще, чем если бы вам самим пришлось каждый день открывать по вашей системе эти самые убыточные сделки.
Так что же лучше – голова или хвост?
Я не стал писать про такой плюс автоторговли, как возможность тратить на нее 5 минут в день. Просто потому, что я знаю людей, которые торгуют столько же времени руками с прибылью ничуть не меньшей, чем если бы торговали советниками. Так что это ерунда и замануха. Основная же причина, почему лично я выбрал в свое время именно алготрейдинг заключается не в том, что совы работают круглые сутки без устали, не в том, что можно тратить всего 5 минут в день и не пялиться в монитор с утра до вечера. Основные причины – в психологии. Алготрейдинг лучше подходит моему характеру. Во-первых, я не могу терпеть просадки, когда торгую руками, не переношу убыточные сделки. Как я уже говорил, эмоции в алготрейдинге есть, но они намного слабее и довольно легко перебарываются. Во-вторых, мне нравится программировать и всегда учиться новому, исследовать и совершенствовать. Я больше склонен к аналитическому мышлению. Мне доставляет удовольствие обилие нового материала для изучения и упорядочивания, классификации и поисках вариантов последующего применения этих новых знаний в моих экспериментах. Ручная торговля лично для меня ассоциируется со стрессом, тогда как торгуя роботами я чувствую себя большую часть времени комфортно.
И действительно, у обоих подходов есть и свои плюсы, и свои минусы. Что же все таки лучше? Алготорговля сейчас стремительно развивается, количество открываемых роботами сделок неуклонно растет из года в год. Это создает все большую конкуренцию среди алготрейдеров и вынуждает использовать более сложные алгоритмы. Такая тенденция отлично прослеживается, если взглянуть на биржевые рынки. Barclay’s systematic trader index – это индекс доходности системных трейдеров:
Источник: Barclay
Как видно из графика, в среднем алготрейдеры с 2010 года находятся в просадке. То есть большая часть алготрейдеров льет. Как же дела у ручников?
Источник: Barclay
График показывает, что большая часть ручных трейдеров успела подстроиться под изменения рынка, в отличие от алготрейдеров. Вся сила алгоритмического подхода в поиске рыночных неэффективностей, круглосуточной работе, отсутствии эмоций оказались бессильны перед изменением рынков. Рынок изменился и многие алготрейдеры начали терпеть потери. Тем не менее, во время азиатского кризиса 1997-2001 годов ручные трейдеры явно чувствовали себя некомфортно, тогда как алгоритмы торговали более менее эффективно. Когда происходят сложные фундаментальные изменения на рынках, чаще всего именно люди торгуют лучше. В остальных же случаях более стабильным лично мне кажется именно алгоритмический подход. Так как же понять, что лучше? Очень просто. Можно просто сравнить график роста обоих индексов. Как видите, конечный результат примерно одинаков, но системный индекс растет более линейно, но просадки в среднем случаются чаще и они глубже, но менее длительные. Несмотря на некоторые очевидные различия этих двух графиков, видно, что оба подхода мало чем уступают друг другу. Поэтому при выборе торговать руками или при помощи роботов стоит руководствоваться личными предпочтениями. Иными словами, если написание кода у вас навевает скуку, алготрейдинг не для вас.
Так что же лучше делать с помощью роботов, а что оставить человеку?
Компьютеру доверим следующие задачи.
Высокочастотная торговля. Человек просто физически не способен совершать несколько операций в секунду, успевая делать при этом какие-либо расчеты.
Скальпинг. Люди безусловно могут скальпировать, но усталость, например, никто не отменял. Человек устает, внимание падает, эмоции накапливаются. Робот спокойно будет скальпировать 24 часа в сутки на 30 парах.
Системный технический анализ. В скорости и возможностях поиска различных паттернов и рыночных неэффективностей человеку с компьютером не сравниться.
Большие портфели. Когда у вас в работе 300-500 инструментов на периоде Н1, попробуйте эффективно их всех отслеживать. Особенно если это абсолютно разных 100 систем.
Статистический арбитраж. Когда человек десять раз сломает себе мозг над расчетами какого-нибудь десятиногого варианта арбитража, компьютер произведет все расчеты в считанные секунды.
Анализ больших массивов информации. Попробуйте при помощи поисковика в интернете найти скажем тысяч десять высказываний различных трейдеров о конкретной валютной паре и построить прогноз, проанализировав каждое из высказываний. Для компьютера это вполне посильная задача.
Без человека не справиться при решении следующих задач.
Анализ фундамента. Макроэкономические данные, высказывания политиков, анализ экономики различных стран. Чтобы это делал компьютер, нужно много кода. Очень много кода.
Субьективный теханализ. Слышали наверняка про то, что если десяти аналитикам дать один и тот же график и попросить нанести трендовые линии, они все в основном будут в разных местах. Так вот, это оно. Еще с волнами Элиота та же история (но мы все это позже еще обсудим). Так вот, компьютер так не умеет. Хотя, на мой взгляд, не очень то и хотелось.
Особые ситуации. Ну, например, позвонил вам уважаемый Владимир Владимирович, и говорит: Сынок, завтра ЦБ рубль опускать будет. Тут сможет достойно отреагировать только человек.
Любые ситуации, где сделка зависит от неклассифицируемых или не поддающихся анализу причин. Например, торговля по настроению или по расписанию маршруток на остановке за окном, по звездным орбитам, прогнозу погоды и так далее.
Долгосрочные торговые системы. Их стоит оставить человеку хотя бы потому, что он справится не хуже компьютера, а значит конкуренция и так велика.
При этом трейдеров мы можем разделить на четыре группы:
– Супер профи – у них есть и дисциплина, и знания
– Дисциплинированные, но нет знаний
– Есть знания, но нет дисциплины
– Нет ни знаний, ни дисциплины
Как вы думаете, трейдеры из каких групп могут зарабатывать деньги с рынка руками? Что-то мне подсказывает, что только из первой. Ну а при помощи алгоритмов? Конечно же, из первой группы, но еще и из предпоследней. Дисциплина не играет решающей роли. Но зато при торговле руками (если вы попадаете в первую группу), вы можете получать профит, несравнимый с профитом, который может дать алготорговля, особенно если делаете то, что компьютер сделать не в состоянии.
Покупка торгового робота – плохая идея
Итак, ручной трейдинг и алготрейдинг – два различных подхода к торговле на финансовых рынках, при этом в идеале они практически не переплетаются. Если вы всерьез заинтересовались алготрейдингом и хотите пойти «легким путем», просто купив себе торгового робота, сейчас я постараюсь рассказать вам, почему этого делать не стоит.
Прежде всего я советую вам ознакомиться со следующими статьями:
Платное форекс обучение — оно вам надо?
Вся правда о торговле советниками
Стоит ли покупать форекс советники?
Рынок торговли АТС действительно очень обширен. Если вас не убедили четыре статьи об околорынке выше и вы все еще сомневаетесь, приведу еще пару доводов против покупки чего бы то ни было в сети.
- Продавцы роботов часто заявляют, что именно их робот сделает из вашей 1к 10 миллионов без напряга. Зуб даюJ. Ну какой здравомыслящий человек станет продавать робота, если бы даже создание такого было бы возможно, за жалкие 300 баксов? Бедные фонды вкладывают миллиарды долларов в год ради доходности 100% годовых, а тут доморощенный финансовый гений продает за копейки робота, который делает 10 000% в год. Нестыковочка выходит, кто-то явно врет – либо фонды сговорились и вводят в заблуждение своих инвесторов, прикарманивая сверхприбыли, либо честный торговец с интересным ником anonymous.
- Еще торговцы часто любят придумывать красивые истории о создании своих ботов. Чтение таких историй порой неплохо заменяет просмотр камеди клаба. Я шел по улице и на меня упал кирпич, после чего я впал в кому на 5 лет. Все это время в моей голове мне читала лекции по программированию и финансам симпатичная девушка в бикини. Когда я очнулся, мне сразу же страшно захотелось что-нибудь написать. Я взял салфетку, проткнул иголкой свой палец и начал что-то писать на салфетке. Это оказался готовый алгоритм торгового робота, который я сейчас и продаю. Когда я его протестировал, я был в шоке. За прошлый год я заработал столько денег, что мне больше не нужно, поэтому я решил дат возможность заработать вам, честным трейдерам. Давайте вместе бороться против гнета проклятых ДЦ! Давайте разорим их вместе при помощи моего бота! (при заказе до 20 ноября супер-приблуда пулялка-доливалка в подарок! Осталось только 8 копий, спешите!)
Так или иначе, у продавца и покупателя разные интересы – продавцу нужна красивая кривая доходности для того, чтобы клюнуло как можно больше инвесторов. При этом его не особо заботит судьба покупателя после получения денег. В ход идет переоптимизация и подгонка под последний участок истории и прочие «грязные» приемчики. У покупателя же интерес – окупить покупку и заработать деньги. А чем красивей мониторинг, тем, как кажется инвестору, эта задача более выполнима, что по факту далеко не так. Самое примечательное в том, что желающие купить робота, на самом деле часто слабо представляют, что это такое. Большинство из них думает, что торговый робот — это автоматический игрок на бирже, который всегда приносит прибыль.
При этом, что самое забавное, большинство искренне верит, что робот, который принесет большую прибыль должен стоить дешево. Если Вы обратитесь к методикам оценки эффективности какого-либо бизнеса, то обнаружите, что, если бизнес обеспечивает возврат вложенных инвестиций за 3- 5 лет, то это хороший бизнес. В рекламах часто пишут, что предлагаемое оборудование (технология) окупается за один год или менее, но это лишь в рекламах. Таким образом, предположив, что мы с вами люди здравомыслящие, предлагаю следующую методику оценки стоимости робота, позволяющего получить желаемую прибыль.
Формула расчета стоимости робота очень простая. Стоимость такого робота равна утроенной годовой прибыли от суммы, которая вам необходима на пропитание. Вот нужно вам в год 500 т.р., значит такой робот стоит 1,5 млн. р. Нужно 3 млн. долларов в год, робот стоит 9 млн. долларов. А стоит робот 300 баксов – угадайте, сколько он вам за год принесет? Не верно, немного меньше сотни – примерно ноль.
- Я не знаю ни одного человека, который бы стабильно жил за счет профита от купленной АТС.
Ну честно, везде искал, на форумах, разных сайтах и блогах различных стран, у знакомых спрашивал и не нашел. Единственные люди, которые стабильно зарабатывает на коммерческих ботах – это их авторы и продавцы. А все, кто живет за счет ботов, разработали их себе сами.
- Я не знаю ни одной системы, которая дожила года этак с 2007 до наших дней.
Не важно, коммерческая или нет, но не видел ни одного мониторинга живой системы со стартом с 2007-2008 года. Все системы разрушаются в конце концов. Не бывает вечных систем, ни ручных, ни автоматических. А это значит, что либо вам придется очень часто (по штуке в квартал, например) покупать новых советников (и не факт, что все покупки будут хотя бы успевать окупаться), либо научиться уже писать их самому в конце-то концов! Качественная своя собственная сова способна жить до 5 лет, судя по мониторингам, выложенным выше.
Как обычно это делается? Нанимаются индусы или азиаты, которые за 1-2 тысячи баксов пишут систему, которая в тестах «смотрится неплохо», появляется сайт с кучей маркетинговой чепухи и делается фейковый мониторинг. Все готово для больших продаж!
В общем, я крайне не рекомендую вам покупать коммерческие системы, а если соблазн что-либо приобрести непреодолим, требуйте мониторинг торговой системы на реальном счете. В этом вам помогут следующие статьи:
Анализируем тесты торговых систем с помощью MyFxBook
Как проверить подлинность мониторинга на MyfxBook ?
Как просто создать фейковый мониторинг
Если же у вас уже есть готовая торговая система или есть желание ее создать, я рекомендую прочесть:
Зачем автоматизировать вашу стратегию?
Итак, надеюсь, к этому моменту я вас уже убедил, что алготрейдинг – это весело. Если же еще нет, вот вам последний аргумент в пользу алготрейдинга, после которого я начну вас отговаривать от этого занятия.
Доля автоторговли на форекс
Согласно исследованиям Aite Group доля алгоритмического исполнения заявок на Форекс по состоянию на 2010 год – около 24%. К сожалению, более новых данных я не нашел, но судя по тенденции этого графика вполне можно предположить, что на данный момент эта доля возросла до примерно 35-45%, может и выше.
Источник: Aite Group
Скальпинг и HFT на форекс на данный момент самые интересные направления. Большинство брокеров, предоставляющих услуги на Форекс, также дают возможность торговать через ECN (Electronic Communication Network) – электронная система торгов, подобная биржевой площадке, которая объединяет, в случае с Форекс, ведущих поставщиков ликвидности по обменным курсам валют — международные банки, корпорации, внешнеторговые организации.
Обратите внимание на этот график – процент алгоритмизированности рынка форекс все еще достаточно низок! А это значит, что пока у нас не так уж и много конкурентов, что по крайней мере лично мне прибавляет уверенности.
Распространенные мифы и заблуждения об алготорговле
- Успех в трейдинге на 90% зависит от психологии.
Как я уже говорил выше, психология не оказывает слишком сильного влияния на процесс алготрейдинга, в отличие от торговли руками. Даже при торговле руками, если ваша система сливная, то как бы вы ни боролись со своими эмоциями – вы сольете. А построить хорошую торговую ручную систему не такая уж и простая задача. А вот торгуя советником не сильно подготовленному психологически человеку гораздо проще. Если только он конечно не совсем неуравновешенный (надеюсь, среди нас таких тут нет).
- Алготрейдинг не работает.
Да, при всех представленных фактах большое количество людей считают, что роботы не способны зарабатывать. Дико, но факт. Barclays systematic trader index показывает отличный пример того, как алготрейдеры стабильно получают профиты на протяжении более двадцати лет. Алготрейдинг с реалистичными ожиданиями доходности и просадок с правильным, адекватным пониманием, как работает рынок – вполне прибыльный бизнес.
Как частный случай такого заблуждения можно считать мнение о том, что вообще системная торговля в принципе не работает.
- Тестирование не работает.
Периодически слышу такое высказывание в интернете, в том числе у нас на форуме. Тестирование – это очень важный элемент алготрейдинга, который помогает понять, как вела себя конкретная стратегия в прошлом. Тем не менее тестирование имеет ряд ограничений и особенностей без понимания которых оно действительно бесполезно. Да, тестирование не работает, если вы не понимаете, что вы делаете и как провести тестирование системы с удовлетворительной точностью. Но в случае, если вы знаете и прекрасно понимаете, что вы делаете, тестирование вещь незаменимая.
- Сетки и мартины работают.
Да, эти типы систем действительно работают, но не слишком долго. Как правило, не настолько долго, чтобы трейдер успел вывести свой депозит перед сливом. Особенно опасны системы, которые умудрились не слиться хотя бы пару лет. На паммах они набирают не одну сотню тысяч долларов, прежде чем благополучно слиться. Как правило инвесторы либо не понимают, чем они рискуют, либо понимают хорошо, но надеются, что именно с ними этого не произойдет, что именно они почуют заранее момент слива и успеют вывести свой капитал и существенную прибыль. Если же все-таки хотите испытать свою удачу, то хотя бы прочтите вот эту статью:
9 правил успеха в работе с «опасными» советниками
Основные настройки мартингейл советников
- Индикаторы не работают.
Сейчас очень модно ругать индикаторы. Каждый второй считает, что индикаторы не работают. А пока они так считают, трейдеры зарабатывают деньги на индикаторных системах, а алготрейдеры зарабатывают деньги на индикаторных советниках. Индикатор – это просто некоторое преобразование цены в иной, более удобный математический формат. Как реальный ценовой поток преобразуется в японские свечи. Примерно то же самое.
Действительно ли вы готовы погрузиться в алготорговлю?
- Как вы считаете, как вы поступите, если на протяжении двух лет у вас не будет получаться заставить этого чертового робота торговать прибыльно? Или может быть вы рассчитываете начать получать профит раньше? На самом деле процесс займет примерно года три. Если вы рассчитываете на более короткий срок, лучше даже не начинать – зря потеряете время. Про сроки изучения хорошо написано в этой статье:
Сколько времени нужно для успешной торговли на форекс?
Наверняка вы не раз слышали о правиле 10к часов. Чтобы заставить это правило работать на вас, вам прежде всего нужно заставить работать себя. Для того, чтобы зарабатывать себе на жизнь занимаясь алготрейдингом вам нужны знания, немало знаний. О том, какие знания потребуются, я расскажу ниже.
- Как вы себя чувствуете, когда ваш счет находится в просадке? Если это повод для депрессии и причина, почему вы сегодня в стельку пьяны, алготрейдинг не для вас (да и ручная торговля, думаю, тоже). Вообще я до сих пор негативно переношу просадки на счете, но они меня не выбивают из колеи. Я спокойно продолжаю заниматься своими делами. Если вы так не можете, лучше не начинать. Но возможно справиться с собственными эмоциями вам помогут эти четыре крайне полезные статьи:
3 рабочих способа победить эмоции в трейдинге
Психологическая подготовка для достижения успеха в торговле
- Станете ли вы торговать дальше этим советником:
Если ответ – нет, вам оно не надо:
Как долго вы готовы ждать? На первом мониторинге выбранные мной два месяца выглядят действительно как неудачный вариант бота. Тем не менее, этот «неудачный бот» сделал 266% профита за два года с просадкой менее 10%. И кто теперь «неудачный»?
На самом деле важны месяцы, а не дни. Если из 15 дней 10 у советника оказались прибыльными, вы же не побежите закладывать квартиру? Из следующих 15 дней прибыльными могут оказаться только 5. И снова это не скажет ничего о качестве советника. Тем не менее, всегда есть возможность осуществления наихудшего сценария. Сейчас это важно просто запомнить, а позже я научу вычислять этот самый худший сценарий и на основе этого знания делать выводы.
- Сколько процентов профита в год для вас подойдет?
На эту тему в блоге уже написано несколько статей:
Сколько можно заработать на форекс?
Сколько должен зарабатывать форекс трейдер, чтобы считаться успешным?
И для профилактики ненужных иллюзий также рекомендую прочтение следующей отражающей суть и алготрейдинга статьи:
Трейдинг: Ожидания и Реальность
Если вы хотите сравнивать свои результаты с каким-нибудь бенчмарком, чтобы отслеживать свой прогресс, лучше всего тут подойдет systematic traders index. На данный момент он включает в себя показатели доходности 454 различных алгоритмических стратегий.
Как построить понимание торговли на форекс ?
Все, что вам нужно – постоянно методично углублять свои знания о рынке. С пониманием одних вещей возникают новые вопросы, поиски ответа на которые приближают вас к получению прибыли на постоянной основе. Изучая новую информацию вы повышаете вероятность выхода на уровень постоянной систематической прибыльности. Но знание и понимание это немного разные вещи. Знание – это просто получение некоей новой информации о рынке форекс. Как например вы узнали, что такое плечо или размер контракта. Понятие понимание несколько шире. Оно включает в себя и знание, и информацию о том, как это знание связано с другими знаниями о рынке, а также возможность на основании этого знания и усвоенных предыдущих получить новые знания. То есть понимание – это целиковая, общая картина рынка, состоящая из кусочков тех самых «деталек» – знаний, их взаимосвязей и переплетений. Чем глубже у вас знания о какой-то конкретной детали и ее взаимоотношении с другими деталями, тем целостнее ваша общая картина, тем глубже ваше понимание рынка. Есть много различных подходов к изучению чего-то нового. Но наиболее эффективный и универсальный – систематичный научный подход. Систематизация изучения позволяет сократить время, затраченное на обучение. Важно быть последовательным и иметь свой план обучения, а не прыгать от одной «детальки» рынка к другой. Кроме того, в процессе обучения важно строить вашу «пирамиду» знаний из качественного материала. Если одна из «деталек» в фундаменте окажется некачественной, вся с таким трудом возводимая пирамида рухнет и вам все равно придется отбраковывать «детальки», чтобы отстроить вашу пирамиду заново. Поверьте, я знаю, о чем говорю, потому как сам достаточно недавно пострадал от такой «некачественной детальки». Как отбраковать некачественные знания? Только методом эксперимента, убедившись на своем личном опыте. Например, можно ли верить тестам советников, выполненных терминалом MetaTrader 4? Позже я скажу вам правильный ответ, но все равно рекомендую проверить и убедиться самому (просто чтобы выработать необходимую для работы привычку). Старайтесь каждую увиденную где бы то ни было фразу (будь то на форуме, в книге авторитетного автора или где бы то ни было еще), ну например какую-нибудь вроде этой: «спред в ночные часы расширяется» воспринимать как: «неплохо было бы написать скрипт, который будет логировать спред раз в минуту в формате csv, чтобы я накопил данные по спреду в течение недели и потом смог вычислить средний спред по каждому торговому часу в сутки и на будущее знал наверняка, как ведет себя спред утром, днем и глубокой ночью». Ну, вы поняли мою мысль. У нас нет фактов – есть только гипотезы, проверка которых приводит к истинному знанию. Это – единственный возможный способ обрести понимание. Вы можете изучать форумы, слушать чужие советы, читать книги и статьи, но… вы уже поняли, что со всем этим делать. Вот примеры исследования рынка:
Стоит ли учитывать выход новостей в своей торговле?
Работает ли теханализ на графиках доходности ПАММ-счетов ?
Как увеличить шансы на успех?
- Научитесь просчитывать риски. Очень многие новички либо не знают, что такое риски, либо просто игнорируют их существование. В итоге очередные слитые депозиты. Некоторые люди бывают настолько упрямы, что за год сливают суммы, которые среднестатистический россиянин и за 10 лет не заработает. Пока вы учитесь, уменьшите риски до 0,5% на сделку чтобы спать спокойно. Рискнуть всегда успеете, к тому же делать это лучше с полным пониманием того, что вы делаете. Понятно, что бывает завидно, когда вы видите мониторинги со 100500% буквально за неделю. Но подумайте вот о чем – видели ли вы подобные мониторинги сроком минимум год? По какой-то волшебной причине эти «крутые» мониторинги спустя от силы пару месяцев куда-то испаряются вместе с их владельцами. Ну или владельцы не испаряются, а старательно делают вид, что нашли грааль и им незачем непонятно кому палить свои прекрасные результаты. Запомните одну простую вещь – чем выше доходность, тем выше и риски. Если вы хотите добиться успеха, первое, что вам надо изучить – это расчет рисков.
- Торговля – это статистика. Недостаток знаний в этой области заставляет людей попадать в серьезные ловушки заблуждений. Например, многие новички могут отказаться от использования советника, если после установки его на счет первые три-четыре сделки закрылись в убыток, но это совершенно безобидный пример. Гораздо опаснее, например, слепая вера в мартингейл и постоянное нахождение иррациональных отговорок после слива о якобы неподходящих рыночных условиях и прочей чепухи. Чтобы получать прибыль вам придется разобраться в азах статистики. Далее придется постепенно углублять эти знания.
- Изучайте программирование. Начать можно с mql4, а затем приступить к чему-то более серьезному. Но mql4 как базовый язык вполне неплох для старта – он простой, по нему хорошая документация, много уроков у нас в блоге и на форуме и коллеги форумчане всегда подскажут, если есть какие-либо затруднения. У меня с нуля на написание первого советника ушло недели две. Когда я говорю с нуля – это значит с абсолютно полного нуля, информатики в школе у нас тоже не было.
- Учите всю базовую информацию о рынке, которую можно найти в книгах и сети. При этом к любой информации стоит относиться критически (мы об этом уже говорили выше). В первую очередь собирайте информацию из более солидных источников, таких как книги.
- Вы должны знать и четко понимать основные характеристики тех систем, которые торгуете, а также их значение и способ вычисления. Я имею ввиду: количество прибыльных сделок, Шарп, профит фактор, отношение прибыли к убытку, максимальная просадка и прочее.
- Не торгуйте советниками, если полностью не понимаете, как они работают. Если вы не понимаете, почему советник входит в покупки, когда «вот эта синяя линия пересекает ту красную снизу вверх», лучше отложите этот советник в сторону. Почему? Потому что вы не знаете точно как это работает и чем вам грозит работа этого эксперта, чего от него можно в теории ждать, а как он работать уж точно не должен.
- Не скачите. Новички часто скачут от одной системы к другой, от одного советника к следующему. Добейте один советник, пусть он у вас начнет торговать прибыльно, затем пилите следующий. Распыляясь вы теряете концентрацию и можете пропустить важные детали, которые потом выйдут боком вашему депозиту.
- Привыкните к тому, что даже скромной доходности бот, который будет прибылен в долгосрочной перспективе – это много работы. На создание нового бота обычно уходит от силы неделя. На допилку и совершенствование порой до полугода. Вам некуда спешить, рынок никуда не денется.
- Просадки обязательно периодически случаются. Ну никуда от них не деться, не может постоянно падать только профит. С этим нужно просто смириться и терпеть. Какая бы прекрасная система ни была. При этом периодически случаются просадки длиннее и грубже, чем вы рассчитывали судя по результатам советника на тестах. Как к этому быть готовым, мы обсудим позже.
- Каждый «кусочек» пропущенной или бракованной информации потенциальная бомба с часовым механизмом на пути к вашему успеху. Неизвестно, когда она взорвется, но последствия могут быть самыми разными. Серых полей в своей картине рынка лучше не оставлять.
Очень много полезной информации находится на форуме, в разделе «в помощь трейдеру».
Изучая алготрейдинг по этому плану вы будете строить хороший, каменный, крепкий дом. Пункты 1, 2 и 3 послужат фундаментом для этого дома, поэтому отнеситесь к этим знаниям максимально серьезно. Это основа, без которой рано начинать какие либо эксперименты для познания рынка. Сколько времени уйдет на строительство фундамента – зависит только от вас, от вашего характера и способностей. Но я бы назвал примерные цифры 1-2 года. Следующее, что вам будет необходимо – в пунктах с 4 по 10. По большей части это эксперименты, формирование гипотез и их проверка на практике. На это может уйти 2-4 года, но скучать не придется, уверяю. По окончании этого периода у вас будет прочная база проверенных знаний о рынке, рабочих инструментах, возможно некоторые свои наработки необходимого для работы софта, а также умения и навыки, необходимые для полноценной работы. Это время, когда ваши предыдущие эксперименты начнут давать плоды в виде по настоящему прибыльных в долгосрочной перспективе советниках и четкого понимания того, что нужно делать, чтобы зарабатывать больше. В это время вполне может появиться желание написать, например, собственную торговую платформу, заточенную под личные нужды, и, что самое главное, возможности это осуществить.
Какими еще вещами желательно обладать в той или иной степени для успешного освоения алготрейдинга?
Итак, это знания, понимание, о котором я уже немало сказал, иммунитет к разочарованиям, которых немало встретится на вашем пути, любопытство, без которого невозможно обучение в принципе, и, конечно же, терпение, самое главное качество в трейдинге вообще:
Самое важное качество трейдера
На диаграмме прекрасно видно, что понимание составляет 40% – это самое важное. Терпение и иммунитет к разочарованиям – по 20%, ну и любопытство со знаниями вместе – по 10%.
Знания трейдера
Я не встречал ни одного успешного алготрейдера, который не приложил бы значительных усилий для достижения того, чего он достиг. Иными словами, нужно многому научиться, чтобы добиться успеха в алготрейдинге. Все успешные алготрейдеры, которых я знаю и с которыми общался, вполне неплохо умеют программировать и знают несколько языков программирования а также имеют явно не начальные знания в статистике.
Тем не менее, если вы решили заняться алготрейдингом потому, что это проще ручной торговли, хочу предостеречь – это совсем не так.
Начинать работу лучше с простых систем, постепенно с получением новых знаний усложняя своих советников. Иначе можно наделать кучу ошибок.
Многие алготрейдеры прокладывают себе путь на ощупь, экспериментальным путем выясняя все сложности и нюансы. Я же дам вам карту, по которой идти будет гораздо удобней. Но сам путь придется преодолевать вам самим.
- Базовые представления о рынке
В первую очередь вам нужно получить базовые представления о рынке. Для этого хорошо подойдет чтение литературы. На данном этапе вам не обязательно строить гипотезы и проверять их. Вам нужно просто получить общее представление о том, что вообще существует в мире трейдинга. Что конкретно вам нужно освоить? Базовые знания о функционировании рынка, технический анализ (уровни, фигуры и прочее), функционирование, расчет и назначение различных индикаторов, классические торговые системы. Все эти вещи можно найти в любом справочнике по техническому анализу.
- Статистика и теория вероятности.
Помимо базовых представлений о статистике, математическом анализе и теории вероятности, вам очень сильно пригодятся знания о методе Монте Карло и методе Конечных Разностей. Оба метода основаны на теории вероятностей, статистике, методах численного анализа и дифференциальных уравнениях в частных производных.
Это то, чем многие трейдеры пренебрегают. А зря, ведь именно благодаря манименеджменту можно продержаться на рынке систематически в прибыли очень долгое время, а когда система перестанет работать, получить гораздо меньшие потери. Вообще риски в трейдинге – это очень занимательная и интересная вещь. Дополнительные риски могут придти из таких областей, о которых довольно трудно догадаться, например, при изменении волатильности, выходе важных новостей или усилении корреляции двух валютных пар. А еще же есть такие вещи, как черные лебеди, упущенные ошибки алгоритма или ошибки при оптимизации, сбои серверов, банкротства брокеров и так далее. Мы живем в очень опасном мире, и чтобы избежать хотя бы части выше названных рисков, нужно изучить манименеджмент.
- Вам необходимо научиться программировать.
На первом этапе нужно изучить mql4. На этом языке написано большинство скриптов, индикаторов, советников для терминала MetaTrader 4. Язык не сложный, в принципе на его более-менее сносное освоение вполне хватит месяца для того, чтобы написать свой первый советник. Далее стоит на будущее изучить язык mql5 – на данный момент терминал MetaTrader 5 не годится для нужд алготрейдинга, но терминал дорабатывается и, возможно, довольно скоро можно будет переходить на него (об особенностях терминалов мы поговорим позже). Какой язык вам пригодится дальше? Все будет зависеть от ваших целей, но наиболее распространены среди алготрейдеров следующие: С++, С#, Java, Python, MathLab, R. Изучив один из этих языков, вы получите возможность самому писать код для ваших исследований и инструменты для алготорговли. Для любого из этих языков можно найти отличные open-source проекты и библиотеки, которые очень сильно вам могут помочь. Один из крупнейших таких проектов для алготрейдинга – QuantLib, написанный на языке C++. А вот если вы хотите напрямую подключаться к таким поставщикам ликвидности, как LMAX, Currenex, Integral и прочим для торговли при помощи высокочастотных алгоритмов, например, то вам стоит изучить Java, так как API для подключения написаны именно для этого языка. Вообще же программирование – огромный пласт знаний, едва ли не больший по объему, чем знания о рынке и поэтому вам нужно иметь четкое представление о том, что вам изучить нужно, а что можно пропустить и освоить в случае необходимости. Я на данный момент осваиваю платформу .Net – закончил изучать язык C# и сейчас изучаю Windows Presentation Foundation (для создания графических приложений). Далее мой план обучения включает в себя Entity Framework (для работы с базами данных). Изучив эти технологии, я смогу полноценно писать различный софт под Windows, будь то программа для дата майнинга, кликер для торговли на новостях или полноценный терминал для тестирования стратегий. Изучение ASP.NET (для разработки веб-приложений) я решил пропустить и скорее всего для начала получу только базовые представления о ней. Тщательно изучив язык программирования, ваши возможности по сути будут ограничиваться только вашей фантазией и свободным временем.
Не стоит при этом забывать о том самом понимании, о котором мы говорили выше. В программировании, да и во всех остальных сферах вашей жизни, это очень важно. Поэтому я рекомендую вам такой план обучения программированию:
– Архитектура компьютера – как хранятся и обрабатываются данные. Как хранятся биты, что такое основная и массовая память, как представляются целые, дробные числа и строки. Как работает процессор, как выполняется программа, как происходит взаимодействие процессора с другими устройствами.
– Программное обеспечение – операционные системы и сети, алгоритмы, общее представление о языках программирования и технологий разработки программ. Какие есть операционные системы и как они устроены, сети, сетевые протоколы и безопасность. Что такое алгоритм, как создаются алгоритмы. История языков программирования, концепции, реализация языка. Что такое ООП, что такое параллельные процессы. Модульность, методы проектирования, тестирования и документирования ПО.
– Организация данных – структуры данных, файловые структуры, структуры баз данных. Что такое массивы, списки, стеки, очереди. Что такое файлы, индексация и хеширование. Какие бывают базы данных, что такое реляционные и объектно-ориентированные базы данных.
– Алгоритмические машины. Распознавание изображений и способность к рассуждению, искусственные нейронные сети, генетические алгоритмы.
– После получения общей картины можно приступить к изучению языка. Для изучения такого языка, как mql, такого количества знаний не потребуется. Да и вообще в принципе можно освоить любой язык без всего вышеперечисленного. Но эти знания дадут вам понимание, а следовательно, вы сможете добиться гораздо больших результатов.
– Само по себе знания языка программирования даст вам не так уж много. Изучив C#, я пока ничего толкового написать не могу, пока не освою WPF и работу с базами данных. Изучение БД лучше всего начать с реляционных баз и языка структурированных запросов SQL. Самые распространенные БД – Microsoft SQL Server, Oracle и MySQL. Скорее всего, больше вам ничего про базы данных знать и не потребуется. Хедж-фонды чаще всего используют MySQL, а SQL Server и Oracle больше распространены в банковской сфере. Если вы собираетесь строить быстрых роботов для высокочастотной торговли, то лучше всего присмотреться к HDF (Hierarchical Data Format) или Kdb+, которая специально для HFT и была разработана.
– Что пригодится позже – паттерны проектирования, язык UML тоже будет не лишним. Освоив один серьезный язык программирования, вы можете углублять свои познания в базовых знаниях, например, работы железа, или сетей. Можно изучить также еще один язык программирования.
Изучайте только то, что требуется вам конкретно в данный момент. Вы должны получить базовое представление обо всем вышеизложенном, но для глубокого изучения всего предложенного материала у вас уйдет несколько лет.
Каждый язык программирования служит для своей конкретной цели, в том числе это касается и алготрейдинга.
Например, для написания роботов для HFT чаще всего используют C++ или Java, реже C#, а также такие базы данных, как HDF и Kdb+.
Различные серьезные исследования, оптимизацию и бэктестирование проводят, как правило, в Visual Studio (C++, C#, LINQ), MathLab (которая была создана для работы с линейной алгеброй и векторными операциями и для которой на данный момент доступна целая куча дополнений для финансовых вычислений, оптимизации и прочего) или R Studio (и специальный язык R, заточенный под статистические вычисления). Можно использовать и Java, и C++, и Python. Часто для более простых исследований также используют Excel и его макросы (лично мне показалось неудобно и как-то непривычно, хотя по основной работе часто применяю Excel, но на «бытовом», офисном уровне).
Но мне еще нравится MathLab, возможно потому, что у меня уже имеется в прошлом опыт работы с ним. Немного подробнее расскажу об этой программе: в программе, например, можно создать высокочастотный алгоритм и протестировать его. В принципе, некую не сильно сложную стратегию можно написать при помощи MathLab, причем там же ее и протестировать, оптимизировать и даже провести оценку методом Монте Карло, а на все это действо у вас уйдет не больше пары недель. В программу включены возможности финансовых и статистических расчетов, визуализации ценовых данных и технический анализ, встроенные индикаторы, разработки и тестирования торговых стратегий по любым данным, в том числе и по тикам, а также интеграция с другими различными аналитическими пакетами. Простые стратегии типа пересечения двух машек пишутся буквально 10-15 строчками. Котировки можно брать из Excel файлов нажатием пары кнопок. Но самая главная фишка – очень быстрая работа с вычислениями большого количества данных. А скомпилированное приложение (да, это тоже возможно) будет по скорости сравнимо с написанным на C++. При этом многие известные методы, начиная со статистики и заканчивая дата майнингом уже реализованы в виде готовых приложений, остается только несколько раз кликнуть мышью. Единственное неудобство использования подобных методов – придется придумывать, как робот будет торговать в терминале МТ4. Тут есть несколько вариантов: переписывать код советника заново для торговли в MT4, использовать стратегию в виде dll, которая будет вызываться из обычного mql4 советника, выводить данные из MathLab в csv файл, который потом другим советником будет считываться, либо (самый предпочтительный вариант) механизм DDE – в этом случае данные шлются между программами напрямую. И все же, как бы привлекательно не выглядела работа в MathLab, профессионалы используют его реже, чем среду статистического программирования R, которая дает намного большие возможности для анализа и исследований.
В любом случае, по крайней мере без базовых навыков программирования, таких, как знание mql4, точно не обойтись. Все, что сверху этого – факультативно только для тех, кто решил заняться алготрейдингом всерьез. При этом для того чтобы освоить навыки программирования, достаточные именно для трейдинга (а не для работы в компании Microsoft), не требуется быть особо одаренным, иметь специальное или математическое образование. Как не требуется для изучения английского языка заканчивать «ин-яз».
Кстати, на мой взгляд, изучение иностранного языка и языка программирования очень похоже. При этом изучение языка программирования легче, так как при изучении иностранного языка нужно уметь хорошо читать, писать, понимать на слух и говорить. При этом понимание на слух и навыки разговора считаются наиболее сложными. В программировании фактически нужно научиться всего лишь читать и писать определенными буквами и символами в соответствии с логикой языка.
Когда первый раз видишь код программы, к примеру, на языке C#, то сразу в голову лезет мысль – это невозможно освоить без специального образования и предрасположенности к этому виду деятельности. Но после 2-3-х месячного системного изучения данного языка приходит понимание что «не боги горшки обжигают». Я вообще придерживаюсь мнения, что выучить можно все, что угодно, или почти все при наличии соответствующей мотивации и дисциплины.
А вообще после изучения mql4 по моим наблюдениям изучение более серьезного языка пойдет гораздо быстрее. На языке C# я написал четыре робота для TSLab буквально спустя неделю после начала изучения. На R набросал простенький скрипт для кое-какого анализа котировок всего за пару дней. Это я к тому, что зная уже хоть какой-нибудь язык программирования, дальше изучать будет уже существенно проще. Ну а для начала вы можете пройти «Курс молодого бойца» и освоить азы языка mql на страницах блога.
Наверняка у вас уже возник вопрос, какой язык выучить после освоения mql. Для этого достаточно просто посмотреть на рейтинг самых-самых языков, например, за 2016 год. Есть несколько авторитетных рейтинговых агенств, к которым стоит прислушаться.
Рейтинг RedMonk
Эта аналитическая компания регулярно публикует собственный рейтинг языков программирования. Он строится на основе оценки сочетания популярности на GitHub, плюс активность обсуждений на Stack Overflow. Из интересных нам языков: 2 – Java, 4- Python, 5 – C#, 6 – C++, 9 – язык C, который мало используется в алготрейдинге, 12 – R, 18 – MathLab, 19 – Visual Basic, язык, на котором можно программировать в Excel.
IEEE Spectrum
IEEE Spectrum — это журнал, который издается Институтом инженеров электротехники и электроники. Для создания своего рейтинга специалисты IEEE использовалис 12 различных метрик из 10 источников. Основное — это поиск результатов по запросу «название языка programming» на ряде популярных сайтов. Учитываются и материалы, которые выдаются в поисковой выдаче Google, данные Google Trends, упоминания в социальных сетях. Первое место – C, второе – Java, третье – Python, 4 – C++, 5 – R, 6 – C#.
TIOBE
Компания TIOBE Software, публикуя свой рейтинг, отмечает рост популярности ассемблера. Согласно этому рейтингу язык поднялся на две позиции — с 12 на 10 место. Это объясняется бурным развитием сферы интернета вещей. Анализ данных проводится на основе результатов поисковой выдачи многих систем, включая Google, Google Blogs, Yahoo!, Wikipedia, MSN, YouTube, Bing, Amazon и Baidu. Итак, 1 – Java, 2 – C, 3 – C++, 4 – Python, 5 – C#, 13 – Visual Basic, 16 – MathLab, 17 – R.
PYPL
Этот рейтинг оценивает популярность языка по количеству запросов на поиск документации по языку в Google. Итак, 1 – Java, 2 – Python, 4 – C#, 6 – C++, 7 – C, 9 – R, 11 – MathLab, 14 – Visual Basic.
Различных рейтингов много и во всех них одни и те же языки расположены на разных местах. Языков программирования тоже очень много – в районе 2,5 тысяч. Тем не менее, видно, что java во всех рейтингах опережает примерно одинаково популярных C++ и C#, а R и MathLab находятся в первой двадцатке. К слову сказать, язык mql находится примерно между 50 и 80 местом, то есть все таки входит в топ-100. Так какой же язык выбрать? Я считаю, что помимо mql стоит выучить C++, C# или Java, плюс один из языков для проведения исследований – R или MathLab. Но это мое личное видение. А вообще, надо попробовать что-то сделать на том или ином языке, что бы можно было сравнивать, а потом уже определить – с чем работать понравилось больше. Я уже выбрал для себя C#, хотя еще не до конца разобрался, что мне больше нравится – R или MathLab.
- Технологии торговли.
В эту группу знаний можно включить знание терминалов и способов торговли, в том числе программных, что такое протокол передачи финансовых данных, что такое доверительное управление, сигналы, PAMM и MAMM счета.
- Знания в сфере финансов.
В принципе, можно получить совсем базовые знания в этой области. Но, опять же, более углубленные только будут способствовать успеху. Сюда можно отнести знания о деньгах, кредитах, работе банков, рынках и биржах, финансовом менеджменте, инвестициях и мировой экономике, экономическом анализе. Также точно не помешают знания бухгалтерского учета, основ аудита и истории экономики. Эти знания дадут иммунитет от большего числа околорыночных мошенников, позволят более глубоко понимать функционирование финансовых рынков, эффективнее распоряжаться личными финансами.
- Системостроение.
Сюда входят знания о различных типах стратегий (волновые теории, свечные паттерны, фрактальные теории, графический анализ, работа по фундаменту, фронтранинг, скоростной арбитраж, машинное обучение, дата майнинг, торговля по тренду и контртрендовые стратегии и так далее), а также методы исследования рынка (различный специализированный софт). Эти знания и опыт дадут возможность построения, тестирования и оптимизации различных типов торговых систем, инструментарий, который позволяет быстро и качественно тестировать свои идеи и системы.
Саморазвитие – ключевой элемент успеха
Чтобы стать профессионалом своего дела и поддерживать профессионализм на должном уровне, необходимо постоянно развиваться, совершенствоваться и познавать новые аспекты своего занятия. Как спортсмен, бросивший тренировки, теряет форму, так и любой профессионал, прекративший развитие по своей специальности, со временем утрачивает необходимые навыки. В случае трейдинга необходимость постоянного развития наиболее актуальна, поскольку в этом нелёгком деле успех зависит непосредственно от самого трейдера, от его подготовки, накопленных знаний и способности действовать более эффективно. Даже если вы успешно торгуете уже несколько лет подряд, это вовсе не означает, что вам нечему больше учиться и не нужно дальше развиваться.
Будьте «в теме»
Даже если вы уже состоявшийся трейдер, никогда не помешает изучение новых направлений, стратегий, новых рынков или финансовых инструментов. Постоянно следите за новинками в сфере программного обеспечения и за внутренними изменениями в механизме работы биржи. Применять данные знания в своей торговле не обязательно, но для общего развития очень полезно знать.
Окружайте себя профессионалами
Одним из эффективных методов личностного и профессионального развития является знакомство и поддержка связи с «коллегами по цеху», которые имеют общие с вами интересы и даже превосходят вас по опыту и профессионализму.
Читайте чаще и больше
Чтение само по себе приводит к значительному развитию интеллектуальных и аналитических способностей человека, что крайне важно и для трейдера. В данном случае полезным будет чтение как классических книг по трейдингу, техническому и фундаментальному анализу, программированию, основам экономики и финансов, так и сторонняя литература. Что касается меня, то я стараюсь придерживаться 2 простых правил: уделять чтению книг хотя бы 4 часа в течение дня (не так важно, сколько отводить времени для этого, главное — стараться делать это каждый день) и в выходной день выделять 2-3 часа на просмотр обучающих видео или семинаров.
Развивайтесь комплексно
Программы и книги по саморазвитию обладают весьма высокой эффективностью для улучшения личностных и профессиональных качеств. Сейчас с помощью соответствующих книг и видео можно значительно улучшить психологические установки и дисциплину, увеличить внимание и память, улучшить интеллектуальные возможности. Начните совершенствовать свои слабые стороны и активно «прокачивать» сильные. Всё это будет способствовать комплексному развитию трейдера и как следствие естественным образом положительно отразиться на ваших торговых результатах.
Планируйте свои задачи
Планирование ежедневных задач, а также общих долгосрочных и среднесрочных планов является основой высокой эффективности успешных людей. Выработайте в себе привычку постоянно фиксировать заметки и планы на бумажных носителях или с помощью специализированных программ. Каждый вечер составляйте план на следующий день, по выходным можно составлять план на неделю и месяц. Добавьте в свой распорядок новые задачи по вышеуказанным пунктам, например, чтение каждый день по 1 часу, раз в неделю просмотр видео по трейдингу, бег или плавание в бассейне через день по 1 часу, изучение программирования по 1 часу каждый день. Для оперативной работы с планами, а также выполнения поставленных задач можно использовать напоминания в телефоне или специализированные приложения.
Занимайтесь спортом
Физическая подготовка способствует улучшению дисциплины, силы воли и целеустремлённости, что крайне важно для трейдера. Психологическая устойчивость, подкрепленная хорошим физическим состоянием, существенно увеличивает ваши шансы на успех. Каждый день старайтесь хотя бы 30 минут уделять физической активности. Например, можно делать пробежки, кататься на велосипеде или на лыжах, ходить в бассейн. Если в какой-то из дней нет возможности или времени сделать тренировку, то можно обойтись отжиманиями, приседаниями, упражнениями на пресс. Это то, что можно без проблем сделать дома в любое удобное время. И не забывайте как можно больше дышать свежим воздухом. Голова в таком случае будет работать намного лучше.
Следуя таким простым принципам, вы существенно улучшите свои личностные и профессиональные качества, всегда будете в здоровом активном тонусе и в курсе всех необходимых событий в мире трейдинга. Не переставайте развиваться и новые достижения не заставят себя ждать. Также советую ознакомиться со следующими полезными статьями:
17 привычек высокоэффективных трейдеров
Как не стать унылым трейдером неудачником
«Личная эффективность трейдера»
Как трейдеру сохранить здоровье
Типы торговых стратегий
Торговая система или стратегия – это набор правил, регламентирующий совершение сделок купли и продажи, направленных на извлечение прибыли. Она должна отвечать на такие вопросы, как когда нужно покупать или продавать, нужны ли защитные стоп-приказы и уровни тейк-профита, на какие индикаторы надо смотреть и так далее. О том, как разработать собственную торговую стратегию, уже писалось на страницах блога. Мы же поговорим о классификации систем на конкретные типы. При этом я опущу такие типы торговых систем, которые заведомо крайне сложно осуществить на рынке форекс, например торговлю волатильностью или маркетмейкинг.
Трендследящие стратегии
Трендовые торговые системы – группа стратегий основанных на поиске выхода из ранее торгуемых диапазонов и рассчитанных на то, что движение продолжиться. Любимые стратегии многих начинающих и опытных алготрейдеров. Многие из вас слышали такие советы как : “Тренд – твой друг”, “Не стоит идти против поезда” и так далее. Всё это относится к трендследящим стратегиям. Многие опытные трейдеры рассказывают о важности тренда на графике. В алготрейдинге трендследящие стратегии могут создаваться из самых простых комбинаций известных индикаторов технического анализа: скользящих средних, MACD и прочих, до самых навороченных эконометрических разработок, рассчитывая десятки и сотни переменных, основанных на десятках и сотнях факторах. Один из самых популярных и прибыльных типов торговых систем, которые существуют сегодня. Первые упоминания об этом типе торговли можно встретить ещё в книгах начала 20 века. Уже тогда прозорливые спекулянты понимали, что удерживание позиции по движению на больших интервалах даёт большие преимущества. Трейдеры, применяющие стратегию следования тренда, не стремятся предсказать конкретные ценовые уровни. Разновидностей подобных стратегий – сотни. Из общего в них только то, что они покупают и продают примерно в одном месте и пытаются максимизировать удержание позиции без выхода из него. Классическим входом для трендовой ТС является пробой максимума или минимума за определённое время. Они просто запрыгивают в тренд, когда с помощью своих правил определяют, что тренд установился, и едут на нем. Эти трейдеры входят в рынок после того, как возник тренд, и они ставят на то, что он продержится долгое время. При развороте рынка трейдеры могут выходить из позиции и ждать, пока нужное направление движения не установится снова. Отличительной особенностью данного типа стратегий в большинстве случаев является отсутствие выхода по заданному уровню прибыли. Почти всегда имеет место быть плавающий стоп-лосс. Торговые системы этого типа пытаются находиться в сделки как можно большее время, исходя из того что движение продолжиться. Особое внимание в таких ТС принято уделать именно выходу из позиции. Вполне возможно, что большинство сделок может быть убыточным, но благодаря правилу «режь убытки и давай прибыли расти», общая стратегия может быть прибыльной. Именно из-за большого количества мелких убытков, а следовательно, затяжных просадок, по трендследящим стратегиям так сложно психологически торговать. Торговля с помощью тренда является наиболее эффективной для тихих (с относительно низкой волатильностью) и трендовых рынков.
Контртрендовые или возврат к среднему значению
Контр трендовые торговые системы, также именуемые реверсивными или стратегиями возврата к среднему – алгоритмы торговли рассчитанные на возврат к среднему. Если следовать канонам контр трендовых систем то мы будем покупать, когда цена будет показывать экстремально низкие значения. И соответственно, будем продавать, когда цены будет выходить вверх. Выход по стратегии часто расположен на жестком расстоянии от входа. Чаще всего реверсивные стратегии применяют на младших таймфреймах. Типичными представителями такого типа стратегий могут служить ночные скальперы.
Фронт-раннинг
Фронт-раннинг (в переводе с английского переводится как “забегание вперёд”) – группа торговых систем, эксплуатирующая неравномерную скорость распределения информации. По большей части применяется при торговле на биржах. Стратегия заключается в том, что алгоритм анализирует плотность стакана и в моменты перекоса плотности, совершает те или иные действия. Например, выставляет заявку на покупку по краю стакана, если в моменте очень мало заявок на продажу или резко увеличилось количество заявок на покупку. Может быть реализована и для рынка форекс, но, конечно же, не посредством терминала MetaTrader, а при подключении к поставщику ликвидности напрямую, используя API поставщика. Как правило, такие стратегии тесно связаны с понятием HFT. Я такой тип стратегий пока не успел попробовать (не дорос еще), но наверняка могу сказать, что времени на разработку уйдет не мало.
Арбитражные стратегии
Это второй просто способ зарабатывать на финансовых рынках деньги. Есть огромное множество направлений арбитража. Довольно простой вариант: временной арбитраж. При данном типе торговли, по сути, мы торгуем инструмент в месте с отстающими котировками, ориентируясь на некий эталон. Например, берем котировки у такого поставщика, как LMAX, у которого задержек в котировках не наблюдается, и ищем брокера, у которого есть задержки в котировках. Как правило, такие задержки проявляются на резких движениях, каких, как выход новостей, например. При этом тип счета для такого арбитража должен быть кухонным, то есть standart для того, что бы избежать больших проскальзываний. Вообще же чаще всего такой тип скорее не работает, чем работает: нужно найти «правильного» брокера, да еще и умудриться вывести награбленное заработанное советником. Это очень непростая задача. Хотя преимущество подобного вида арбитража налицо – практически полное отсутствие рисков по счету, ведь мы наперед знаем, куда пойдет цена. А значит, можем открываться на всю котлету. Стандартными средствами mql довольно сложно добиться требуемой скорости анализа данных, поэтому без знания серьезного языка программирования тут не обойтись.
Самый простой и примитивный вариант арбитража – пространственный арбитраж. При данном типе торговли, по сути, мы торгуем один инструмент в разных местах. То есть покупаем в одном месте по одной, низкой цене и тут же продаем в другом месте по другой, более высокой цене. В настоящее время на форекс места для такого типа торговли не найти.
Следующий тип арбитража – статистический. В профессиональной среде финансистов термин «статистический арбитраж» может употребляться в различных контекстах. Если при классическом арбитраже, рассмотренном выше, риск в сделке сводится практически к нулю, так как покупка и продажа одного инструмента производятся одновременно, только по разным ценам, то в статистическом арбитраже торгуется два разных инструмента. Статистический арбитраж можно рассматривать как торговую стратегию, включающую в себя торговые автоматизированные системы, методы обработки статистики и datamining. Прародителем считается простой парный трейдинг. При этом из всех инструментов составлялись похожие по рыночной обоснованности пары валют. В тот момент, когда одна из парных валют начинает существенно двигаться, а вторая не успевает, то совершается покупка или продажа. Эта система позволяет свести риски к минимуму, то есть хеджировать. Другими словами используется контртрендовая торговля или mean reversion. Для создания высокой диверсификации набирается огромное количество пар, получая портфель из десятков инструментов. Причём определённая их часть находится в лонге, а другая — в шорте. За этим ведётся строгий контроль и учёт, чтобы устранить различные факторы риска. Процесс конструирования пакета может быть разный, например, путём выставления рейтинга. Этот процесс называется «оценка» или scoring. Статистический арбитраж имеет и свои риски, связанные с маловероятными, но возможными событиями. В любой конечный промежуток времени может произойти определённый факт, вызывающий краткосрочные потери. Если они превышают ликвидность, которая на данный момент доступна трейдеру, то может произойти слив. Также имеются недостатки в самих моделях статистического арбитража. Существуют определённые факторы, которые модель не учитывает, считая их несущественными. Но в отдельных случаях они могут иметь большое значение для движения цен на рынке. Ещё одним моментом риска является ложное статистическое взаимоотношение, на основании которого построена модель. Такой тип арбитража очень широко распространен на финансовых рынках. Как правило на рынке форекс это трехногий арбитраж, то есть торгуются обычно три валюты (например, eurjpy и usdjpy – eur, usd и jpy). Вообще вещь эта мне кажется довольно сомнительной. Хотя я сам и не проверял, но на мой взгляд есть две причины, почему такие системы будут слабо работать. Первая – это стоимость сделки. Когда мы входим в позицию, мы платим за это спред (а у некоторых брокеров еще и комиссию). Чем больше ног у арбитража, тем выше стоимость сделки. Вторая причина – проскальзывания, которые добьют то, что не добило спредом. Возможно, если задавать проскальзывание равное 1 при отправке ордеров, а также отменять сделки при превышении спреда и выходить напрямую на поставщиков ликвидности такая система и будет работать. Но в любом случае существенной прибыли ждать не приходится, ведь прибыли со сделок ничтожно малы и они не стоят потраченного на разработку подобной системы времени и сил.
HFT
Высокочастотные торговые системы – стратегии, используемые при алгоритмической торговле с горизонтом удержания позиции от нескольких долей секунд. Для того чтобы использовать подобные стратегии и называться hft, существуют некоторые ограничения для используемого оборудования и также ряд других требований – это только алгоритмическая торговля, полностью программная, необходимы хорошие каналы связи и прямой доступ к поставщикам ликвидности. Большинство стратегий для высокочастотной торговли такие же, как и для обычной (тренд, контр-тренд, арбитраж). HFT по праву считаются самым прибыльным типом торговых систем. Рынок Форекс считается медленным по сравнению с биржами капитала. Особенно с точки зрения розничных Форекс трейдеров, для которых реальная конкуренция за время исполнения часто сильно ограничена. Вообще же поставщики ликвидности промышляют высокочастотным маркетмейкингом. Но чтобы рядовой трейдер успешно получал прибыль от таких алгоритмов, однозначно нужно использовать API поставщика и VPS в непосредственно близости от него. Тем не менее, hft на форекс – это пока очень выгодное направление.
Машинное обучение
Сейчас это одно из модных направлений. Для анализа рынков используются математические, статистические и логические инструменты. С их помощью возможно создание гипотез, которые можно проверить (например, на исторических данных). Процесс машинного обучения состоит из нескольких шагов от выбора математических и программных инструментов, входных данных, до выработки предсказаний и оптимизации их точности. Использовать только этот инструмент для создания по -настоящему эффективной стратегии вряд ли возможно, однако использование машинного обучения и исторических данных позволяет создавать стратегии, которые будут приносить определенный доход.
Генетические алгоритмы
Существует целый ряд алгоритмов поиска, одним из которых является генетический. Его используют для решения сложных проблем, в тех случаях, когда точные отношения между задействованными элементами неизвестны и могут в принципе отсутствовать. Задача формализуется так, чтобы ее решение могло быть закодировано в виде вектора генов («генотип»), где каждый ген может представлять бит, число или какой-либо другой объект. Далее случайным образом создается множество генотипов начальной «популяции», которые оцениваются с помощью специальной функции приспособленности. В итоге каждому генотипу присваивается значение «приспособленности» — именно оно определяет, насколько хорошо он решает задачу.
Наука о Финансах постоянно развивается и находит способы так или иначе прогнозировать стоимость компаний, товаров и любых других активов, на основе объективных данных. Например, отчёты государства грамотному аналитику могут подсказать, как будет развиваться ситуация с той или иной валютой. Исследования процессов и прогнозирование стоимости на основе этих данных – то, что занимает лучшие умы планеты. За исследования в области экономики и финансов регулярно выдаются нобелевские премии. В общем, фундаментальный анализ – хорошо. В настоящее время многие алготрейдеры работают над разработкой систем анализа и интерпретирования новостей, чтобы выделять информацию, на основе которой торговый робот мог бы совершать сделки. Для получения новостей используются различные сервисы — например, GoogleTrends, показывающий популярность того или иного поискового запроса. Также алгоритмы анализируют ленты новостей. Для построения даже простых типов таких алгоритмов вам будет недостаточно знания одного лишь mql, хотя простую систему подобного типа разработать и не сложно. Например, можно анализировать вкладку терминала «новости» на предмет некоторых триггеров выхода важных новостей и сравнивать показатели статистики. Если некий индекс вышел выше ожидаемого, покупаем, ниже – продаем. Довольно грубый пример, но вполне может работать после некоторых исследований.
Дата майнинг
Data Mining — это процесс обнаружения в сырых данных ранее неизвестных, нетривиальных, практически полезных и доступных интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности. Цель поиска закономерностей — представление данных в виде, отражающем искомые процессы. Построение моделей прогнозирования также является целью поиска закономерностей. Результаты Data Mining в большой мере зависят от уровня подготовки данных, а не от «чудесных возможностей» некоего алгоритма или набора алгоритмов. Около 75% работы над Data Mining состоит в сборе данных, который совершается еще до того, как запускаются сами инструменты. Существует большое множество различных алгоритмов, применяемых при дата майнинге. Примером крайне простой программы, использующей эту технологию, может служить Stock Pattern Viewer. Это простая программка, в которую можно загрузить котировки и найти определенные свечные паттерны (не только свечные), после которых происходит заданная реакция рынка. Например, найти паттерн, после которого в течение трех свечей рынок рос 2000 раз, а падал всего 200 раз. После этого найденные паттерны встраиваются в алгоритмы торговых роботов и успешно (либо не очень) торгуются.
Программирование
Мы уже разобрали, какие языки программирования для решения каких задач лучше использовать и какие темы, сопряженные с программированием, стоит изучать. Теперь давайте более подробно поговорим о программировании вообще.
Вообще никаких ограничений для возможности человека выучить язык программирования не существует. Я выше проводил аналогию с изучением иностранного языка. Так вот, как люди разговаривают друг с другом, так человек может разговаривать и с машиной. Это совершенно естественный процесс для большинства жителей планеты. Тем не менее, есть некоторые базовые навыки, которые помогут изучить один или несколько языков программирования быстрее. К ним относятся: английский язык, метод слепой печати, дисциплина, базовые знания о функционировании компьютеров и операционных систем, умение разбираться с работой новых приложений, и, конечно же, IQ. Но обо всем по порядку.
Зачем нужен английский?
Дело в том, что большая часть технической документации написана на английском языке. Большая часть информации, в том числе новости и интересные статьи также находятся на англоязычных ресурсах. Кстати, большая часть серьезной информации по алготрейдингу находится на англоязычных сайтах и в англоязычной литературе. Тем не менее, чтобы изучить mql, английский язык не обязателен. Он пригодится, если вы захотите подняться выше над базовым уровнем.
Системы контроля версий
Когда вы ведете разработку какого-либо сложного алгоритма, часто появляется 100500 различных версий. Как тут не запутаться в таком количестве практически одинаковых файлов? В этом вам поможет система контроля версий, о принципах работы которой можно прочесть, например, в этой книге.
Слепая печать
Сидя за компьютером уже десятый час и мотая головой от клавиатуры к монитору осознаешь, что еще чуток и голова отвалится. Умение набирать текст вслепую помогает лучше сосредоточиться на задаче, а также экономит немало времени.
Об остальных навыках я уже говорил выше, поэтому не буду повторяться. Как видите, освоить программирование может практически любой человек, если будет необходимая мотивация и дисциплина. А получить те или иные навыки тоже не сложно – достаточно систематически изо дня в день выделять хотя бы по часу на занятия.
Заключение
Итак, по предоставленной сегодня информации, я думаю, вполне возможно сложить достаточно целостную, пусть и поверхностную картину знаний об алготрейдинге. Теперь вы знаете, что такое алготрейдинг и чем вообще там эти алготрейдеры занимаются. Надеюсь, я предоставил вам достаточно доказательств обоснованности такого подхода к торговле – мониторинги, индексы из авторитетных источников, а также доводы о том, почему у среднестатистического алготрейдера по прежнему есть все шансы достойно зарабатывать своим ремеслом. Также я постарался всесторонне оценить все плюсы и минусы обоих подходов – ручной и алгоритмической торговли, хотя и не уверен, что у меня это получилось достаточно хорошо из-за возможной «некоторой предвзятости» моих выводов.
Зато, я думаю, многие согласятся с моими выводами о том, какие задачи доверить компьютеру, а какие человеку и сделают правильные выводы о том, в каком направлении им «копать», чтобы другие трейдеры не наступали им на пятки. Кроме того, надеюсь, я показал, как важно внимательно отнестись к проблеме покупки торговых роботов, а также к критическому осмыслению всей информации, поступающей к вам, а также развеял ваши возможно не совсем верные представления о том, что вас ждет на пути алготрейдинга, сколько времени этому стоит уделять и как увеличить шансы на минимизацию ошибок в обучении и времени, уходящего на это. И, что лично мне кажется наиболее ценным, я попытался сформировать оптимальный вектор обучения такой дисциплине, как алготрейдинг, рассказав вам об областях знаний, которые формируют успех алготрейдера.
Также я дал представление о том многообразии типов алгоритмических торговых систем, один или несколько из которых, я надеюсь, в скором будущем будет радовать прибылью тех, кого эта, несомненно, крайне длинная, но, надеюсь, достаточно занимательная для полного ее прочтения, статья, убедила заняться созданием своей собственной алгоритмической торговой системы.
С уважением, Дмитрий аkа Silentspec
Tlap.com
Топ Брокеров 2025 по версии TLAP
Центовые счета
Быстрый ввод и вывод
Платформа CopyFx для копирования сигналов
Отличное исполнение
На рынке с 1998 года
Низкие спреды
Быстрый ввод и вывод
Хорошее исполнение
Множество способов пополнения
С 2007 года на рынке
Счета Zero с нулевыми спредами
Система Копи-трейдинга
Хорошее исполнение
Более 500 торговых инструментов
Комиссия на пополнение 0%
Лицензия ЦБ РФ
Удобный ввод и вывод средств
Подходит для крупных трейдеров
Крупнейший форекс дилер в России
Компания – налоговый агент, выплата налогов без участия клиента
Торговля через MetaTrader 5
Форекс, фондовые индексы и нефть
Низкие спреды
Хорошее исполнение
Подходит для торговли советниками
Торговля криптовалютами
Центовые счета со стартовым лотом 0.01
Система копирования сделок Share4You
Низкие спреды
Подходит для новичков
Лучшие на рынке условия для работы с сеточниками и мартингейлом
Исполнение без вмешательства дилинга
Низкие спреды
Трейдинг Forex, CFD и Crypto
Полная прозрачность работы
Множество представительств компании, в том числе в Великобритании
На рынке с 2006 года
| ||
| ||
| ||
| ||
| ||
| ||
|