Тестирование опционных стратегий в Omega TradeStation
То что любая торговая стратегия на акциях проходит бэк-тэстинг, или проверку временем – не у кого не вызывает сомнения. Но с опционными стратегиями дело, как правило, обстоит несколько иначе. Возможно, это связано с предполагаемой сложностью реализации (это абсолютно не так), или как чаще всего бывает: тестирование ограничивается сложными формулами на бумаге или доказательством статистического преимущества. В любом случае, никакие формулы не заменят бэк-тэстинга, а как часто бывает, новые идеи, возникают во время осмысления полученных результатов. А оптимизация в этом смысле просто создаёт почву для размышления, и никак не для того что бы использовать полученные результаты в окончательном варианте для реальной торговле.
Иной раз приходилось использовать абсурдные вещи: делать сигнал на открытие позиции с параметром k контрактов, где k принимает +1/-1, т.е. на “как и было”/ “поменять покупку на продажу и наоборот”. Оптимизация это та чёрная работа, которую компьютер может сделать лучше человека. Это к тому что и опционов много и параметров тоже.
Итак, что бы провести тестирование стратегии на опционах Omega – наилучший инструмент для этого (после Excel конечно). Для этого не обязательно иметь данные по всем страйкам опционов, со всем возможными датами погашения. А достаточно иметь дневные свечи по активу (spot) и волатильности (implied volatility). Возьмем, к примеру на Yahoo Finance, QQQQ(Trust Shares NASDAQ 100) и ^QQV(QQQ Implied Volatility Index), и загрузим их в Omega как показано на рисунке ниже:

Рис. 1. Тестирование опционной стратегии.
Для этого сначала загружается QQQQ, после клавишей F5 добавляется Data2.
Оценка волатильности
Это статья может оказаться полезной тем, кто впервые слышит это слово, и тем, кто давно торгует «вегой». Итак, волатильность (volatility) – это нормированная величина изменения цены. И от того как будем измерять движение цен зависит какую волатильность мы получим. Важно лишь то что это абсолютная величина, в отличии от ATR (Average True Range), т.е. если ATR на Сбербанке, к примеру 300, а на РАО ЕЭС, к примеру 0.1, это не значит что Сбербанк более волатильный, а роль играет процентное соотношение. Таким образом, зная эту абсолютную величину мы можем сказать, цена на какой актив более подвижная.
Волатильность бывает двух типов, можно придумать и больше, но фактически они подходят под эти два: историческая (historical) и ожидаемая (implied). Историческая - это волатильность, оценка которой проведена на основании исторических данных на этот актив. Ожидаемая волатильность - это такая волатильность, которая при подстановки в формулу Блэка-Шоулса даст цену последней сделки на опцион с ближнем погашением и страйком. Таким образом, ожидаемая волатильность имеет смысл, только если на этот актив торгуются опционы.
GA4TS.DLL – Генетический алгоритм для TradeStation
GA4TS – динамическая библиотека, предназначенная для оптимизации стратегий по одному или нескольким критериям в TradeStation Omega(any version).
Достоинства алгоритма реализованного в GA4TS:
- Возможность поиска оптимальных по Парето решений.
- Поиск осуществляется методом Генетического Алгоритма.
- Большáя скорость сходимости, на порядки выше других аналогичных методов (ГА).
- Высокая точность вычислений.
Данная библиотека в себя включает:
- Библиотека позволяет использовать все возможности алгоритма.
- Возможность использования через специальный интерфейс во всех версиях TradeStation Omega.
- Возможность настройки, и коррекции параметров репродуктивного цикла в Генетическом Алгоритме.
- Добавление в базовую популяцию, заведомо известных, хороших решений.
- Побитовая точность вычислений.
- Фильтрация данных, при выводе.
Использование ГА, оправдывает себя тех случаях, где требуются действительно, колоссальные вычислительные емкости. А быстрая сходимость ГА, позволяет решать задачи, эквивалентные перебору 1050, всего за несколько часов. Скорость же сходимости данного метода, на порядки выше других реализаций ГА. В данном контексте, под скоростью понимается, количество проделанных итераций (вычислений отдельного элемента или стратегии с конкретными параметрами).
Для этого рассмотрим пример из MATLAB’а: Rastrigin’s Function (рис. 1), в описании к Genetic Algorithm and Direct Search Toolbox. Функция имеет вид:
Ras(x,y) = -(x2+y2)+10(-2 + cos(2πx) + cos(2πy)),
в которой, совершены тождественные преобразование для сохранения точности вычислений, т.к 1 +10-16 на ПК как правило равно 1.

Рис. 1. Rastrigin’s Function.
Спрэд. За или против?
Говорить о том, что рынок в России – растущий рынок развивающихся стран, я думаю, не стоит, потому что он иногда падает. А то, что рынок трендовый, пока ещё, не у кого сомнения не вызывает. Т.е лучше всего на российском рынке работают трендовые стратегии.
Как работает трендовая стратегия: когда пробивается какой-либо установленный уровень, происходит исполнение стоп-ордера. Учитывая то, что комиссия на российском рынке достаточно маленькая (у большинства брокеров 0.05%), а ликвидность на многих инструментах оставляет желать лучшего, то очень важно как будет исполнен стоп-ордер.