Стратегия повышенного тренда на основе стохастического RSI со специальными правилами для сильного повышенного уклонения

Автор:Чао Чжан, Дата: 2023-10-17 14:31:22
Тэги:

img

Обзор

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

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

В этой стратегии используются следующие два показателя для определения тенденций:

  1. Donchian Channel: рассчитывает 6-дневную EMA последнего 30-барного максимума, как верхнюю полосу канала.

  2. Индикатор StochRSI: включает линию %K и линию %D. Эта стратегия добавляет нижнюю полосу на линию %K, по умолчанию 35. Когда линия %K пересекает нижнюю полосу, это сигнализирует о конце бычьего тренда.

В частности, логика торговли:

  1. Когда ближайший находится выше верхней полосы Дончиана, он показывает зеленый фон, указывающий на бычий тренд.

  2. Когда StochRSI %K превышает нижнюю полосу 35 по умолчанию, дешевле.

  3. Когда %K переходит ниже нижней полосы, закрыть длинную позицию.

Как мы можем видеть, эта стратегия использует как тренд-фильтр, так и индикатор осциллятора, чтобы участвовать в бычьих тенденциях с низким риском.

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

Преимущества этой стратегии включают:

  1. Только долго, чтобы избежать потерь на медвежьих рынках.

  2. Использование Donchian Channel для выявления тенденций, фильтрации рынков без тенденций.

  3. Регулируемые параметры StochRSI, могут устанавливать уровни входа и выхода на основе аппетита к риску.

  4. Подходит для акций с устойчивым восходящим трендом.

  5. Простая и понятная логика, легко понятная и реализуемая.

Риски

Существуют также некоторые риски:

  1. Пропуская входную точку, не в состоянии получить полную прибыль в тренде.

  2. Внезапное изменение тренда, индикатор не выходит вовремя, что приводит к большим потерям.

  3. Неправильное установление параметров увеличивает частоту торговли и ложные сигналы.

  4. Подходит только для долгосрочных бычьих рынков, а не для рыночных колебаний или медвежьих.

  5. Нужно следить за фундаментальными показателями, чтобы избежать выбора акций с ослаблением фундаментальных показателей.

Улучшения

Некоторые способы улучшения стратегии:

  1. Оптимизировать параметры для рынков с различной волатильностью.

  2. Добавьте стоп-лосс для ограничения потерь в одной торговле.

  3. Объединяйте фундаментальные данные и новости, избегайте акций с ослаблением фундаментальных показателей.

  4. Оптимизировать время входа, обеспечить своевременный вход через повторное тестирование.

  5. Оптимизируйте время выхода, избегайте преждевременного выхода из бычьего тренда.

  6. Испытание на различных образцах запасов для оценки производительности.

Заключение

Эта стратегия идентифицирует тренд с помощью канала Дончиан и торгует с помощью сигналов StochRSI. Она может эффективно следить за бычьими тенденциями с низким риском. Преимущества заключаются в простой логике и непрерывном захвате подъемного импульса. Необходимо обратить внимание на настройку параметров, выбор акций и дальнейшие улучшения. При правильном выполнении эта стратегия может быть эффективным инструментом для участия в долгосрочных бычьих рынках.


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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © SnarkyPuppy

//@version=5
strategy("Filtered Stoch", overlay=false, default_qty_value = 100, default_qty_type=strategy.percent_of_equity)

/////high filter...upper donchian channel of ema... or highest ema for a given amount of candles

filter_ema_len= input(6)
ema_donchian_len = input(30)

ema=ta.highest(ta.ema(high,filter_ema_len),ema_donchian_len)

////////////////////////basic stoch rsi with max val 100 and min val 0.. entry above lowerband preset 35

smoothK = input.int(7, "K", minval=1)
smoothD = input.int(4, "D", minval=1)
lengthRSI = input.int(14, "RSI Length", minval=1)
lengthStoch = input.int(14, "Stochastic Length", minval=1)
src = input(close, title="RSI Source")
rsi1 = ta.rsi(src, lengthRSI)
k = math.min(100, math.max(0,ta.sma(ta.stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)))
d = math.max(math.min(ta.sma(k, smoothD),80),35)
plot(k, "K", color=#2962FF)
plot(d, "D", color=#FF6D00)
h0 = hline(80, "Upper Band", color=#787B86)
hline(50, "Middle Band", color=color.new(#787B86, 50))
lowerband=input(35)
h11 = hline(lowerband, "Lower Band", color=#787B86)
fill(h0, h11, color=color.rgb(33, 150, 243, 90), title="Background")

ematrend= close>ema ? 1 : 0

bgcolor(ematrend==1?color.rgb(76, 175, 79, 80):na)

longCondition = k>lowerband and ematrend==1
if (longCondition)
    strategy.entry("Up", strategy.long)

shortCondition =  ta.crossunder(k,lowerband)
if (shortCondition)
    strategy.close("Up", shortCondition)
    


Больше