Индикатор Williams %R: настройки и сигналы
Williams %R показывает, насколько далеко цена закрытия находится от максимума недавнего диапазона, в перевёрнутой шкале от −100 до 0.
Как индикатор выглядит на реальном графике
Данные: EUR/USD, дневные бары, 2025-06-16 — 2026-07-20. Индикатор рассчитан по 400 барам, на графике показаны последние 180. Источник котировок: Binance Spot REST API (api.binance.com/api/v3/klines).
| Режим | Оценка |
|---|---|
| Трендовый рынок | 40 |
| Флэт | 62 |
| Высокая волатильность | 38 |
| Низкая волатильность | 53 |
Что индикатор измеряет на самом деле
Расчёт почти совпадает со стохастиком, но точка отсчёта другая: измеряется расстояние не от минимума вверх, а от максимума вниз. Отсюда перевёрнутая шкала, где ноль наверху означает закрытие на максимуме периода, а −100 внизу — закрытие на минимуме.
Математически %R и %K стохастика связаны простым соотношением: их сумма по модулю даёт 100. Практически это значит, что графики двух индикаторов зеркальны, и использовать оба одновременно как независимые подтверждения бессмысленно.
Ларри Уильямс предлагал трактовку, отличную от привычной: он рассматривал достижение крайних значений в направлении тренда не как сигнал разворота, а как признак силы. Это редкий случай, когда авторская трактовка индикатора расходится с той, что закрепилась в массовом применении.
Формула
Числитель — расстояние от максимума периода до закрытия, знаменатель — весь диапазон периода, результат берётся со знаком минус. Из-за отрицательной шкалы «перекупленность» находится вверху графика, а не внизу, как у большинства осцилляторов.
Стандартные настройки
| Параметр | Значение |
|---|---|
| Стандартный период | 14 |
| Перекупленность / перепроданность | −20 / −80 |
| Период для скальпинга | 9 |
Период 14 совпадает со стандартом стохастика и RSI. Уровни −20 и −80 соответствуют 80 и 20 у стохастика. Сглаживания в исходной формуле нет вовсе, поэтому индикатор ещё резче стохастика и на практике его часто дополнительно усредняют.
Код реализации (Python)
def williams_r(high, low, close, period=14):highest = high.rolling(period).max()lowest = low.rolling(period).min()return -100 * (highest - close) / (highest - lowest)
Когда индикатор перестаёт работать
- Полностью дублирует информацию стохастика — совместное использование не добавляет независимого подтверждения.
- Отсутствие сглаживания делает индикатор самым шумным в группе осцилляторов диапазона.
- В тренде надолго прижимается к границе шкалы, как и все индикаторы, основанные на положении в диапазоне.
Типичные ошибки применения
- Использовать %R вместе со стохастиком, считая их разными индикаторами. Это одна и та же величина в разных координатах.
- Путаться в знаках и трактовать −20 как перепроданность. Из-за перевёрнутой шкалы перекупленность находится вверху, около нуля.
- Торговать каждое касание границы без сглаживания — сырой %R касается экстремумов очень часто.
- Игнорировать авторскую трактовку: достижение крайних значений по направлению тренда Уильямс считал подтверждением силы, а не поводом для разворотной сделки.
Кому и зачем это нужно
Имеет смысл для тех, кому привычнее перевёрнутая шкала, и для краткосрочной торговли в диапазоне. Добавлять его к системе, где уже есть стохастик, смысла нет.
Частые вопросы
Чем Williams %R отличается от стохастика?
Практически только системой координат. %R измеряет расстояние от максимума вниз и выражает его отрицательными числами, стохастик — от минимума вверх и положительными. Сумма их модулей всегда даёт 100, то есть содержательно это один и тот же расчёт.
Почему шкала отрицательная?
Так задумал автор: за нулевую точку принят максимум периода, и отклонение от него вниз естественно выражается отрицательным числом. Из-за этого зона перекупленности оказывается вверху графика, что регулярно путает тех, кто привык к обычным осцилляторам.
Нужен ли %R, если уже используется стохастик?
Нет. Они несут одну и ту же информацию, и наличие обоих в системе создаёт ложное ощущение подтверждения сигнала двумя независимыми источниками.