Проектирование тестера опционных стратегий
Мало что удивляет с годами… Но отсутствие стандартного, т.е. встроенного в к.н. торговую
платформу тестера для проверки опционных стратегий, честно говоря, заставило задуматься:
— то ли это никому не нужно и на то есть объективные причины,
— то ли это в сочетании с относительной сложностью самих опционов превосходит некий порог
сложности для предполагаемых пользователей,
— то ли … еще есть какие-то причины, о которых хотелось бы узнать
Тем не менее, задача создания такого тестера кажется в достаточной степени решаемой,
повторюсь, м.б. в силу не полного осознания чего-либо.
Более того, если даже не удастся создать тестер стратегий в полном понимании смысла, то, имхо,
будет полезным создание ПО, позволяющего выявлять и классифицировать некие ситуации/
комбинации, периодически возникающие на широком опционном поле.
«Замахнувшись на Вильяма нашего Шекспира », в этом посте изложу свой взгляд на то, каким
должен быть тестер опционных стратегий, т.е. фактически попытаюсь создать ТЗ для его создания.
1. Входные данные (структурированные наборы):
a. БА-вы (здесь именно активЫ)
i. любые типы баров произвольных тайм-фреймов [в общем случае формат: DateTime, Open, High, Low, Close, Volume]
ii. квотес [формат: DateTime, AskSize, AskPprice, BidPrice, BidSize]
b. Опционы (для конкретного страйка и направления)
i. ценовые бары OHLCV произвольны произвольных тайм-фреймов (другие из известных источников истор. данных мне не доступных, возможно они есть и актуальны — напишите) [формат: аналогичный БА]
ii. квотес [формат: аналогичный БА]
2. Производные данные
a. для БА и опционов макс. возможный набор индикаторов из известных и/или возможность создать как стандартные, так и авторские
3. Методы
a. для опционов встроенные методики расчета греков, их производных и пр. (нумерным и аналитическим методом)
i. Generalized Black-Scholes
ii. French Black-Scholes
iii.Whaley
iv.Bjerksund-Stensland
v. Binomial
vi.Jump-Diffusion
vii.American Call
viii.… что еще?
b. Методы сглаживания/интерполяции/….?
c. Метод ы оценки подобия/близости
d. Численные методы поиска решения
4. Создание стратегии
a. Наличие известного языка программирования для написания МТС
5. Тестирование стратегии
a. тестирования на историч. данных
b. оптимизация параметров МТС
6. Отображение
a. Графиков цены БА и опционов
b. Индикаторов
c. Сделок
d. Фин. Состояния (эквити и пр.)
Оглядывая этот, прямо скажем, не затейливый пока перечень, прихожу к выводу, что 80-90%% в
наличии. Осталось интегрировать разрозненные компоненты в единое целое.
Буду оч. благодарен за критические замечания, дополнения и пожелания
=================================================================
Вот такой пост был написан примерно месяц назад. Дела отвлекли от его публикации
За это время тестер был собран и запущен в эксплуатацию.
Но, т.к. собирался он под личные нужды, червячок сомнения остался — все ли было учтено при его создании? возможно, какие-то функции нужно добавить/расширить? и т.д.
Поэтому повторюсь:
Буду оч. благодарен за критические замечания, дополнения и пожелания
Если есть предложения по тестированию тестера, готов их выслушать.
платформу тестера для проверки опционных стратегий, честно говоря, заставило задуматься:
— то ли это никому не нужно и на то есть объективные причины,
— то ли это в сочетании с относительной сложностью самих опционов превосходит некий порог
сложности для предполагаемых пользователей,
— то ли … еще есть какие-то причины, о которых хотелось бы узнать
Тем не менее, задача создания такого тестера кажется в достаточной степени решаемой,
повторюсь, м.б. в силу не полного осознания чего-либо.
Более того, если даже не удастся создать тестер стратегий в полном понимании смысла, то, имхо,
будет полезным создание ПО, позволяющего выявлять и классифицировать некие ситуации/
комбинации, периодически возникающие на широком опционном поле.
«Замахнувшись на Вильяма нашего Шекспира », в этом посте изложу свой взгляд на то, каким
должен быть тестер опционных стратегий, т.е. фактически попытаюсь создать ТЗ для его создания.
1. Входные данные (структурированные наборы):
a. БА-вы (здесь именно активЫ)
i. любые типы баров произвольных тайм-фреймов [в общем случае формат: DateTime, Open, High, Low, Close, Volume]
ii. квотес [формат: DateTime, AskSize, AskPprice, BidPrice, BidSize]
b. Опционы (для конкретного страйка и направления)
i. ценовые бары OHLCV произвольны произвольных тайм-фреймов (другие из известных источников истор. данных мне не доступных, возможно они есть и актуальны — напишите) [формат: аналогичный БА]
ii. квотес [формат: аналогичный БА]
2. Производные данные
a. для БА и опционов макс. возможный набор индикаторов из известных и/или возможность создать как стандартные, так и авторские
3. Методы
a. для опционов встроенные методики расчета греков, их производных и пр. (нумерным и аналитическим методом)
i. Generalized Black-Scholes
ii. French Black-Scholes
iii.Whaley
iv.Bjerksund-Stensland
v. Binomial
vi.Jump-Diffusion
vii.American Call
viii.… что еще?
b. Методы сглаживания/интерполяции/….?
c. Метод ы оценки подобия/близости
d. Численные методы поиска решения
4. Создание стратегии
a. Наличие известного языка программирования для написания МТС
5. Тестирование стратегии
a. тестирования на историч. данных
b. оптимизация параметров МТС
6. Отображение
a. Графиков цены БА и опционов
b. Индикаторов
c. Сделок
d. Фин. Состояния (эквити и пр.)
Оглядывая этот, прямо скажем, не затейливый пока перечень, прихожу к выводу, что 80-90%% в
наличии. Осталось интегрировать разрозненные компоненты в единое целое.
Буду оч. благодарен за критические замечания, дополнения и пожелания
=================================================================
Вот такой пост был написан примерно месяц назад. Дела отвлекли от его публикации
За это время тестер был собран и запущен в эксплуатацию.
Но, т.к. собирался он под личные нужды, червячок сомнения остался — все ли было учтено при его создании? возможно, какие-то функции нужно добавить/расширить? и т.д.
Поэтому повторюсь:
Буду оч. благодарен за критические замечания, дополнения и пожелания
Если есть предложения по тестированию тестера, готов их выслушать.
Код для вставки в блог
20 мая 2011, 08:54
платформу тестера для проверки опционных стратегий, честно говоря, заставило задуматься:
alstar
optionanalyser
Так что, если найдете, то и вы киньте.
option2020
optionanalyser
Первое, что кажется простым но редко где встречается, рисуются графики любых греков как по отдельным ногам, так и всей комбинации.
Второе, таблица сделок и графики PnL, эквити, дродауна
Третье, позволяет варьировать нюансы вычисления и посмотреть разницу результатов
Четвертое, позволяет произвести оптимизацию вх. параметров путем их перебора в автоматическом режиме и посмотреть результаты прогонов в виде таблицы или многомерного графика
Например, можно проверить твою идею спреда по волотильности прогнав любые БА и опционы на них на истории.
При этом можно:
— смотреть на графиках не только стандартные греки, но и индикатор составленный из них, например спред по волотильности или др.
— задавать условия вх/вых и оценить фин. результат
— и т.д.
option2020
alstar
optionanalyser
Тестер позволяет закодить и проверить вашу торговую идею.
Если вы где-нибудь видели что-то позволяющее провести проверку БЕЗ вычислений/программирования хотя бы в Экселе, киньте, пожалуйста, ссылку
optionanalyser
Данные:
— точность вх. данных можно задать любую от тика до любого тайм-фрейма и типа свечи. Например, для ФОРТСа RIM1 уже около 2 ГБайт трейдов, для Америки 1 сек бар не проблема получить для любого инструмента
— точность вых. данных/расчетов своих библиотек проверяли по методу трех:
— с «типовыми» функциями (греки, стоимости, эквити и т.д.) точность ограничена только кол. знаков после запятой процессора и выбранной методикой расчета
— за точность(вернее «за правильность») пользовательских функций отвечаете вы сами — что напишите, то и получите — код открыт, можете писать то, что вам нужно на шарпе или VB.NET
teo
optionanalyser
Вы могли бы уточнить, какие на ваш взгляд расчеты нужно вести с учетом ГО?
teo
optionanalyser
teo
optionanalyser
Торговая стратегия — это правила открытия, модификации и закрытия позы.
Если для применения/изменения этих правил по ходу торговли нужно рассчитывать ГО, есть формула этого расчета и все нужные данные,
то можно посчитать «новое» ГО и использовать его значение в стратегии