Избранное трейдера Anatole
Устойчивые долгосрочные модели
В предыдущих частях (часть 1, часть 2) мы рассмотрели построение композитных систем оценок ценных бумаг, построенных при помощи распространённых средств машинного обучения (Bag/Boost методы). Однако, такой подход, несмотря на все свои преимущества (скорость, точность) имеет ряд больших недостатков – отсутствие универсальности моделей в результате проблем «переобучения» (точной настройки на определённые типы рынков и временные интервалы) и сложность интерпретации полученных композиций.
В результате решения этих проблем мы разработали базовую модель на основе наших представлений о стохастических дифференциальных уравнениях с квантовыми скачками, образующих улыбку волатильности. Эта макромодель получила в наших исследованиях наиболее полную микроскопическую интерпретацию.
Многие ругают компании, которые учат людей зарабатывать и вести свои дела успешно. Называют это «успешным успехом», потому что основной бизнес таких контор — это именно пропаганда того, как быть успешными, но успех их самих только в этой пропаганде.
Но истории достижений действительно могут быть полезны — если не научить чему-то, то хотя бы вдохновить. Управляющий партнер DTI Algorithmic Александр Бутманов решил поучаствовать в деле «финансовых просветителей» и поделиться тем, что он узнал за 11 лет существования нашей компании. Сегодня часть первая — как студенту найти деньги на собственный фонд.
Много лет назад я был частным трейдером. Я совершил все возможные глупости. Торговал на кредитные средства — других денег не было, а кредитные карты во времена высокой нефти выдавались всем без оглядки, и мне, студенту первого курса, тоже. Часть средств мне предоставили друзья, чтобы я попробовал.
Торговая система PVVI основана на индикаторе PVV (price/volume/volatility). Данный индикатор связывает в единую формулу цену, объем и волатильность. Краткое и очень эмоциональное описание истории появления этой формулы я привел в своей предыдущей статье:
Индикатор PVV (price/volume/volatility)
Т.к. по образованию я математик, а по профессии программист, то первым делом сразу же после формализации торговой системы PVVI я закодировал одноименного робота, который и служит мне верой и правдой уже более 3 лет.
В этой статье приведены результаты тестирования робота PVVI в программе Wealth-Lab.
Разумеется, я не раскрою секрет полученной формулы, но краткое описание основных особенностей этой торговой системы, разумеется, приведу. Итак, вот основные характеристики робота PVVI:
Совсем недавно я написал рецензию на книгу Стива Акелиса “Технический анализ от А до Я”. Вот эта рецензия:
Лучшая книга по техническому анализу
Книга Стива Акелиса хороша, но я бы, скорее всего, не стал о ней писать и не назвал бы ее лучшей, если бы не одна история, которая приключилась со мной в далеком 2015 году. Итак, шел 2015 год, рынок то рос, то падал, и я все больше стал смотреть в сторону относительно коротких инвестиций и даже спекуляций, ибо сильные колебания курса рубля и неустойчивая доходность лишали долгосрочные инвестиции большей части былой привлекательности.
Будучи программистом, я все больше и больше начинал смотреть в сторону технического анализа и различных паттернов. Правда, технический анализ не спешил дарить мне рабочие торговые системы. Что я только не тестировал и какие только параметры не перебирал! Казалось бы, вот она идея, но стоило ее протестировать на истории и меня в очередной раз ожидало сильное разочарование. В некотором роде мне повезло, я знал хотя бы где и куда копать. Еще в самом начале своего торгового пути я понял, что лучшие бумаги, как правило, остаются лучшими, а аутсайдеры, так и остаются аутсайдерами. Т.е. я не тратил время, нервы и деньги на ловлю падающих ножей и на усреднение убыточных позиций. Но как выжать максимум из тех бумаг, что растут и растут хорошо? Как из нескольких десятков лидеров определить ту одну-две бумаги, которые дадут максимальную прибыль?
Давайте соберем цену, потом разберем цену и сравним. Все будет производиться на ваших глазах в экселе. Файл, которого я прикладываю. ФАЙЛ https://cloud.mail.ru/public/27GB/5ipstzGrY .(в зеленые области вы будите вписывать разные цифры). Проверку на гетероскедастичность мы будем делать методом максимального правдоподобия. Во я загнул. Если просто. Мы возьмем две, хорошо известных нам стратегии и будем их прогонять на каждом шаге создания графика цены. Первая стратегия. Увеличение лота на один при убытке. Принцип опциона. И если у нас случайный процесс, то должно получаться 50/50. И удвоение позиции. Принцип мартингейта. И если у нас случайный процесс у=x^2, то у^2=x, мы всегда в плюсе. Давайте по шагам.
Шаг первый, лист W
Сгенерируем случайные числа. В экселе есть функция =случмежду(0;1). И 0 переведем в -1, а 1 в 1. У нас получился простой бинарный ряд из 1 и -1. Возьмем 100 таких цифр. Теперь посчитаем их сумму нарастающим итогом. К сумме предыдущей прибавить следующее (Total). И построим график изменения этой суммы. Назовем это «геометрическое Броуновское движение». Тогда, сумма всех случайных числе будет равна точке, куда пришел наш график. А сумма всех случайных чисел в квадрате, будет равна пройденному пути. А если каждый шаг происходит за 1 секунду. То это, одновременно, и время. И мы должны получить следующую зависимость. Берем 100, извлекаем корень квадратный и получаем 10. И это одно стандартное отклонение. И есть теорема, которая доказывает, что 68% траекторий будут заканчиваться в диапазоне от -10 до +10. Вы можете это проверить сами. В графе ТЕСТ введите число. Если сумма средних от -10 до +10, ставим 1, если больше 0. У вас будет получаться среднее 0,7, в среднем. То есть в 3 случаях из 10 мы будем выскакивать из -10 +10. И это уже не 50/50 вверх или в низ. Это уже 30/70.
Часть 1.
Традиционно считается, что задача портфельной оптимизации, или задача Марковица, представляет собой некоторую самостоятельную задачу выбора такого портфеля активов, который обладал бы максимальной доходностью при минимальных рисках.
Прим. В качестве актива могут выступать ценные бумаги (акции), их производные (опционы) или торговые системы.
Решение задачи состоит из двух этапов:
Почему мы используем аналогию портфельной оптимизации с методами машинного обучения — Bag, Boost?! Потому что в действительности (и мы это продемонстрируем) нам абсолютно не важно, насколько хорошо динамику наших временных рядов прогнозируют «слабые» модели – нам важно только то, чтобы ошибки прогнозов наших моделей взаимно компенсировали бы друг друга в некотором интегральном смысле. Иными словами – в случае бустинга – ошибка прогноза линейной композиции была бы минимальной, а в случае портфельной оптимизации – была бы минимальной ошибка прогноза нелинейной композиции (то есть самого портфеля).