Индикатор RSI.
Здравствуйте дорогие друзья!
Сегодня я хочу кое-что написать о индикаторе RSI.
RSI (relative strength index, индекс относительной силы) – это индикатор который показывает силу тренда и вероятность смены его направления.
Чаще всего индикатор RSI не налаживается на график цены, а рисуется отдельно, прямо под ним.
На рисунке индикатор RSI обведен красной линией:
RSI – очень популярный индикатор, что обусловлено простотой его интерпретации человеком. Вся информация представлена визуально, и анализ график с помощью этого индикатора не покажется сложным даже новичку. На графике индикатора можно рисовать фигуры технического анализа.
Давайте ближе познакомимся и этим индикатором.
Работу индикатора RSI рассмотрим с помощью рисунка, расположенного выше.
Значения индикатора всегда колеблются в диапазоне от 0 до 100. Никогда не больше, никогда не меньше. В классическом варианте, для расчета значения одной точки RSI (черные точки на рисунке выше) берется цена закрытия 14-ти предыдущих свечей. Так рассчитывают точки для всего графика, а потом соединяют их линиями (красные линии на рисунке выше). Так как последняя свеча еще не закрыта, то крайнее значение индикатора пересчитывается каждый раз, когда цена меняется. Поэтому последний отрезок индикатора меняет угол наклона в течении «жизни» своей свечи (зеленый отрезок на рисунке).
Так же, по умолчанию, индикатор имеет 2 ключевых уровня – 30 и 70. На уровне 30 и 70 проводятся линии. Большую часть времени показатели RSI находятся между этими линиями. Если значение индикатора стало выше 70-ти, то считают, что торгуемый инструмент перекуплен, и есть вероятность что цена будет падать. Если значение индикатора стало ниже 30-ти, то считают, что торгуемый инструмент перепродан, и есть вероятность, что цена будет расти.
Торговать от этого уровня я бы вам не советовал. RSI может давать другие, более сильные, сигналы – дивергенция и конвергенция. Прочитать по них можно даже на википедии.
Давайте рассчитаем RSI вручную. Заодно и больше в нем разберемся.
Рассчитывать я буду в Excel.
Расчет буду делать для пары NEO/ETH. Я выбрал дневной график.
Для расчета, одного значения, нам нужно 14 свечей, но для того что бы получить график индикатора, я взял 40 последних свечей.
Далее создаю документ в excel в котором я выписываю цены закрытия свечей от 40-вой до 2-рой, а так как свеча 1 еще не закрыта, то я выписываю последнюю цену.
Выглядит это так:
Все даже не вмещается на экран.
Согласно википедии значение RSI рассчитывается так:
То есть, сначала, мне нужно отделить положительные ценовые изменения от отрицательных.
Если цена закрытия следующей свечи больше чем цена закрытия предыдущей, то это положительное ценовое изменения. Определять математически это можно так: от цены закрытия предыдущей свечи отнимаем цену закрытия следующей свечи. Если ответ получился отрицательный значит это было положительное ценовое. Если ответ получился положительным, то это было отрицательное ценовое движение.
Так как любое движение мы должны записывать положительным числом, то при положительном ценовом движении ответ нужно умножить на -1.
В эксель это будет выглядеть так:
В ячейку С3 вставляем формулу = ЕСЛИ(B2-C2<0;(B2-C2)*(-1);0), а в ячейку С4 - =ЕСЛИ(B2-C2<0;0;(B2-C2)). После того как мы вставили, нужно растянуть эти формулы на другие ячейки.
Это все должно выглядеть так:
Тяжело?! Но дальше будет еще тяжелее.
Теперь нам нужно рассчитать параметр RS. Для его сначала нужно рассчитать сглаженную скользящую среднюю(SMMA) для всех положительных и отрицательных ценовых движений.
Но!!! Здесь не все так просто, из-за специфики расчета SMMA, первое значение должно быть обычным средним арифметическим. То есть считаем среднее арифметическое для первых 13-ти положительных движений. 13-ти, а не 14-ти, здесь все правильно, свечей 14, а движений 13. Вообще там должно быть и 14-тое движение, но у нас его нету. Это совсем незначительно повлияет на погрешность. Потом повторяем это же действие для отрицательных движений.
Трудно мне объяснять, просто ставим в ячейку О5 формулу =СУММ(C3:O3)/13, а в ячейку О6 =СУММ(C4:O4)/13:
Следующие значения уже рассчитывают по формуле SMMA.
SMMAi = (SMMA1*(N-1) + цена закрытия следующей свечи)/N,
Где N – количество значений, у нас это 13 движений.
В общем в ячейку Р5 вставляем формулу =(O5(13)+P3)/14, а в Р6 =(O6(13)+P4)/14 и растягиваем эти формулы до последней свечи:
Дальше нужно рассчитать значение RS который считается RSi =SMMAi(U)/SMMAi(D):
В ячейку О7 вставляем формулу =O5/O6 и, опять, растягиваем ее до последней свечи:
И наконец считаем RSIi по формуле 100-(100/(1+RSi)).
В ячейку О8 вставляем формулу =100-(100/(1+O7)) и снова растягиваем его:
Как мы можем видеть крайнее значение в моей таблице 39.3922, а на графике сайта tradingview 39.87:
Такое различие может быть обусловлено:
Cпорным расчетом первых средних значений положительных и отрицательных движений(SMA1(U) и SMA1(D));
Тем, что сайт tradingview ведет расчет не по 40-ка последних свечах, а по всех свечах, которые закрылись на бирже с момента листинга этой валюты. Но я не уверен, что это может сильно повлиять;
Тем, что я мог сделать ошибку, когда выписывал цены закрытия свечей. Это не самое интересное занятие.
Теперь, по этим данным, хочу нарисовать график. Вот что у меня получилось:
Теперь наложу свой график рядом с оригинальным с сайта tradingview:
Похоже? Я доволен результатом.
Ох и устал же я. Вы можете спросить меня зачем я это делаю?
Я делаю это по нескольких причинах:
- Я увлекаюсь написание ботов. Способность рассчитывать RSI это очень крутой скилл в этом деле. Индикатор RSI может быть фильтром для сигналов. Если интересно, то могу написать об этом статью.
- В скором времени я хочу написать статью о биткоине, и эта статья будет вводной.
Задавайте вопросы, поправляйте, голосуйте. Самое главное прочитайте статью. До скорой встречи!