Эта стратегия сочетает в себе три индикатора классификации: RSI, CCI и Williams%R, чтобы генерировать эффективные торговые сигналы. Она будет выдавать сигналы покупки или продажи, когда все три индикатора одновременно отображают сигналы перекупления или перепродажи. По сравнению с использованием одного индикатора, эта композитная стратегия фильтрует больше ложных сигналов и улучшает стабильность.
Стратегия называется
Стратегия основывается на следующих показателях для принятия решений о торговле:
Когда RSI ниже 25, это сигнализирует о состоянии перепродажи. Когда RSI выше 75, это сигнализирует о состоянии перекупки. Такая же логика применяется к параметрам CCI и Williams%R.
Когда все три индикатора одновременно показывают сигналы покупки, т.е. RSI < 25, CCI < -130, Williams %R < -85, стратегия будет длинной. Когда все три индикатора одновременно показывают сигналы продажи, т.е. RSI > 75, CCI > 130, Williams %R > -15, стратегия будет короткой.
Это позволяет избежать ложных сигналов от одного индикатора и повышает надежность.
Комбинация из нескольких показателей фильтрует ложные сигналы
Объединяя RSI, CCI и Williams%R, стратегия отфильтровывает некоторые ложные сигналы от отдельных индикаторов, улучшая точность.
Автоматическая остановка потерь/прибыли управляет рисками Встроенные функции остановки потерь и получения прибыли автоматически устанавливают цены выхода для каждой сделки, эффективно ограничивая потери в пределах допустимых порогов.
Соответствует среднесрочной торговле Стратегия лучше работает для среднесрочных сделок, четко выявляя среднесрочные точки преломления с помощью комбинации индикаторов.
Солидные данные обратных испытаний
Стратегия использует 45-минутные слитки EUR/USD, основную валютную пару с обильной ликвидностью и данными, что снижает риски избыточного использования из-за недостаточных данных.
Выявление слабой долгосрочной тенденции
Стратегия опирается больше на противоположные сигналы. Ее способности измерять и следить за долгосрочными тенденциями ограничены. Во время долгосрочных односторонних рынков потенциал прибыли ограничен.
Отсутствие краткосрочных колебаний При использовании 45-минутных бар, стратегия упускает выгодные возможности из-за более частых краткосрочных колебаний цен.
Системные риски
В период тяжелого экономического кризиса, который потрясает мировой валютный рынок, его правила торговли могут потерпеть неудачу и привести к огромным потерям.
Добавление показателей, следующих за тенденцией
Попробуйте включить трендовые показатели, такие как MA, Boll и т. Д., Чтобы помочь в распознавании долгосрочных трендов.
Оптимизация параметров стоп-лосса/прибыли Проверьте более исторические данные, чтобы оценить влияние различных параметров стоп-лосса/прибыли на конечную рентабельность, чтобы найти оптимальную настройку.
Расширение продукции
В настоящее время в основном применяется к EUR / USD. Мы можем попытаться развернуть его на других основных валютных пар, таких как GBP, JPY, AUD, чтобы изучить его стабильность и переносимость.
Стратегия
/*backtest start: 2024-01-16 00:00:00 end: 2024-01-23 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("RSI CCI Williams %R Strategy with TP and SL", overlay=true) // Input parameters for indicators rsi_period = input(14, title="RSI Period") cci_period = input(20, title="CCI Period") williams_period = input(14, title="Williams %R Period") // Thresholds for overbought and oversold conditions rsi_oversold = input(25, title="RSI Oversold Level") rsi_overbought = input(75, title="RSI Overbought Level") cci_oversold = input(-130, title="CCI Oversold Level") cci_overbought = input(130, title="CCI Overbought Level") williams_oversold = input(-85, title="Williams %R Oversold Level") williams_overbought = input(-15, title="Williams %R Overbought Level") // Take profit and stop loss levels as a percentage take_profit_pct = input(1.2, title="Take Profit (%)") / 100 stop_loss_pct = input(0.45, title="Stop Loss (%)") / 100 // Indicator calculations rsi = ta.rsi(close, rsi_period) cci = ta.cci(close, cci_period) highestHigh = ta.highest(high, williams_period) lowestLow = ta.lowest(low, williams_period) williamsR = (highestHigh - close) / (highestHigh - lowestLow) * -100 // Entry conditions longCondition = rsi < rsi_oversold and cci < cci_oversold and williamsR < williams_oversold and strategy.position_size == 0 shortCondition = rsi > rsi_overbought and cci > cci_overbought and williamsR > williams_overbought and strategy.position_size == 0 // Execute strategy entry orders if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("Take Profit or Stop Loss Long", "Long", limit=close * (1 + take_profit_pct), stop=close * (1 - stop_loss_pct)) if (shortCondition) strategy.entry("Short", strategy.short) strategy.exit("Take Profit or Stop Loss Short", "Short", limit=close * (1 - take_profit_pct), stop=close * (1 + stop_loss_pct)) // Plot the signals on the chart plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, text="BUY") plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, text="SELL") // Plot the indicators for visualization plot(rsi, title="RSI", color=color.blue) plot(cci, title="CCI", color=color.purple) plot(williamsR, title="Williams %R", color=color.orange)