Данный раздел сайта посвящен теории и практике создания торговых систем,
статья и исследования по рынкам (мои и других авторов), а также
примеры сигналов и стратегий на языке Easy Language для Omega
Research. Материалы будут постепенно добавляться по мере подготовки.
РЦБ, 01/01/2006
Сага о механических торговых стратегиях
Автор: Кондратенко Юрий, аналитик ИК "Брокеркредитсервис" [pdf]
Механические торговые системы (МТС) (торговые роботы, торговые автоматы)
— предмет постоянного поиска и исследовательской работы трейдеров. Если
сокровенный алгоритм найден и запрограммирован, то, подключив его к биржевому
терминалу, мы получим машину по производству денег. Рассмотрим, что же
представляют собой МТС, какие преимущества и недостатки несет в себе использование
автоматизированной торговли.
Понятие МТС
Изначально компьютерную торговлю стали применять на взаимосвязанных рынках,
например отслеживать ситуацию на фьючерсном и спот-рынке. В настоящее время
механическая торговля используется в любых вариациях. МТС — это набор правил,
которые однозначно определяют позицию на рынке (длинная, короткая или вне
рынка). В идеале МТС полностью устраняет участие человека в процессе торговли.
Для этого система должна генерировать два вида сигналов: когда и по какой
цене покупать и когда и по какой цене продавать (последнее может быть как
с прибылью, так и с убытком).
Как правило, в распоряжении МТС имеется история изменения котировок
по инструменту на текущий момент. Основой МТС являются закономерности,
характеризующие поведение цен на финансовом рынке. Необходимое условие
для использования торговой системы — положительное математическое ожидание
результатов сделок. Глупо использовать систему, которая не дает статистического
преимущества на исторических данных, не говоря о будущих сделках. С другой
стороны, одного положительного математического ожидания не достаточно для
выбора эффективной торговой стратегии.
Выбор наилучшей МТС часто определяется следующими критериями:
- итоговой прибылью системы;
- максимальной или средней «просадкой» счета (Draw Dawn);
- соотношением ожидаемой прибыли и риска (коэффициент Шарпа);
- доходностью стратегии по отношению к системе «купил и держи»;
- мерами случайности полученного дохода.
Разнообразие систем зависит от фантазии и математической подкованности
автора. В простых системах используют классические индикаторы типа скользящих
средних, осцилляторов, но на стабильность положительных результатов в данном
случае рассчитывать не приходится в силу высокой популярности этих методик.
Не в ущерб оригинальности МТС желательно, чтобы базовых правил/сигналов
было как можно меньше. Обычно 1 сигнала на вход и 2—3 сигналов на выход
достаточно.
Идеальное место для применения МТС — срочный рынок. Сигналы системы,
отслеживающей спрэды между фьючерсными контрактами и базовым активом и
выполняющей различные опционные стратегии, практически невозможно оперативно
осуществить самому трейдеру. В таких случаях торговые роботы незаменимы
при выполнении арбитражных операций.
В арсенале любой МТС должен быть сигнал на выход с убытком — так называемый
stop-loss. Размер допустимого убытка зависит от продолжительности
удержания позиции и ожидаемой прибыли на сделку и находится,
как правило, в пределах
3—5%. Чтобы система не выходила из позиции при первом же
встречном движении, величина стоп-лосса должна быть согласована
с волатильностью инструмента.
Важным моментом в создании МТС является ее оптимизация. Редко
встречаются системы, которые не зависят от параметров (простой пример
параметра — период скользящей средней). При подборе оптимального параметра,
мы рискуем подогнать систему под исторические данные, т. е. максимизировать
критерии эффективности на прошлых данных, а не на будущих. Для решения
этой проблемы, во-первых, систему тестируют на разных временных участках
и временных разрешениях, а также проверяют на данных out of frame, которые
не использовались при оптимизации. Во-вторых, стараются применять адаптивные
методики, когда параметр системы меняется в зависимости от характера
поведения цены. Примером подстраивающейся методики может служить адаптивная
скользящая средняя Кауфмана (KAMA), основанная на фрактальной эффективности.
Поскольку рынки постоянно меняются, систему периодически необходимо
проверять с учетом новых данных. Особенно это актуально, если в последнее
время система имела серьезную «просадку». В таком случае либо пересматриваются
параметры системы, либо признается тот факт, что система перестала работать,
и отказываются от нее.
Технология работы МТС
Каждый тик МТС анализирует поступившую информацию о котировках, проверяет
логические условия и формирует управленческое решение.
Решения в виде заявок отправляются на биржу. Кроме того, система должна
контролировать исполнение заявок, рассчитывать размер открываемых позиций,
поэтому МТС получает отчеты о сделках и состоянии счета. Общая схема работы
МТС представлена на рис. 1. Техническая реализация МТС имеет несколько
вариантов.
Вариант I. Трейдер, получая торговые приказы (alerts) из программы
технического анализа, самостоятельно решает, размещать их на бирже или
нет. Это наиболее распространенный способ использования МТС. Недостатком
такого метода является постоянное присутствие трейдера на рабочем месте,
низкая скорость выполнения приказа, а также влияние психологических факторов.
Среди «плюсов» можно выделить возможность корректной обработки нештатных
ситуаций и уровня ликвидности на рынке.
Вариант II. Выбирается торговый терминал, в котором есть функционал
динамической закачки заявок из файла и встроенный язык программирования,
например программа СМВБ QUIK. После этого используется программа технического
анализа, которая: 1) может получать в режиме он-лайн котировки из торгового
терминала; 2) позволяет создавать торговые стратегии; 3) дает возможность
читать файлы и переписывать их на жесткий диск. Всем этим требованиям
удовлетворяет программа для технического анализа Omega Research ProSuite
2000i. Таким образом, использование двух программ — QUIK + Omega Research
— просто и удобно в обращении.
Вариант III. Если возможностей готовой программы для
технического анализа недостаточно, при определенных затратах
можно создать собственный
продукт. Главное преимущество такого подхода состоит в том,
что при использовании полнофункциональных языков программирования
(С++, Delphi) практически
отсутствуют ограничения на реализацию ваших идей. Например,
в программе Omega Research нельзя построить свечи с равными
объемами или протестировать
систему на портфеле акций. Злую шутку в таком случае может
сыграть «низкое качество» собственной программы, заключающееся
в наличии серьезных ошибок
в коде. Кроме того, недостатком этого подхода являются значительные
временные и материальные затраты на создание и тестирование
собственной оболочки.
Таким образом, выбор для трейдеров с запросами — QUIK + Собственный
продукт.
Вариант IV. Если не устраивает и программа для создания
МТС, и торговый терминал, то создается единая система торговли,
способная общаться с сервером биржи напрямую. Необходимость
создания такой платформы
может
быть вызвана стремлением сократить время реагирования программы.
В частности, при активной торговле очень важно уметь быстро
выставлять/снимать заявку.
Кроме того, нет надобности тратить время на передачу котировок
между двумя программами. Для реализации этого варианта,
скорее всего, придется нанять
профессиональных программистов. На конференции «Вопросы
системной торговли — 2005» были озвучены принципы разработки
примерно такого проекта.
Из всех озвученных подходов потребностям
рядового трейдера полностью удовлетворяет лишь первый вариант.
Необходимость в реализации второго и третьего вариантов
возникает только при решении
неординарных задач.
Риски использования МТС
Развитие современных технологий позволило торговать на финансовых рынках
через Интернет, не выходя из дома. Привлекательные возможности принесли
с собой и новые риски. Рассмотрим использование торговых роботов, где
исключено участие человека в торговле.
Банальное выключение электричества полностью обезоруживает
Вашу систему. Наличие устойчивого канала соединения с Интернет
также является необходимым условием для работы МТС. Программное обеспечение
должно работать стабильно и не «подвешивать» компьютер при
повышении
активности торгов, а также не содержать критических ошибок,
при которых МТС начинает «раздавать приказы» направо и налево.
Более специфичные риски могут возникнуть, когда встает вопрос
о ликвидности рынка. При разработке МТС априори закладывается
некоторая величина «проскальзывания» — разница между теоретической
и реальной
ценой исполнения. В некоторых случаях «проскальзывание»
может в разы превышать допустимый уровень, особенно на
«быстром» рынке или при торговле
акциями «второго эшелона». Это тоже надо учитывать.
Кроме всего прочего, в МТС должен быть модуль, контролирующий
общие потери за операционный день. Если убытки превышают
предельно допустимое значение, то система делает «аварийный
выход» — независимо от ситуации
на рынке ликвидируются все позиции и торговля прекращается.
«Аварийный выход» необходим, чтобы защитить себя от
чрезмерных потерь, вызванных
непредвиденными обстоятельствами (поступление ошибочных
котировок, крах на бирже и пр.).
Вместо заключения
До сих пор мы не сказали о главном «плюсе» использования МТС — психологической
уверенности в решениях, принимаемых с помощью торговой системы.
Торговля на финансовых рынках всегда сопряжена со стрессом.
Трейдер расстраивается,
когда исполняет стоп-лосс. При фиксировании прибыли не дает
покоя мысль о части упущенных доходов. Одним словом, синдром
неверно принятого решения
— злейший враг трейдеров, расшатывающий психику и приводящий
к разорению. Применение МТС в трейдинге обосновывает каждое
решение и снимает психологическую
нагрузку на трейдера.
|