Забыли пароль?

Зарегистрироваться на сайте

Отменить

Непроторенный теханализ

Колодин Денис, Журнал D` (Д-штрих) №05 (65), 9 марта 2009 года

Для торговли на бирже с помощью анализа графиков и создания торговых систем попробуйте программу AmiBroker. Недорого и функционально

Современный трейдер больше не читает ленты новостей, а стремится создать торговую систему. При этом российские трейдеры часто не обременяют себя выбором инструмента для технического анализа и по совету друзей используют MetaStock или Wealth-Lab. На мой взгляд, основная ценность MetaStock — в сервисах, которые на данный момент слабо представлены на российском рынке. Также в программе не очень развиты возможности по кодированию и тестированию ваших стратегий.

Преимущество Wealth-Lab — большая гибкость в разработке систем. До недавнего времени в Wealth-Lab была собственная инфраструктура для разработки систем, и все программы создавались на языке WealthScript, напоминающем Pascal. Сегодня платформа полностью эмигрировала на управляемый код, и стратегии создаются на языке общего назначения C# («Си Шарп»). Производитель обещает безграничные возможности по разработке систем и интеграции их с современными операционными системами семейства Windows, но есть одна тонкость: С# создан для решения широкого круга задач квалифицированными программистами, и погружение в такие понятия, как «полиморфизм», «обработка исключений», «делегаты» и др., может отпугнуть от создания алгоритмов даже профессиональных трейдеров.

Приобретение этих продуктов оправданно, когда вы действительно нуждаетесь в их продвинутых возможностях. Вообще технический анализ можно проводить и в терминале QUIK, но если заглянуть на страницу Wikipedia и набрать в поле для поиска Technical Analysis Software, то глаза разбегаются от существующего многообразия специальных программных средств технического анализа, из которых непросто выбрать инструмент, подходящий именно вам. Поэтому многие предпочитают идти по известному пути, используя лишь несколько функций мощных и знаменитых продуктов. Эта ситуация напоминает навыки работы с микроволновой печью большинства пользователей: как правило, это нагрев жидкости, размораживание и подогрев продуктов с одной стороны на максимальной мощности до появления характерного треска. Мало кто догадывается, что еще в микроволновке можно приготовить, например, вкусный шоколадный торт или сочный лангет, кстати, затратив на все это не более 15 минут.

Я нашел инструмент, который, на мой взгляд, идеально подойдет многим российским трейдерам, использующим технический анализ. Это AmiBroker. Поясню свой выбор.

Во-первых, широкая функциональность: можно проводить анализ графиков, создавать и тестировать торговые стратегии, получать сигналы, проводить исследования рынка, а для оптимизации торговых стратегий имеются несколько различных алгоритмов оптимизации. Во-вторых, невысокая цена: версия Professional, на которой я остановил выбор, стоит меньше $300, а вариант Standard, в котором отсутствует обработка тиковых (внутридневных) данных и есть несколько других ограничений, — меньше $200. В-третьих, терминал QUIK поддерживает экспорт данных для теханализа в AmiBroker. По-моему, это все, что необходимо для проведения технического анализа, создания торговых стратегий и биржевых роботов. Знакомство с программой лучше начать с веб-сайта amibroker.com. Оттуда можно скачать пробную версию. Если в последующем захотите приобрести продукт, вы сможете легко это сделать прямо с сайта, получив ключ к продукту по e-mail.

Лицензия

Итак, приступим. Начну с пояснения самого основного — лицензии. Ее текст содержит классические правила использования проприетарного программного обеспечения. Нельзя вносить несанкционированные изменения в код, передавать ваш ключ третьим лицам и т. д. Хочется отметить лишь одну особенность: вы можете устанавливать AmiBroker на несколько компьютеров, например на работе и своем личном ПК (ноутбуке). Единственное ограничение: запущена программа может быть только на одном компьютере. Поэтому, чтобы начать работать на ноутбуке, необходимо будет завершить работу с программой на рабочем ПК. По одной лицензии могут работать и несколько человек, но программа должна быть установлена только на одном компьютере. Тем не менее на одном ПК один пользователь может запустить неограниченное число экземпляров AmiBroker.

Первый запуск

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

Постараюсь описать основные функции, с которыми вы можете работать. Начнем работу с загрузки данных. Данные в AmiBroker организованы в виде большого числа файлов, поэтому для новой базы данных рекомендуется создать отдельную папку. В главном меню выбираем File — New — Database, после чего появится окно управления базой данных. Укажем место хранения в поле Database Folder, нажав кнопку Browse. После выбора места хранения нажмите Create, чтобы AmiBroker подготовил базу данных (в этот момент создаются служебные файлы и папки внутри указанной). Если вы хотите, чтобы при запуске программы загружалась именно эта база данных, поставьте флажок на Load This Database at Startup.

Теперь необходимо настроить источник данных. Для загрузки данных в формате CSV я выбрал Local Database в списке Data ource. Также поддерживается импорт данных: MetaStock, DDE, eSignal. По желанию можно установить официальный модуль (Plug-in) экспорта из терминала QUIK или создать свой, для чего предоставляются программные интерфейсы. Затем рекомендуется предписать программе сохранять данные, а не загружать их постоянно заново, выбрав Enable в группе Local Data Storage. В поле Number of Bars укажите количество баров для одной бумаги, с которыми вы хотите работать, — от этого параметра зависит требуемый объем памяти. В списке Base Time Interval обозначьте минимальный интервал бара, который можно сохранить в базе данных. Уже в самой программе вы сможете работать с более длинными интервалами путем агрегации данных, при этом увидеть данные за более короткий интервал будет уже невозможно. В качестве примера я буду загружать дневные данные, так как их всегда легче достать, для этого укажу в списке интервал End-of-Day.

Кратко поясню задачи оставшихся кнопок. Назначение Flush Cache так туманно, что про нее стараются вообще не говорить. На самом деле эта кнопка сбрасывает в базу данные, которые хранятся в кэше модуля экспорта. Кэш, или буфер, — область оперативной памяти для временного накопления и хранения данных. То есть база данных не обновляется, пока не накопится достаточное количество информации, для того чтобы лишний раз не инициировать ресурсоемкие процедуры обновления, перерисовку графика и т. д. Без кэширования программа работала бы медленнее, особенно с модулями, передающими данные в реальном времени. Нажав эту кнопку, вы принудительно посылаете данные из кэша на дальнейшую обработку. Это полезно, когда вы знаете, что новая информация поступила, а на вашем графике она не отобразилась; кнопка действует однократно, и нажимать ее придется при каждом желании загрузить данные из буфера. Следующая кнопка Intraday Settings позволяет настроить длительность торговой сессии, время начала и окончания торгов, определить вечернюю сессию (удобно для тех, кто торгует на FORTS). Кнопка Configure предназначена для настройки источника данных. Для каждого источника определены свои параметры конфигурации, например параметры соединения с сервером провайдера данных. Для их корректной установки следует обратиться к документации модуля.

Загрузка данных

После того как база создана, в нее необходимо загрузить данные о ценах той или иной акции. Для их загрузки из CSV-файла нужно выбрать меню File — Import ASCII, затем указать имена файлов с данными. (В качестве источника данных можно порекомендовать сайт Finam.ru, а для их загрузки в программу использовать меню File — Import Wizard. Там же удобно скачать файл с историей цен всех акций ММВБ, разархивировать его и воспользоваться меню File — Import MetaStock Data. — Прим. D.)

Я загрузил один файл с данными по акциям «Газпрома». Нужный вам финансовый инструмент необходимо выбрать в окне Symbols. Программа позволяет группировать инструменты по рынкам, секторам, а также по своему усмотрению. Можно указать инструменты, за которыми ведется наблюдение (Watch Lists), пометить инструмент (Favorites) и отдельно хранить индексы (Indexes).

В окне Information (View — Symbol Information) задаются характеристики бумаги: размер дивидендов, размер лота, шаг цены, коэффициенты P/E, P/S и др. Это полезно для тех, кто учитывает фундаментальные факторы. Также эти значения влияют на работу торгового симулятора.

Когда бумага, с которой вы хотите работать, выбрана, можно начинать анализировать данные. С помощью панели инструментов вы можете использовать различные ценовые каналы, линии тренда и другие фигуры для анализа графиков. Выбранную линию тренда можно обозначить на графике, отметив две точки, через которые она будет проходить. Также легко добавить технический индикатор. Для этого достаточно два раза щелкнуть по имени индикатора во вкладке Charts. Я добавил индикатор MACD. Вы можете изменять параметры индикатора, нажав на нем правой кнопкой мыши и выбрав в контекстном меню пункт Parameters.

В программе имеется полезная функция Bar Replay, имитирующая ход торгов. Вы можете посмотреть, как происходил пробой изображенной линии тренда, выбрав меню Tools — Bar Replay и нажав в появившемся окне кнопку Play. С помощью этой функции можно попрактиковаться в техническом анализе, а учитывая фрактальность колебаний цен в разных временных интервалах, у вас есть практически неограниченное количество данных для совершенствования навыков.

Я перечислил только некоторые возможности программы AmiBroker. О создании и тестировании торговых стратегий будет написана отдельная статья. Следует отметить, что функциональность программы настолько велика, что даже не полностью описана в «родной» документации. AmiBroker может работать совместно с другими приложениями, сигнализировать о пересечении цены с линиями тренда, изображенными вручную (!), и генерировать рекомендации в виде текста, которых так боялся Виктор Нидерхоффер. Поверьте, это очень много для программы за $200.

Проведение технического анализа

Имитация торгов

Настройка базы данных


Мои портфели
Индикаторы
Индексы
MICEXINDEXCF2 047,42–0,4606.03
RTSI1 110,46+0,2006.03
Акции
GAZP134,60–0,1506.03
GMKN9 324–0,1306.03
LKOH3 079–0,2106.03
ROSN332,0–1,3406.03
SBER162,00–1,4606.03
VTBR0,06600,0006.03
Курсы валют
EUR77,64–0,9102.06
USD69,71–1,0402.06
EUR/USD1,09–0,5331.12
GBP/USD1,47–0,4331.12
USD/JPY120,17–0,2831.12
EURUSD_TOM1,060,0006.03
EUR_TODTOM0,02–0,0406.03
USD_TODTOM0,02–0,0306.03
Мировые рынки
Dow17 473,32–0,7431.12
FTSE6 242,32–0,5131.12
Nikkei 22519 033,71+0,2730.12
S&P 5002 049,94–0,6531.12
Золото1 059,98–0,1231.12
Нефть Brent37,6+3,1331.12