AlexChi
AlexChi личный блог
27 ноября 2018, 18:59

Тестирование стохастического осциллятора на исторических данных

Тестирование стохастического осциллятора на исторических данных


          В данной статье нас интересует возможность проверить на исторических данных эффективность использования стохастического осциллятора для прогнозирования будущего движения цены. Данный индикатор технического анализа показывает положение текущей цены относительно диапазона цен за определенный период в прошлом и измеряется в процентах.  Чтобы рассчитать значение стохастического осциллятора можно воспользоваться следующей формулой: K = (C – L_min)/(H_max-L_min)*100,

         где С – цена сегодняшнего закрытия,

         L_min – минимальная цена за расчетный период,

         H_max — максимальная цена за расчетный период.

         В качестве расчетного периода будем использовать период равный 5 дням. При этом считается, что стохастический осциллятор дает сигнал на покупку когда K был < 20%, а потом повысился и стал больше 20%, а сигнал на продажу данный индикатор дает тогда, когда K был > 80%, а потом понизился и стал меньше 80%.

         Прежде, чем перейти к тестированию эффективности использования стохастического осциллятора на исторических данных, давайте определимся, как мы будем оценивать результаты покупки (продажи) с использованием этого индикатора. Т.е. как мы будем определять, правильно ли определил стохастический осциллятор рост/падение или нет. Я предлагаю устанавливать стоп-лосс и тэйк-профит на уровне одной среднедневной волатильности по акции за 10 дней (волатильность – это разница между максимальной и минимальной ценой дня). Например, если после нашей покупки акция выросла на одну среднедневную волатильность за 10 дней, мы считаем, что стохастический осциллятор был прав, а если цена упала на одну среднедневную волатильность за 10 дней, то считаем, что стохастический осциллятор ошибся.

         Теперь у нас все готово для того, чтобы проверить на исторических данных эффективность использования стохастического осциллятора для прогнозирования будущего движения цены. Итак, я собрал статистику по 30 наиболее ликвидным бумагам МосБиржи за период с начала торгов по каждой бумаге и по 30 декабря 2016 года (т.е. если Лукойл торгуется на ММВБ с 22 сентября 1997, а Газпром с 23 января 2006, то статистика по Лукойлу берется с 22.09.1997 по 30.12.2016, а для Газпрома с 23.01.2006 по 30.12.2016). Статистика использовалась  дневная, т.е. в качестве максимальной, минимальной цены, а также цен открытия и закрытия использовались цены одного торгового дня. Проведем тестирование в случае, когда стохастический осциллятор дает сигнал на покупку, т.е. когда K был < 20%, а потом повысился и стал больше 20%. Ниже приведена таблица тестирования стохастического осциллятора на дневном интервале (таблица 1).

Тестирование стохастического осциллятора на исторических данных

Таблица 1. Результат тестирования стохастического осциллятора (сигнал на покупку).

         Теперь проведем тестирование в случае, когда стохастический осциллятор дает сигнал на продажу, т.е. когда K был > 80%, а потом понизился и стал меньше 80%. Ниже приведена таблица тестирования стохастического осциллятора на дневном интервале (таблица 2).

 Тестирование стохастического осциллятора на исторических данных

    Таблица 2. Результат тестирования стохастического осциллятора (сигнал на продажу).

         Итак, по результатам тестирования мы видим, что в первом случае (сигнал на покупку) стохастический осциллятор был чаще прав, чем не прав (4085 правильных предсказаний против 3600 ошибочных), а во втором случае (сигнал на продажу) стохастический осциллятор чаще ошибался (4014 правильных предсказаний против 4387 ошибочных). Таким образом, общий итог 8099 правильных прогнозов против 7987 ошибочных.

         Какие же выводы отсюда можно сделать? Выводов на самом деле несколько. Итак:

  1. По результатам проведенного тестирования точность прогноза движения цен на основе стохастического осциллятора можно считать неудовлетворительной, т.к. точность предсказания не превысила статистическую погрешность в рамках 50% вероятности.
  2. При определении эффективности использования стохастического осциллятора для прогнозирования будущего движения цены были произведены расчеты на большом количестве разнообразных параметров (использовались различные параметры покупки/продажи, а также различные значения стоп-лосса и тэйк-профита) и ни в одном случае не удалось добиться точности прогноза, существенно превышающей 50%.
  3. Учитывая пункты 1-2 можно сделать следующий вывод: построить эффективную торговую систему ТОЛЬКО на основе стохастического осциллятора представляется, на мой взгляд, крайне сложной, а, скорее всего, просто невыполнимой задачей.

Берегите свои деньги! Торгуйте грамотно!

 



21 Комментарий
  • sloNIK.
    27 ноября 2018, 19:13
    У нас есть на рынке-это движение и боковик. Так вот, он работает только в боковике, на движениях -это слив
  • chizhan
    27 ноября 2018, 19:23
    точность предсказания не превысила статистическую погрешность в рамках 50% вероятности.

    А что кто-то думал по другому? Индюки придумали, когда писишников почти ни у кого не было.
  • Роман
    27 ноября 2018, 19:32
    все инструменты находятся в боковике. например у рубля боковик от 30 до 80р.  стохастик надо перенастроить и все заработает.  
    • VladMih
      28 ноября 2018, 11:13
      Роман, я не перенастраиваю Stochastic никогда.
      Но согласен, что разные параметры для тренда и флета не повредят.
      Так же, как и разные параметры для м1 и дневки.
  • Chalyj7
    27 ноября 2018, 19:48
  • Сергей Симонов
    27 ноября 2018, 20:39
    Стохастик не в курсе, когда будет разворот и будет ли он вообще. Но до сих пор находятся граждане, доверяющие ему свои деньги)
  • meat
    27 ноября 2018, 20:54
    Автор привел формулу, в которой видно от чего зависит осциллятор. Если автор сделает тоже самое с ценой закрытия, то увидит примерно такой же результат. А потом сделает вывод, что почему-то по цене закрытия текущей свечи нельзя предсказать цену открытия следующей свечи. 
    Пост для дебилов, которые верят всему, что напишут.
    Тут даже высшее образование не нужно, чтобы понять простые истины.
    Кому интересно копнуть глубже, просто зайдите на вики https://ru.wikipedia.org/wiki/%D0%A1%D1%82%D0%BE%D1%85%D0%B0%D1%81%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%BE%D1%81%D1%86%D0%B8%D0%BB%D0%BB%D1%8F%D1%82%D0%BE%D1%80 — там вообще ничего не говорится про прогнозирование.
  • MS
    27 ноября 2018, 22:28
    Лучше:
    1. Заменить в индикаторе цену закрытия средней ценой в интервале.
    2. Разбить диапазон его значений на статистически существенные интервалы для конкретной бумаги. В каких-то интервалах будет картина, как в статье. Зато в других будет выраженная статистика вверх или вниз. На них и надо реагировать. 
  • VladMih
    27 ноября 2018, 23:56
    Ну и бреееееееееееедддддяяяяятина.
    Самое интересное, что такого фуфла в сети и без вас валом.

    Вы б хотя бы книжечку Д.Лейна «Трейдинг со Стохастиком» прочли.
    А хрен ли вам говорить, если вам достаточно 20 пробить?...

    Что изобретатель стохастика называет пиком, коленом, лево/правым пересечением или классической дивергенцией даже не спрашиваю.
    Кто такой Лейн хоть знаете? Стыдууууха.
      • meat
        28 ноября 2018, 14:38
        AlexChi, чувак, ты просто берешь цену закрытия и прогнозируешь по ней следующую цену. Без этого теста можно посчитать вероятность прогнозирования следующей цены. Понимаешь? 
  • JITF
    28 ноября 2018, 02:30
    Оно, конечно, может и так, но есть ньюансы. Например, трендовые системы могут иметь угадайку и менее 50%, но все равно приносить деньги, т.к. прибыльность еще зависит от соотношения среднего выигрыша и среднего проигрыша, что автором и было отброшено. А зря.

    Ожидание ТС = Ср Выигрыш Х % Выигрышей — |Ср Проигрыш| Х % Проигрышей
  • Александр Барулин
    28 ноября 2018, 08:42
    Я, конечно, молод в трейдинге, но заметил, что анализ архивных графиков как стохастика, так и др. не даёт реальной картины «прорисовки» графика. Последний отрезок не закрытой свечи на графике может болтаться от севера до юга, и то пересекать, то не пересекать линии 20% и 80% у стохастика, соответственно принятие решения по этому болтающемуся отрезку графика те же 50/50. Поэтому тестирование торговых систем на архивных данных не совпадает с их поведением в реальных торгах.
    • VladMih
      28 ноября 2018, 11:09
      Александр Барулин, сигналы индикаторов как правило берутся по закрытию бара, а не по «болтающемуся хвостику».
      Надо бы знать, коль беретесь сюда писать.
      • Александр Барулин
        28 ноября 2018, 12:55
        VladMih, извините, тему читал из ленты, не заметил, что попал в спецраздел. Ну раз уж попал, поделюсь своей системой: — на экране держу три графика по одному инструменту с разными интервалами, обычно 3 мин, 30 мин и 1 час, но могут сдвигаться в зависимости от инструмента. Решение на вход/выход принимаю по факту нахождения всех трёх стохастиков в зонах перепроданности или перекупленности. Как доп. смотрю лоты на покупку/продажу в стакане.
        • VladMih
          28 ноября 2018, 15:19
          Александр Барулин, имеете право,
          но уверен, что это часто приносит проблемы.
          Обсуждать не буду.
          Не потому, что… Просто тема слишком обширная.

          Кстати, загляните на мой ютуб-канал, я там недавно сделал обзорное/ознакомительное видео (возможно будет продолжение) о моём взгляде на Stochastic.
          А на сайте и на форуме у меня вообще самый крутой подбор материалов по этой теме в Рунете как минимум и… в мире, как максимум. )
  • Vladimir T
    28 ноября 2018, 09:49
    Коль пошла такая пьянка, то можно ли автора топика попросить сделать тест эффективности стохастика, при условии восходящего тренда+ сигналы стохастика (перепроданность (20)) и соответственно даун тренд +перекупленность стохастика(80)?

    • VladMih
      28 ноября 2018, 11:11
      Vladimir T, дак так и делается (а не как сделал ТС).
      Но вы самую малость забыли уточнить — что считать трендом?
      Робот не может видеть рынок вашими глазами и мозгом,
      ему надо понятие тренда формализовать.
      • Vladimir T
        28 ноября 2018, 11:48
        VladMih, Тут вариантов масса.
        В данном случае, для подобных исследований, две скользящие использовать вполне корректно.
        Для понимающих и macd, тоже вариант.
        Трендовая линия тоже формализуется, но в этом случае, ввиду субъективности, не подойдет для исследований.

        • VladMih
          28 ноября 2018, 15:17
          Vladimir T, да любой метод можно использовать, но вы не назвали автору ни одного.
          И трендовые есть формализованные — напр., см. на моём сайте метод Сперандео. У меня эти трендовые рисуются скриптом, никакого субъективизма.

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн