Избранное трейдера yuryss
Описание и тестирование в программе Wealth-Lab первых двух роботов я уже приводил. Вот соответствующие ссылки:
Тестирование рабочей свечной модели на исторических данных
Тестирование модели CandleMax в программе Wealth-Lab
Индикатор PVV (price/volume/volatility)
Тестирование робота PVVI в программе Wealth-Lab
Сейчас настало время дать краткое описание и привести тестирование в программе Wealth-Lab третьей торговой системы, которая у меня сейчас в работе.
Торговая система AVP (average volume/price) не является свечной моделью, как CandleMax, и не основана на красивой математической формуле, как система PVVI. Из трех моих спекулятивных роботов, робот AVP выдает сигналы реже всех. Тем не менее, результативность этого робота практически совпадает с результативностью робота PVVI, лишь совсем немного ей уступая.
Давайте соберем цену, потом разберем цену и сравним. Все будет производиться на ваших глазах в экселе. Файл, которого я прикладываю. ФАЙЛ 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?! Потому что в действительности (и мы это продемонстрируем) нам абсолютно не важно, насколько хорошо динамику наших временных рядов прогнозируют «слабые» модели – нам важно только то, чтобы ошибки прогнозов наших моделей взаимно компенсировали бы друг друга в некотором интегральном смысле. Иными словами – в случае бустинга – ошибка прогноза линейной композиции была бы минимальной, а в случае портфельной оптимизации – была бы минимальной ошибка прогноза нелинейной композиции (то есть самого портфеля).
В первой части мы рассмотрели «теорему о средней волатильности» где, обозначили такое свойство:волатильности могут на разных таймфреймах значительно отличаться друг от друга. Но они всегда будут со временем сходится к одному значению.
Вот, на этом свойстве и будет построен индикатор. Для индикатора нам нужны волатильности на различных таймфреймах. В качестве индикатора волатильности берутся два стандартных индикатора, но которые по сущности показывают одно и тоже.
Price Channel (PC) или ценовой канал. Индикатор представляет из себя две линии, которые ограничивают канал колебаний цены. Верхняя граница канала обозначает уровень локального максимума за прошедшие N периодов, а нижняя граница – уровень локального минимума за тот же промежуток времени. Таким образом, цена ограничивается максимальными точками колебаний – экстремумами за N периодов.