Автор: Шумков Е.А.
Источник: Информационные управляющие системы и компьютерный мониторинг (ИУС и КМ 2013) 2013 / Материалы IV международной научнотехнической конференции студентов, аспирантов и молодых ученых. Донецк, ДонНТУ 2013, Том 1, с. 538-543.
Шумков Е.А. Статистический анализ технических индикаторов. В статье рассмотрен популярный технический индикатор «Стохастический Осциллятор». Исследованы различные торговые стратегии на базе индикатора и выявлены параметры, дающие статистическое преимущество. Ключевые слова: ВАЛЮТНЫЙ РЫНОК, ТЕХНИЧЕСКИЙ ИНДИКАТОР, СТОХАСТИЧЕСКИЙ ОСЦИЛЛЯТОР, СТАТИСТИЧЕСКОЕ ПРЕИМУЩЕСТВО, ФРАКТАЛЫ.
Shumkov E.A. Statistical analysis of technical indicators. In the article, popular technical “Stochastic Oscillator” indicator is considered. Various trading strategies based on the indicator are researched; the parameters with statistical advantage are revealed. Keywords: FOREX, TECHNICAL INDICATOR, STOCHASTIC OSCILLATOR, STATISTICAL ADVANTAGE, FRACTALS.
Рассмотрим один из наиболее популярных технических индикаторов – Стохастический осциллятор. Его вид представлен на Рисунке 1. Верхний график на рисунке – временной ряд котировок, а нижний – Стохастический осциллятор.
Рисунок 1. Ряд котировок и Стохастический осциллятор (нижний график)
Технический индикатор «Стохастический Осциллятор» сопоставляет текущую цену закрытия с диапазоном цен за выбранный период времени. Индикатор представлен двумя линиями. Главная линия обозначается %К. Вторая линия %D является скользящей средней линии %К. Существует три способа интерпретации Стохастического Осциллятора [2]:
Для расчета Стохастического Осциллятора используются четыре переменные:
Формула для расчета %К:
![]() |
(1) |
где Close цена закрытия последнего интервала, Low минимальная цена интервала, Min наименьший минимум за число периодов %K, Max наибольший максимум за число периодов %K. Скользящее среднее линии %K рассчитывается по формуле:
![]() |
(2) |
где n период сглаживания.
При этом, для определения %D можно использовать не только простое скользящее среднее, но и, например, экспоненциальное, линейно взвешенное, сглаженное и т.д..
С помощью скрипта, написанного на языке программирования MQL4, покажем основные распределения работы Стохастического Осциллятора. Эксперименты проводились на валютном рынке Forex, торговый терминал «Metatrader v4», валютная пара EURUSD, период по минутному графику: май 2009 – июнь 2010. Вычисление значения осциллятора выполнялось с помощью встроенной функции iStochastic(…). В скрипте перебираются следующие параметры:
Сначала покажем распределения для пункта б) основных рекомендаций использования осциллятора, то есть «покупать, когда основная линия поднимается выше сигнальной и продавать, когда сигнальная линия выше основной».
Введем следующие понятия:
Прибыльность сделки рассчитывалась с учетом, так называемого «спреда», то есть разницы между ценой спроса и ценой предложения.
Рисунок 2. Распределение по длинам интервалов положительных SO – интервалов (1 мин интервал, {9,5,5})
Пунктирной линией отмечена граница в 50% от общего числа интервалов. Всего смоделировано положительных SO комбинаций 16292.
Рисунок 3. Процент выигрышных сделок для положительных SO интервалов разной длины (1 мин интервал, {9,5,5})
Пунктирной линией на Рисунке 2 показана линия 50% выигрышных сделок. «Психологический» барьер в 60% выигрышных сделок начинается с интервалов длиной более 9 минут. Из диаграмм видно, что зона статистического преимущества начинается с интервалов длиной более 9 минут, но при этом половина общего числа смоделированных сделок заканчивается к интервалам данной длины. Таким образом, пункт б) основных рекомендаций использования Стохастического осциллятора крайне рискован для использования без дополнительных сигналов от других индикаторов.
Теперь покажем распределения для пункта а) основных рекомендаций использования стохастического осциллятора.
Рисунок 4. Распределение количества сделок по длинам положительных SO интервалов (1 мин таймфрейм, {10,3,3})
Рисунок 5. Процент прибыльных сделок в зависимости от длин положительных SOинтервалов (1 мин таймфрейм, {10,3,3})
Теперь покажем распределения для 15ти минутного таймфрейма. Распределение сделок по длинам открытой позиции показано на Рисунке 6. Процент прибыльных сделок показан на Рисунке 7.
Рисунок 6. Распределение количества сделок по длинам положительных SO интервалов (15 мин. таймфрейм, {12,7,3})
Рисунок 7. Процент прибыльных сделок в зависимости от длин положительных SOинтервалов (15 мин. таймфрейм, {12,7,3})
Общее количество смоделированных сделок на минутном интервале равно 15312, при этом 8046 сделок не смогли «пробежать» от уровня 20% до 80%. При подсчете стояло «жесткое» условие, что если:
(% K [i-2] <% K [i-1]) & ( %K [i-1] < % K [i]), | (3) |
то закрываем позицию. Данный момент пояснен на Рисунке (линия индикатора, где стрелка), на котором видно, что основная линия индикатора начинает движение от 0, пересекает уровень 20, но не достигает уровня 80, разворачивается и уходит обратно к уровню 20. Таких движений, по данным экспериментов около 50% от общего количества.
Рисунок 8. Пояснение «жесткого» условия (Формулы 3)
Отметим, что для движения основной линии индикатора «вниз», максимальный процент прибыльных сделок ниже и колеблется около 50% для лучших найденных параметров индикатора. То есть результаты действия индикатора не симметричны.
Из диаграмм и таблиц следует, что пункт а) основных рекомендаций использования Стохастического осциллятора можно использовать, так как есть статистическое преимущество. Но, использование на малых таймфреймах осложняется тем, что время открытых позиций не продолжительно. Из Рисунка 3 видно, что половина смоделированных сделок длиной не больше двух баров. Отсюда следует рекомендация использовать очень хороший канал связи, так как существует «проскальзование». Также желательно использовать методы High Frequency Trading [1].
Таблица 1 Процент выигрышных сделок для положительных SO – интервалов для разных методов сглаживания %K (EURUSD)
Тип сглаживания/Период | 1 мин {%K;%D;Z} | 5 мин {%K;%D;Z} | 15 мин {%K;%D;Z} | 30 мин {%K;%D;Z} | 1 час {%K;%D;Z} |
Простое (SMA) | 0.612 {11,3,3} | 0.842 {19,3,3} | 0.865 {17,3,3} | 0.896 {17,3,3} | 0.872 {12,3,3} |
Экспоненциальное (EMA) | 0.614 {10;3;3} | 0.803 {17;3;3} | 0.846 {16;3;3} | 0.881 {19;3;3} | 0.887 {12;3;3} |
Сглаженное (SMMA) | 0.612 {11;3;3} | 0.812 {18;3;3} | 0.846 {16;3;3} | 0.883 {19;3;4} | 0.881 {11;3;3} |
Линейно–взвешенное (LWMA) | 0.605 {11;3;3} | 0.811 {17;3;3} | 0.822 {17;3;3} | 0.875 {19;3;3} | 0.866 {12;3;3} |
Высокие значения на таймфреймах от пяти минут и выше, возможно объясняются недостаточным количеством данных. Из таблицы видно, что наилучшие результаты почти всегда достигаются при параметрах %D = 3 и периоде замедления, также равном трем.
Как видно из таблиц и графиков Стохастический осциллятор по пункту а) можно использовать для создания механической торговой системы или, даже для «ручной» торговли, так как процент выигрышных сделок выше «психологического» порога для трейдеров, который равен 60%. Для фильтрации ложных сигналов Стохастического осциллятора можно использовать индикатор Fractals, при этом на одноминутном таймфрейме процент выигрышных сделок увеличивается на ~5%.
Адекватно вычислить распределения для рекомендации в) основных правил использования Стохастического осциллятора не представляется возможным.
Также отметим тот момент, что на одном таймфрейме может формироваться один сигнал Стохастического осциллятора, на другой таймфрейме противоположный сигнал.
Таким образом, проведенные эксперименты выявили, что применять рекомендации в случае а) можно, но либо с дополнительным сигналом, либо используя методы высокочастотной торговли. В случае б) – категорически нельзя. Случай в) – не удалось программно алгоритмизировать рекомендации. В дальнейших исследованиях планируется исследовать распределения SO – интервалов варьируя значения верхнего и нижнего уровней.
1. Dacorogna M.,Gencay R., Muller U. An Introduction to high frequency finance. New York: Academic Press, 2001. 407 p.
2. Колби Р. Энциклопедия технических индикаторов рынка. Пер. с англ. 2е изд. М.: «Альпина Бизнес Букс». 2004. 837 с.