A estratégia de força relativa comparativa gera transações comparando a força relativa de dois mercados.
A lógica é:
Selecionar mercado de comparação, por exemplo, uma ação
Selecionar o mercado de referência, por exemplo, o índice S&P 500
Relatório de cálculo do mercado de comparação em relação ao valor de referência
Ir longo a comparação quando o rácio excede o nível de sobrecompra
Caso o índice caia abaixo da zona de sobrevenda
Definir linha de retração para fechar posições quando o preço cair
Comparando a força relativa, a estratégia visa descobrir oportunidades subvalorizadas e evitar condições sobrevalorizadas.
Compara a força relativa para encontrar uma subavaliação
A linha de retração evita seguir tendências
Regras simples e claras
Seleção das necessidades de referência adequadas
As zonas de sobrecompra/supervenda requerem otimização
LONG/SHORT só perde todas as oportunidades
A estratégia de força relativa identifica as chances de arbitragem comparando dois mercados, mas o ajuste de parâmetros e as estratégias de stop exigem uma avaliação prudente.
/*backtest start: 2022-09-07 00:00:00 end: 2023-09-13 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 10/03/2017 // Comparative Relative Strength Strategy for ES // // You can change long to short in the Input Settings // Please, use it only for learning or paper trading. Do not for real trading. //////////////////////////////////////////////////////////// strategy("Comparative Relative Strength Strategy", shorttitle="CRS") a = syminfo.tickerid b = input("BTC_USDT:swap") len = input(10) BuyBand = input(0.9988, step = 0.0001) SellBand = input(0.9960, step = 0.0001) CloseBand = input(0.9975, step = 0.0001) reverse = input(false, title="Trade reverse") hline(CloseBand, color=blue, linestyle=hline.style_dashed) hline(SellBand, color=red, linestyle=hline.style_solid) hline(BuyBand, color=green, linestyle=hline.style_solid) as = security(a, timeframe.period, close) bs = security(b, timeframe.period, close) nRes = sma(as/bs, len) pos = iff(nRes > BuyBand, 1, iff(nRes < SellBand, -1, iff(pos[1] == 1 and nRes < CloseBand, 0, iff(pos[1] == -1 and nRes > CloseBand, 0, nz(pos[1], 0))))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) if (possig == 0) strategy.close("Long", when = possig == 0) strategy.close("Short", when = possig == 0) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(as/bs, title="CRS", color=gray) plot(nRes, color=navy)