Стратегия количественной торговли с двумя показателями

Автор:Чао Чжан, Дата: 2024-01-15 12:18:53
Тэги:

img

Обзор

Стратегия называется Quantitative Trading Dual Indicator Strategy. Она использует как полосы Боллинджера, так и индекс относительной силы (RSI) в качестве торговых сигналов для реализации двойной индикаторной стратегии.

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

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

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

Стратегия установлена таким образом, что операции по покупке или продаже выполняются только тогда, когда полосы Боллинджера и RSI одновременно показывают сигналы перекупления или перепродажи.

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

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

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

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

Риски стратегии и решения

Основной риск этой стратегии заключается в том, что параметры Bollinger Bands и RSI могут быть ненадлежащими. Если параметры Bollinger Bands настроены на слишком чувствительные, это может привести к появлению избыточных сигналов. Если параметры RSI настроены слишком свободно, эффект будет ослаблен.

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

Решения, в основном, включают установку более подходящих параметров, изменение уровней запуска RSI и Bollinger Bands и т. д. Если частота торговли слишком низкая, подумайте о снижении требований к параметрам, чтобы увеличить возможности входа.

Руководство по оптимизации

Эта стратегия может быть оптимизирована в следующих аспектах:

  1. Испытывайте различные комбинации диапазонов Боллинджера и параметров RSI, чтобы найти лучшие совпадения.

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

  3. Используйте динамическое размещение позиций, чтобы увеличить позиции, когда тренд идет хорошо, и уменьшить потери, когда тренд идет плохо.

  4. Добавить параметры самоадаптивности на основе исторических данных.

Заключение

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


/*backtest
start: 2024-01-07 00:00:00
end: 2024-01-11 23:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Bollinger Bands + RSI, Double Strategy (by SlumdogTrader)", shorttitle="BolBand_RSI_Strat", overlay=true)

// SlumdogTrader's Bollinger Bands + RSI Double Strategy - Profit Trailer
//
// Version 1.0
// Script by SlumdogTrader on July Fri 13(!), 2018.
//
// This strategy uses a normalise Bollinger Bands + RSI.
//
// Bollinger Band triggers
// SELL - when the price is above the upper band.
// BUY - when the price is below the lower band.
//
// RSI triggers
// SELL - when the price is above 55.
// BUY - when the price is below 45.
//
// This simple strategy only triggers when
// both the BB and the RSI
// indicators, at the same time, are in
// a overbought or oversold condition.
//
// Visit my TradingView work at:
// https://www.tradingview.com/u/SlumdogTrader/
//
// Visit my website at:
// https://www.slumdogtrader.com
//

///////////// Bollinger Bands Settings
BBlength = input(20, minval=1,title="Bollinger Bands SMA Period Length")
BBmult = input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation")
price = input(close, title="Source")
BBbasis = sma(price, BBlength)
BBdev = BBmult * stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
source = close
buyEntry = crossover(source, BBlower)
sellEntry = crossunder(source, BBupper)
plot(BBbasis, color=aqua,title="BBs SMA Basis Line")
p1 = plot(BBupper, color=silver,title="BBs Upper Line")
p2 = plot(BBlower, color=silver,title="BBs Lower Line")
fill(p1, p2)

///////////// RSI Settings
RSIlength = input( 16 ,title="RSI Period Length")
RSIvalue = input( 45 ,title="RSI Value Range")
RSIoverSold = 0 + RSIvalue
RSIoverBought = 100 - RSIvalue
vrsi = rsi(price, RSIlength)


///////////// Colour Settings
switch1=input(true, title="Enable Bar Color?")
switch2=input(true, title="Enable Background Color?")
TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) ? red : RSIoverSold and (price[1] < BBlower and price > BBlower)  ? green : na
barcolor(switch1?TrendColor:na)
bgcolor(switch2?TrendColor:na,transp=50)


///////////// RSI + Bollinger Bands Strategy
if (not na(vrsi))

    if (crossover(vrsi, RSIoverSold) and crossover(source, BBlower))
        strategy.entry("RSI_BB_L", strategy.long, stop=BBlower,  comment="RSI_BB_L")
    else
        strategy.cancel(id="RSI_BB_L")

    if (crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper))
        strategy.entry("RSI_BB_S", strategy.short, stop=BBupper,  comment="RSI_BB_S")
    else
        strategy.cancel(id="RSI_BB_S")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)


Больше