Стратегия торговли показателем Williams %R

Автор:Чао Чжан, Дата: 2023-09-14 15:38:51
Тэги:

Логика стратегии

Торговая стратегия Williams %R генерирует сигналы, основанные на показателе Williams Percent Range, который измеряет динамику рынка путем сравнения текущего близкого к высокому и низкому диапазону за определенный период.

Стратегия длится, когда линия %R пересекается выше перепроданной, и продает, когда линия пересекается ниже перекупленной.

  1. Расчет Williams %R за определенный период времени (например, 14 периодов)

  2. Установлены уровни перекупа (например, -20) и перепродажи (например, -80)

  3. Продолжайте, когда линия %R пересекает перепродажи.

  4. Закрыть длинные сделки, когда линия %R пересекает перекупленные

Это позволяет вкладам вокруг потенциальных точек переворота извлекать выгоду из краткосрочных движений.

Преимущества

  • Простые параметры и правила

  • Раннее выявление перекупленных/перепроданных

  • Систематическая торговая операция по выбытию

Риски

  • Отставание от % R может лишить возможности

  • Требует оптимизации входов

  • Уровни перепродажи/покупки являются грубыми ориентирами

Резюме

Стратегия Williams %R направлена на отслеживание реверсий путем торговли с перекупленными/перепроданными регионами. При правильном размещении позиций и остановках риск можно контролировать. Но отставание является ключевым ограничением, требующим дополнительных инструментов для проверки и осторожности в использовании.


/*backtest
start: 2023-01-01 00:00:00
end: 2023-09-13 00:00:00
period: 12h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © Julien_Eche

//@version=5
strategy("Williams %R Strategy", overlay=true, initial_capital=100000, shorttitle="W%R Strategy")

// Paramètres
length = input(14, "Length")
overboughtLevel = input(-20, "Overbought Level")
oversoldLevel = input(-80, "Oversold Level")

// Calcul du Williams %R
williamsR = -100 * (ta.highest(high, length) - close) / (ta.highest(high, length) - ta.lowest(low, length))

// Conditions d'achat et de vente
buySignal = ta.crossover(williamsR, oversoldLevel)
sellSignal = ta.crossunder(williamsR, overboughtLevel)

// Entrée en position longue
if buySignal
    strategy.entry("Buy", strategy.long)

// Sortie de la position longue
if sellSignal
    strategy.close("Buy")


Больше