Estratégia de avanço de posicionamento de oscilação com múltiplos indicadores

Autora:ChaoZhang, Data: 2023-12-01 17:49:34
Tags:

img

Resumo

Esta estratégia combina múltiplos indicadores, incluindo STOCH.RSI, RSI, Dual Strategy, CM Williams Indicator e Money Flow Index (MFI) para localizar com precisão as flutuações do mercado e procurar oportunidades para long/short. Pode gerar sinais de negociação quando os preços das ações se aproximarem de níveis de suporte ou resistência. Ao integrar as vantagens de múltiplos indicadores e validação cruzada, esta estratégia pode efetivamente reduzir os falsos sinais e melhorar a confiabilidade.

Estratégia lógica

  1. O STOCH.RSI combina os pontos fortes do Oscilador Estocástico e do Índice de Força Relativa (RSI), exibindo níveis de sobrecompra/supervenda para detectar oportunidades de reversão.

  2. O RSI considera as condições de sobrecompra/supervenda como uma confirmação auxiliar.

  3. A Estratégia Dual determina cruzamento entre Stoch e RSI para gerar sinais de negociação.

  4. O CM Williams Indicator calcula bandas percentil. O rebote das bandas representa a inversão do mercado, ajudando a julgar flutuações e reversões.

  5. O Índice de Fluxo de Dinheiro (IFM) avalia os fluxos de fundos, validando sinais junto com Stoch.RSI e RSI para melhorar a qualidade.

Em resumo, combinando Stoch.RSI, RSI, Dual Strategy, CM Williams e MFI, esta estratégia pode determinar efetivamente os níveis de sobrecompra/supervenda, localizar pontos de reversão e gerar sinais de qualidade.

Análise das vantagens

As principais vantagens desta estratégia incluem:

  1. A combinação de vários indicadores melhora a qualidade do sinal através da validação e reduz os falsos sinais.

  2. STOCH.RSI, RSI e IFM detectam eficazmente zonas de sobrecompra/supervenda e pontos de virada do mercado.

  3. CM Williams calcula faixas percentil para ajudar a julgar as flutuações e reversões do mercado.

  4. A Estratégia Dual gera sinais comerciais simples que são fáceis de seguir.

  5. Muito personalizável com uma ampla gama de parâmetros otimizáveis adaptáveis a diferentes mercados.

Análise de riscos

Alguns riscos a ter em conta:

  1. Os cálculos complexos com múltiplos indicadores exigem uma elevada potência de computação, inadequada para a negociação de alta frequência.

  2. O ajuste incorreto dos parâmetros pode deteriorar a qualidade do sinal.

  3. Os sinais de reversão podem atrasar-se. Mais indicadores poderiam ajudar a julgar a tendência.

  4. A alta frequência de negociação pode conduzir a uma má utilização do capital.

Soluções:

  1. Usar terminais poderosos e otimizar parâmetros.

  2. Faça um teste extensivo para encontrar parâmetros pessoais ideais.

  3. Adicione mais indicadores para determinar as tendências antecipadamente.

  4. Otimizar mecanismos de controle de risco, como stop loss, para limitar as perdas por negociação.

Orientações de otimização

Esta estratégia pode ser melhorada nos seguintes aspectos:

  1. Otimizar os parâmetros do indicador para encontrar a combinação ideal.

  2. Adicionar indicadores como volume e fator de lucro para melhorar a seleção de ações.

  3. Incorporar mais linhas de tendência, Bandas de Bollinger, etc. para prever níveis de suporte/resistência.

  4. Adicionar stop loss, filtros de entrada de mercado para controlar o risco.

  5. Os parâmetros variam para diferentes produtos e prazos com base nas características.

Conclusão

Esta estratégia localiza reversões de mercado combinando com precisão múltiplos indicadores, incluindo STOCH.RSI, RSI, Dual Strategy, CM Williams e MFI. A validação cruzada melhora a qualidade do sinal e reduz os falsos sinais.


/*backtest
start: 2023-10-31 00:00:00
end: 2023-11-30 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/


     //////////////////////////////////////////////////////////////////////////
    ////  STOCHASTIC_RSI+RSI+DOUBLE_STRATEGY+CM_WILLIAMS_VIX_FIX+MFI  ////////
   //////////////////////////////////////////////////////////////////////////


//  This is a simple combination of integrated and published scripts, useful 
//  if you don't have a PRO account and want to bypass the 3 indicators limit. 
//  It includes:
//  1) Stoch.RSI
//  2) Relative strenght index (RSI)
//  3) Stochastic + RSI, Double Strategy (by ChartArt)
//  4) CM_Williams_Vix_Fix Finds Market Bottoms (by ChrisMoody)
//  5) Monetary Flow Index (MFI)
//  For more details about 3) and 4) check the original scripts.


//@version=3
// @author GianlucaBezziccheri

strategy(title="Stoch.RSI+RSI+DoubleStrategy+CMWilliamsVixFix+MFI", shorttitle="Stoch.RSI+RSI+DoubleStrategy+CMWilliamsVixFix+MFI")


///STOCH.RSI///
smoothK = input(3, minval=1, title="Stochastic %K Smoothing")
smoothD = input(3, minval=1, title="Stochastic %K Moving Average")
lengthRSI = input(14, minval=1, title="RSI Lenght")
lengthStoch = input(14, minval=1, title="Stochastic Lenght")
RSIprice = close
rsi1 = rsi(RSIprice, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
plot(k, color=blue, linewidth=2)
plot(d, color=silver, linewidth=2)
h0 = hline(80)
h1 = hline(20)
fill(h0, h1, color=purple, transp=78)


///RSI///
up = rma(max(change(RSIprice), 0), lengthRSI)
down = rma(-min(change(RSIprice), 0), lengthRSI)
rsi2 = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
plot(rsi2, color=fuchsia, linewidth=2)
band0 = hline(70)
band1 = hline(30)
fill(band0, band1, color=purple, transp=100)


///OVERBOUGHT-OVERSOLD STRATEGY///
StochOverBought = input(80, title="Stochastic RSI overbought")
StochOverSold = input(20, title="Stochastic RSI oversold")
ks = sma(stoch(close, high, low, lengthStoch), smoothK)
ds = sma(k, smoothD)
RSIOverBought = input( 70  , title="RSI overbought")
RSIOverSold = input( 30  , title="RSI oversold")
vrsi = rsi(RSIprice, lengthRSI)
if (not na(ks) and not na(ds))
    if (crossover(ks,ds) and k < StochOverSold)
        if (not na(vrsi)) and (crossover(vrsi, RSIOverSold))
            strategy.entry("LONG", strategy.long, comment="LONG")
if (crossunder(ks,ds) and ks > StochOverBought)
    if (crossunder(vrsi, RSIOverBought))
        strategy.entry("SHORT", strategy.short, comment="SHORT")
 
 
///CM WILLIAMS VIX FIX///
pd = input(22, title="LookBack Period Standard Deviation High")
bbl = input(20, title="Bollinger Band Length")
mult = input(2.0    , minval=1, maxval=5, title="Bollinger Band Standard Devaition Up")
lb = input(50  , title="Look Back Period Percentile High")
ph = input(.85, title="Highest Percentile - 0.90=90%, 0.95=95%, 0.99=99%")
pl = input(1.01, title="Lowest Percentile - 1.10=90%, 1.05=95%, 1.01=99%")
hp = input(false, title="Show High Range (Based on Percentile and LookBack Period)?")
sd = input(false, title="Show Standard Deviation Line?")
wvf = ((highest(close, pd)-low)/(highest(close, pd)))*100
sDev = mult * stdev(wvf, bbl)
midLine = sma(wvf, bbl)
lowerBand = midLine - sDev
upperBand = midLine + sDev
rangeHigh = (highest(wvf, lb)) * ph
rangeLow = (lowest(wvf, lb)) * pl
col = wvf >= upperBand or wvf >= rangeHigh ? lime : gray
plot(hp and rangeHigh ? rangeHigh : na, title="Range High Percentile", style=line, linewidth=4, color=orange)
plot(hp and rangeLow ? rangeLow : na, title="Range High Percentile", style=line, linewidth=4, color=orange)
plot(wvf, title="Williams Vix Fix", style=columns, linewidth = 4, color=col, transp=85)
plot(sd and upperBand ? upperBand : na, title="Upper Band", style=line, linewidth = 3, color=aqua)


///MONETARY FLOW INDEX
length4 = input(title="MFI Length", defval=14, minval=1, maxval=2000)
src4 = hlc3
upper4 = sum(volume * (change(src4) <= 0 ? 0 : src4), length4)
lower4 = sum(volume * (change(src4) >= 0 ? 0 : src4), length4)
mf4 = rsi(upper4, lower4)
plot(mf4, color=yellow, style=line, linewidth=2, title="Monetary Flow Index")
overbought=hline(70, title="MFI Overbought", color=yellow)
oversold=hline(30, title="MFI Oversold", color=yellow)
fill(overbought, oversold, color=#9915ff, transp=100)

Mais.