Как я пришел к тому, от чего всегда бежал
Когда у вас хорошо получается торговать «руками», вы не задумываетесь о том, чтобы упростить данный процесс. Вместо этого вы еще тщательнее шлифуете стратегию, благодаря которой можете позволить себе новый автомобиль и даже новый дом.
Мне было 22 года, и я умел зарабатывать неплохие деньги. При этом я умудрялся закрывать порядка 90 % торговых сессий в плюс. Что еще нужно для полного счастья?
На тот момент я трудился в брокерской компании консультантом. С нами на этаже, в дальнем темном углу работал очень интересный человек. Если все остальные сотрудники придерживались строгого стиля во внешнем виде, то этот человек, назовем его Алекс, всегда ходил в джинсах и носил длинные волосы, собранные в косичку.
Я, честно говоря, не совсем понимал, чем он занимается. На его столе располагалось восемь мониторов. На всех отображались какие-то странные процессы. На центральном экране всегда был виден программный код. Как выяснилось позже, Алекс разрабатывал торговых роботов.
Для меня этот процесс был настолько далек, как, наверное, Южный полюс для вас сейчас. Алекс приходил в офис ближе к пяти вечера, как раз в тот момент, когда весь офисный планктон начинал расходиться. Это помогало ему не отвлекаться на ненужные разговоры с окружающими его менеджерами. Я думаю, поскольку никто, кроме него и, возможно, еще пары человек, в компании не разбирался во всех этих процессах, ему часто приходилось отвечать на глупые вопросы.
Но суть была не в том, что Алекс с виду занимался какой-то ерундой, а в том, что, видя, насколько стабильно я зарабатываю на рынке, пытался выяснить мой торговый алгоритм.
Будучи еще молодым и зеленым трейдером, я с радостью делился с ним своими стратегиями. Спустя некоторое время он исчез. Шли недели и месяцы, а за столом с восемью мониторами по-прежнему никого не было. Не то, чтобы я был очень дружен с Алексом, но все же мне было интересно, куда делся столь необычный человек.
Спустя полгода я все же выяснил, где он. Оказалось, Алекс переехал жить в Юго-Восточную Азию, где купил себе дом у океана. Днем он катался на серфе, а вечером писал торговых роботов.
Тут у меня и возникла мысль, а не использует ли он одну из моих стратегий с помощью роботизированной системы? Но я отогнал от себя столь дурные мысли и забыл про торговых роботов на три года.
Только сейчас, спустя много лет, я понимаю, что если ему все же удалось реализовать мою стратегию через торговых роботов, то он, пожалуй, молодец. Ведь нет ничего более приятного, чем проводить время на свежем воздухе около океана, занимаясь любимым делом. В любом случае это лучше, нежели торчать с утра до вечера перед монитором компьютера в душном офисе.
Понимание того, что робот может торговать лучше человека, пришло ко мне в тот момент, когда я безуспешно боролся со своей психологией. Моей большой проблемой была торговля без сигналов. Поскольку я начинал свой путь в трейдинге с самой быстрой торговой стратегии – скальпинга, то сменив ее на более спокойный интрадей, я не мог усидеть больше 20 минут без сделки.
Я отчетливо понимал, что торговать нужно по четким правилам, иначе не получить стабильную доходность. Однако иногда случались так называемые срывы. Бывало, что в течение часа или двух моя система не давала ни единого сигнала на вход, в то же время я сидел перед монитором, полностью сосредоточенный и, словно охотник в кустах, ждал свою добычу. В итоге, прождав несколько часов и не получив долгожданной добычи, я начинал палить из виртуального ружья. Мне хотелось драйва и эмоций. Я срывался и начинал торговать только потому, что это весело и интересно. Но это не имеет ничего общего со стабильным доходом.
Слава богу, я понимал, что если и дальше продолжу торговать подобным образом, то недалек тот час, когда я сразу потеряю много денег.
Сначала я пытался бороться со своими эмоциями – ничего не получалось. После этого я попросил трейдеров присматривать за мной. И если они увидят, что я торгую не по системе, то я должен был заплатить каждому по $100. И это тоже не помогло. Когда я входил в раж, мне уже было все равно, какого размера штраф и сколько денег я потеряю. Для меня существовал только этот момент – когда ты делаешь ставку, и только тонкая грань разделяет тебя и рынок. Один из вас в этой сделке потерпит поражение! И, к сожалению, чаще всего поражение терпел я. Эмоциональные сделки – это путь к разорению.
Я уже начал терять веру в себя. Ни один из придуманных методов не позволял мне пересилить те эмоции, которые возбуждал во мне рынок. Но выход был найден абсолютно случайно…
Соревнование, которое изменило мою жизнь
Одним прекрасным весенним днем я купил билет на экзотические острова, где собирался провести долгожданный отпуск. Однако сразу привязалась мысль, что, пока я неделю буду нежиться на солнце, не смогу торговать и зарабатывать деньги. Получалось так, что помимо стоимости самого билета на самолет и оплаты отеля я также должен включить в стоимость своего отпуска еще и упущенную прибыль. Таким образом, быстро прикинув в уме сумму, я осознал, что неделя отпуска обойдется мне не в $10 000, а как минимум в $40 000! Пожалуй, тогда впервые я осознал, что такое быть не просто трейдером, а инвестором.
Профессия трейдера чем-то напоминает профессию дантиста или адвоката. Если дантист не лечит зубы своим пациентам, а адвокат не защищает своих клиентов, то и денег у них нет. С точки зрения трейдинга выходило, что если ты не находишься перед торговым терминалом, ты не зарабатываешь! Такова была правда жизни. Я также осознал, что в момент плохого самочувствия, будь то болезнь или переутомление, качество трейдинга резко снижается, и как следствие твой доход тоже. В итоге у меня родились две идеи. Идея первая – обучить 10–20 человек трейдингу и дать им деньги, чтобы они торговали за меня. Идея вторая – создать торговых роботов по тем стратегиям, по которым я торговал, чтобы они зарабатывали для меня.
В итоге я решил реализовать оба замысла.
Все началось с подбора людей на обучение. Я старался найти талантливых и уверенных в себе будущих трейдеров. После проведения интервью с кандидатами я отобрал десять человек. Работа предстояла тяжелая. В этих начинаниях мне помогли мои хорошие друзья и коллеги по цеху. Поскольку на тот момент у меня уже была своя небольшая трейдинговая компания, то найти себе помощников для обучения не составило труда.
Пока трейдеры обучались, я нашел команду разработчиков, на которых возложил алгоритмизацию – перевод своих стратегий на автоматическую торговлю.
Время тянулось очень медленно. Из десяти трейдеров через два месяца остались лишь пять. Ушедшим обучение давалось с трудом, они не следовали стратегии и достаточно быстро меня разочаровали. Что касается торговых роботов, то за это время программисты успели написать и запустить одну из пяти торговых систем. В первую же неделю торгов робот, имея на старте $50 000, заработал около $10 000, или 20 %. Посмотрев на его сделки, я моментально осознал ущербность себя как человека. Столь четкого исполнения я не мог добиться ни от кого в своей компании, даже от самого себя. Робот торговал так, как того требовала торговая стратегия. Единственное, что омрачило мне настроение, – это небольшие ошибки. Поскольку времени на обкатку данного торгового робота программистам я не дал, то пришлось отлавливать их уже на боевом торговом счете. Тем не менее результаты первого в моей жизни робота меня восхищали.
С начала эксперимента прошло шесть месяцев и можно было смело подводить итоги. Из десяти трейдеров остались только двое. Оба неплохо зарабатывали, совершали сделки четко по стратегии. Единственное, что меня немного удручало, так это то, что они забирали себе 50 % заработанного дохода. Все это, безусловно, справедливо, ведь ребята с утра до вечера торговали на рынке, выискивая лучшие моменты для входа в сделку. Хоть они и оперировали моими деньгами и с помощью моих стратегий, мне все равно приходилось отдавать до половины заработанного. Тем временем роботы не брали с прибыли ни цента. Роботу не нужны деньги! И все, что приносили автоматические торговые алгоритмы в виде прибыли, я забирал себе!
Если смотреть по доходности, то робот, который торговал одновременно на нескольких рынках пятью разными стратегиями, обогнал трейдеров-людей. Точных цифр я уже не припомню, но ориентировочно он заработал в три или четыре раза больше.
На этом история не закончилась. Через несколько месяцев один из двух трейдеров, торговавших на мои деньги, решил уволиться. Он не хотел больше выплачивать 50 % от заработанного мне. Что же, я его понимаю, возможно, на его месте я поступил бы так же. Второй же трейдер потребовал, чтобы его комиссионные выросли с 50 % до 80 %, иначе он тоже вынужден будет уйти. В итоге мне пришлось расстаться с обоими. На этом эксперименты с людьми закончились. Теперь на меня работают только роботы. За несколько лет я собрал успешную группу программистов, которые совершенствуют мои торговые алгоритмы. Благодаря современным платформам я научился создавать роботов без использования программного кода, это сильно упростило задачу.
Торговые роботы – это не ближайшее будущее, а абсолютно реальное настоящее!
У роботов, впрочем, есть как плюсы, так и минусы, давайте их сейчас разберем. Человек в трейдинге обладает потрясающими возможностями, которыми пока не обладает робот – это самообучение и адаптация. Самообучающиеся автоматизированные системы уже есть, но вы вряд ли на данном этапе сможете их создать. Будучи человеком, вы способны приобретать новые навыки и быстро приспосабливаться к постоянно меняющемуся рынку. Причем адаптация происходит не после того, как рынок уже сказал свое слово, а в режиме реального времени.
Однако, обладая всеми этими преимуществами, человек наделен целым набором не подходящих для трейдера качеств. Давайте их перечислим:
• чрезмерное доверие интуиции (торговля не по системе);
• неспособность неукоснительно следовать правилам, даже своим (частое нарушение собственной стратегии по различным причинам);
• с трудом контролируемая эмоциональность;
• ограниченная работоспособность (невозможность торговать 24 часа в сутки, использовать большое количество стратегий одновременно, а накопленная усталость снижает внимание);
• большое количество психологических ограничений – страх, жадность, депрессия и т. д.
Давайте разберем некоторые моменты из этого списка.
Торговля не по системе
Человек, в отличие от робота, может торговать так, как ему заблагорассудится. Даже не зная о трейдинге совсем ничего, вы все равно в состоянии совершать сделки, основываясь исключительно на интуиции. Итог известен всем – частичная или полная потеря торгового счета.
Невозможность торговать 24 часа в сутки
Человек не способен торговать круглые сутки семь дней в неделю. Все это называется физическими ограничениями. Человеку необходимо спать, ходить в душ и просто прогуливаться на свежем воздухе. Я уже не говорю, о том, что человек существо социальное, и ему необходимо выходить из дома и общаться с родными и близкими.
Имеются еще ограничения, связанные с часовыми поясами. Например, трейдеру, проживающему в Лос-Анджелесе, будет очень неудобно торговать на европейских площадках и наоборот. В данном случае роботы будут отличным решением.
Ограничение стратегий
Человек физически не способен использовать одновременно большое количество стратегий. Я помню, что мог сосредоточиться максимум на четырех системах, после чего уже не успевал уследить за графиками. Безусловно, чем больший таймфрейм для торговли вы берете, тем за большим количеством стратегий успеваете следить. А как же быть, если вы хотите торговать сразу на нескольких рынках, используя десятки инструментов? Боюсь, в этом случае вы обречете себя на постоянные стрессы. Ведь быть сконцентрированным все время – очень сложно. Вы не сможете протянуть в таком темпе более трех – четырех лет. Поэтому я рекомендую отойти от модели отслеживания большого количества инструментов и стратегий вручную. Сегодня это можно поручить торговым роботам.
Бездушные машины: за и против
В течение всей книги я вам рассказывал про эмоциональную составляющую трейдинга, и надеюсь, что сейчас вы стали лучше понимать, какое влияние она оказывает на трейдера.
Страх – очень мощный катализатор, способный испортить жизнь любому трейдеру. Он парализует волю, не давая зарабатывать.
Среди эмоциональных проблем в торговле есть и такие, как жадность и надежда. Находясь в позиции, которая приносит хороший доход, вы можете пожадничать и не закрыть ее на целевом уровне в надежде, что цена продолжит движение в вашу сторону. Но рынок расставляет все на свои места.
Робот полностью лишен эмоций. Ему все равно, сколько вы заработаете или потеряете. Он в любом случае будет четко исполнять заложенную в него торговую стратегию.
Теперь давайте разберем плюсы и минусы торговых роботов.
Если не брать во внимание самые совершенные торговые алгоритмы, то робот не может самообучаться так же быстро, как человек. Адаптация его к текущему рынку – задача ресурсоемкая и финансово затратная. Поэтому на начальных этапах внедрения торговых роботов важно не забывать про отсутствие у них подобного качества.
Часто встречаются проблемы с ошибками в коде. Ни в коем случае нельзя давать новому торговому роботу в управление большую сумму. Ведь не исключено, что вы упустили в алгоритме какие-либо параметры, и в итоге машина очень быстро потеряет деньги.
Такой случай произошел со мной на заре роботостроения. Помню, я попросил своих программистов написать робота по стратегии, которую уже давно практиковал сам. Они написали, и поначалу все шло просто прекрасно. Робот совершал сделки именно так, как я и заказывал. Спустя пару недель я решил, что тестовые испытания на небольшом объеме пора завершать и теперь можно доверить гораздо больший объем данному алгоритму. Я открыл программный код (в те времена программисты не делали интерфейсы к торговым роботам, поэтому приходилось менять параметры напрямую в коде) и увеличил количество торгуемых фьючерсных контрактов с 5 до 50. Сохранил изменения и перезагрузил робота. После этих несложных процедур я снова запустил алгоритм в работу. И, о Боже! Робот начал беспорядочно покупать и продавать. Сначала он покупал 50 контрактов, а затем в течение долей секунды продавал их. Затем вставал в короткую позицию и через полсекунды закрывал ее, открывая сразу же длинную. За те десять секунд, пока я наблюдал за происходящим, мой счет потерял более $25 000. На 12 секунде работы я просто выдернул вилку компьютера из розетки.
Как позже выяснилось, влезая в программный код, я случайно перепутал строчку. И вместо того чтобы увеличить количество контрактов, я изменил один из других важных параметров. Робот стал в десять раз более чувствителен к рынку. Этот урок я запомнил на всю свою жизнь. Теперь я без лишней нужды стараюсь не лезть в программный код. Для этого у меня есть своя команда профессиональных программистов. Но бывает, что и они ошибаются, – ведь все мы люди и не застрахованы от этого.
Я не хочу вас пугать, но торговый робот при всех его положительных качествах – все же не игрушка.
Чтобы вы не повторяли моего неудачного опыта, я рекомендую вам сделать следующее.
1. Начать создавать торговых роботов с помощью специальных программных комплексов, таких как Wealth-Lab и TSLab. Причем последний позволяет новичкам создавать торговые алгоритмы без знания языка программирования. Когда я учу новых трейдеров основам роботостроения, мы всегда начинаем именно с программы TSLab. Благодаря так называемым кубикам и технологии Drag&Drop даже самый далекий от программирования новичок в течение недели – двух запускает как минимум парочку роботов в торговлю.
2. Первые три – шесть месяцев торговать с помощью роботов небольшими объемами, чтобы понять основные сильные и слабые стороны ваших алгоритмов.
И в заключение скажу вам, как сказал бы своему лучшему другу, если бы он решил начать карьеру трейдера: настоятельно рекомендую использовать торговых роботов. Как показала практика, те трейдеры, которые переключились с ручной торговли на автоматизированную, обошли своих коллег по цеху. Статистика свидетельствует, что около 60–70 % трейдеров, использующих автоматические торговые системы, стали зарабатывать. Результат, на мой взгляд, красноречивый.
Как построить торгового робота в домашних условиях
Итак, вы решились на создание своего первого робота. И сразу у вас появляется огромное количество вопросов, например: какую программу использовать, какие стратегии сейчас работают, где научиться программированию, с чего начинать. И это только самые первые вопросы. Чем глубже вы будете погружаться в мир автоматических торговых систем, тем больше их у вас будет возникать. Что я могу вам порекомендовать? Кончено, лучше всего посетить несколько моих вебинаров по роботостроению, после этого посмотреть различные видеоролики на YouTube. Но на самые базовые вопросы вы получите ответ прямо в этой книге. Начнем с самого начала.
Где и какому программному языку учиться
В эпоху информационных технологий для создания несложных роботов необязательно знать язык программирования. На рынке есть несколько торговых платформ с интерфейсом, позволяющим задавать алгоритмы. Прежде всего, хочется отметить один из передовых комплексов по созданию автоматических торговых систем – программу TSLab. С ее помощью можно создать робота буквально за несколько кликов.
Еще одна платформа, которой пользуется большое количество трейдеров, называется Wealth-Lab. В последней версии программы реализована возможность создавать несложных торговых роботов без знания языка программирования.
Но все же, если вы собираетесь перейти в высшую лигу роботизированной торговли, то вам придется заняться изучением языка программирования. Как правило, большинство трейдеров выбирает язык C#. На нем пишут самые сложные торговые стратегии.
Каких торговых роботов создавать в начале
Как только вы открыли для себя мир автоматических торговых систем, сразу же встает вопрос – с чего начинать? Хочу вас обрадовать. Как и во всех новых науках, начинать необходимо с самого простого – построения индикаторных торговых систем. Что это означает? А то, что вы начинаете реализовывать стратегии, базирующиеся на самых распространенных индикаторах, описание которых найдете в любой книге по техническому анализу. Я бы рекомендовал начать с построения простых трендовых стратегий, таких как пересечение двух скользящих средних и Parabolic SAR. Как показала практика, данные системы достаточно легко строятся, и новичкам в мире автоматического трейдинга не составит труда создать их без помощи профессионала. Благодаря Интернету вы сможете найти десятки примеров. Достаточно зайти на сайт youtube.com и набрать в поиске «создание торгового робота в Wealth-Lab», и тут же на вас хлынет поток видеороликов.
Виды торговых роботов
Как вы уже поняли, рынки бывают трендовые и боковые (без явного тренда). Исходя из этого простого определения вы должны четко понимать, под какой тип рынка создается торговый робот. Например, если ваш робот торгует по пересечению двух простых скользящих средних (simple moving average), то он будет зарабатывать только в том случае, если на рынке образовался тренд. Как только начинается боковое движение, робот перестает зарабатывать, а все больше теряет. Как же обезопасить себя от убытков в боковом движении?
Благодаря тому, что всю механическую работу вы можете переложить на программу, вам останется лишь одно – создавать свою армию торговых алгоритмов. Поскольку вы знаете, что рынки могут быть не только трендовые, то необходимо разработать системы, которые бы торговали в боковом движении. Благодаря предыдущим поколениям трейдеров велосипед изобретать не придется. Уже сейчас в свободном доступе вы сможете найти описание десятков контртрендовых систем. Одним из самых распространенных является индикатор RSI. Основная его задача – находить так называемые перекупленности и перепроданности рынка. Как только рынок сильным движением прошел либо вверх, либо вниз, можно ожидать откатное движение. И вот именно на этом мы и пытаемся заработать, используя данный индикатор. RSI в сочетании с трендовыми системами позволяет сглаживать кривую доходности. Но на одном лишь RSI лучше не останавливаться. Рекомендую также присмотреться к индикаторам Momentum и Stochastic. В любом случае вам необходимо иметь под рукой книгу по техническому анализу. И желательно, чтобы это была достаточно толстая книга, где подробно рассказывается про множество различных индикаторов. Чуть позже я расскажу вам, как тестировать и оптимизировать торговые системы. Но, забегая вперед, скажу, что теми параметрами к индикаторам, которые предлагаются в книгах, лучше не пользоваться. Их следует подбирать индивидуально, исходя из результатов тестирования.
Скептики технического анализа и индикаторных систем сейчас, скорее всего, начнут обвинять меня в том, что я запудриваю мозги, но на самом деле это не так. Раньше я тоже думал, что индикаторами пользуются только новички, но, как показала практика, правильно оптимизированные индикаторные торговые системы могут давать просто феноменальный результат. Ко всему прочему сам по себе индикатор уже написан, и для начинающего трейдера гораздо проще адаптировать уже существующую торговую систему, нежели создавать что-то новое.
В скептиков технических индикаторов обычно превращаются те, кто не умеет их правильно тестировать.
Тестирование, оптимизация и доведение до ума
Сейчас я попробую вкратце рассказать о том, как правильно тестировать, оптимизировать и запускать в работу торговый алгоритм. Заранее прошу прощения за то, что оставлю в стороне большое количество второстепенных вопросов. Изначально данная книга создавалась для трейдеров, у которых немного опыта, а значит, грузить их дополнительным количеством технической информации представляется лишним. Моя задача – дать вам базовые точки, от которых вы сможете отталкиваться в трейдинге. Например, если вам понравился раздел данной книги, посвященный торговым роботам, то как дополнение рекомендую прочитать книгу Роберта Пардо «Разработка, тестирование, оптимизация торговых систем для биржевого трейдера» (Robert Pardo. Design, Testing and Optimization of Trading System). В ней детально рассказывается о том, как правильно строить торговые системы.
Но пока вы еще не прочли эту книгу, я проведу ознакомительную лекцию о том, как мы, профессиональные трейдеры, создаем торговые системы, как их тестируем и запускаем в работу с миллионами долларов. Готовы? Тогда начинаем!
А миллион так близко
Итак, вы приобрели один из терминалов для тестирования торговых систем. Напомню, как вариант я предлагал либо Wealth-Lab, либо TSLab. Последний больше подходит для новичков, в то время как первый будет интересен людям с математическим складом ума и достаточным упорством, чтобы выучить язык программирования C#.
Теперь вы намереваетесь протестировать простую стратегию – пересечение двух скользящих средних на одном из ваших любимых инструментов. Все выглядит достаточно просто. Построив по алгоритму систему, вы нажимаете кнопку «Протестировать и оптимизировать». Программа начинает работать и искать для вас идеальные параметры двух скользящих средних, исходя из таймфрейма и периода, который вы установили. Спустя пару минут умная машина выдает график доходности за прошлый год, который показывает, что с заданными параметрами вы должны были заработать просто бешенную сумму (рис. 9)! Вот где клад, думаете вы. По сути, теперь вам нужно лишь применить предложенные параметры на реальном рынке и ждать свой первый миллион. Но, я думаю, вы догадываетесь, что если бы все было так просто, то все давно бы уже стали мультимиллионерами.
Если вы примените полученные параметры на реальном рынке, то скорее всего очень быстро потеряете деньги. То, что вам выдала программа-тестировщик, называется «подгонкой». Она нашла идеальные параметры, которые соответствуют историческим данным. Но мы же прекрасно понимаем, что «вчера» и «завтра» могут сильно отличаться. Например, представим ситуацию, что у нас есть некий терминал, благодаря которому мы можем провести тестирование всех футбольных матчей и тем самым определить будущих победителей. Программа, зная все результаты игр за прошлый год, точно ответит на вопрос, на какую команду стоит ставить. Но что нам это дает? Например, если бы мы протестировали футбольные матчи сборной Испании за три года, то на Чемпионате мира 2014 года должны были бы поставить на победу именно этой команды. Накануне мундиаля в Бразилии она являлась действующим чемпионом Европы и мира. Но, к разочарованию многих, испанцы даже не смогли выйти из группы, проиграв сборной Нидерландов 1: 5.
Уоррен Баффетт говорит, что не стоит принимать решение о том, что будет в будущем, глядя на дорогу через зеркало заднего вида. Или, как говорят в народе, «задним умом мы все сильны».
Исходя из этого я подготовил для вас ряд опорных точек, придерживаясь которых, вы с большой вероятностью сможете построить сбалансированную торговую систему.
Первые шаги
Целью оптимизации торговой системы является выбор наиболее эффективных параметров для торговли на реальном рынке. Первое, на что стоит обратить внимание, – это величина просадки системы. Просадка – это наибольшее отклонение системы от максимума. Например, наш портфель с $1000 вырос до $2000, а потом скорректировался до $1500. В данном случае величина «просадки» будет 25 %. Что же нам дает данная величина? Исходя из тестов мы знаем, что выбранная стратегия может потенциально скорректировать наш портфель на 25 %. В этом случае нам нужно быть морально готовым к таким потерям и обязательно учитывать просадку при торговле с плечом. Если мы будем использовать данную торговую систему с плечом 1 к 2, то при негативном сценарии потеряем 50 % счета. То есть исторические данные дают нам информацию о том, какой убыток может быть у системы. Новичков, конечно, намного больше интересует потенциальный доход, а уже закаленные в боях профессиональные трейдеры внимательно смотрят на просадку.
Чем меньше просадка, тем больше плечи вы можете использовать и как следствие – больше денег заработать.
Чем меньше параметров, тем лучше
Неопытные трейдеры стараются добавить как можно больше различных параметров. Например, для простых скользящих средних устанавливают три разных тейк-профита и два стоп-лосса. Или пытаются сделать так, чтобы размер позиции динамически менялся. Все это выглядит очень круто в теории и на тестах, но как только мы включаем данные параметры в работу на реальном рынке, все надежды испаряются. Чем больше параметров вы добавляете к своей системе, тем больше она подвержена риску поломки.
Будущее нельзя предсказать, но можно предположить, что будет происходить с ценой. Точно известно, что на рынке периоды трендов сменяют периоды застоя, когда цена движется в боковике, и наоборот. Но мы не знаем точных динамических параметров. Будет ли тренд молниеносным или плавным. А может, он окажется рваным. Поэтому чем меньше жестких условий вы ставите своей торговой системе, тем гибче она работает на непредсказуемом рынке.
Тонкая настройка
Еще одним важным параметром при тестировании системы является количество сделок за период. Правило гласит: чем больше операций провела система, тем лучше. Почему так, спросите вы? Все просто. Если вы обеспечили положительный результат при высокой торговой активности, значит система работоспособна в самых разных ситуациях. Я рекомендую, чтобы при тестировании у вас в истории было не менее 30–50 сделок, иначе система будет очень слабой.
Также стоит помнить об одном важном нюансе. На одну сделку не должно приходиться более 15–20 % прибыли за период, иначе все будет сводиться к тому, повезет ли в следующий раз взять в одной сделке столько же денег или нет. Идеально, если прибыльные сделки приносят по 2–5 %, а убыточные не отнимают более 0,5–1 %. В этом случае кривая роста вашего портфеля будет достаточно устойчивой.
Оценка результатов тестирования
Если при тестировании вашей системы вы видите, что положительный результат сохраняется лишь при незначительном отклонении параметров, то скорее всего она слишком подогнана под исторические данные, и на реальном рынке будет нежизнеспособна.
Идеально, если вы будете менять параметры в разных диапазонах, а система все равно будет оставаться прибыльной. Например, вы тестируете две скользящие средние, и система выдала вам идеальные параметры типа 200 и 100. Теперь вы немного изменяете их: скажем, вместо 200 ставите 250, а вместо 100–125. И смотрите снова. Если система остается прибыльной на тестировании, это хороший знак. Для нас здесь не важно, что прибыль сильно упала, важно понимать, что стратегия зарабатывает в широком диапазоне параметров.
Есть еще один трюк, которыми пользуются опытные трейдеры. Он заключается в следующем. Допустим, сегодня на дворе 2014 год. Мы задаем системе период тестирования нашей стратегии за 2010–2012 годы. Естественно, сначала мы получаем идеальный результат, так как мы уже знаем: программа-тестировщик определяет его по истории торгов. Теперь берем полученные параметры (в случае скользящей средней, например, 200 и 100) и тестируем их результативность отдельно на данных 2013 года. Если эти параметры показали неплохой результат, то можно переходить к 2014 году, если нет, то придется тестировать 2010–12-е годы, заново добавляя еще и 2013 год.
Если полученные параметры работают в 2014 году, то все отлично. Но это происходит редко, поэтому приходится тестировать сначала каждый год отдельно, затем периодами и уже исходя из полученных данных находить некие средние значения. Все это называется форвардным тестом.
Как и предупреждал, я оставил без внимание довольно много аспектов тестирования и оптимизации. Однако, я рассчитываю, вы найдете массу полезной для себя информации в моем блоге по адресу: mr-xelius.livejournal.com, а также в книге Роберта Пардо.
На этом я хочу с вами попрощаться. Надеюсь, моя книга позволит вам понять многое о трейдинге и даст значительное преимущество перед другими участниками рынка.
Главное – никогда не переставайте учиться.
Задания
1. Установите либо программу Wealth-Lab, либо TSLab и, пользуясь встроенными инструкциями, попробуйте протестировать простейшие торговые стратегии, такие как пересечение двух скользящих средних и Parabolic SAR.
2. Если вы предпочитаете торговать валютой, то можете провести тестирование стратегий с помощью встроенной функции через торговый терминал Meta Trader 4 или Meta Trader 5.
3. Поделитесь своими впечатлениями, написав мне на e-mail: [email protected]. Обработав отзывы, я сделаю вебинар или запишу обучающее видео, где отвечу на ваши вопросы.