Camarilla Pivot Points Strategy Baseada em Bandas de Bollinger

Autora:ChaoZhang, Data: 2024-02-05 14:23:59
Tags:

img

Resumo

Esta estratégia calcula primeiro os pontos pivô Camarilla com base no preço mais alto, preço mais baixo e preço de fechamento do dia de negociação anterior.

Estratégia lógica

  1. Calcular o preço mais alto, o preço mais baixo e o preço de encerramento do dia de negociação anterior
  2. Calcular as linhas de pivô Camarilla, incluindo os trilhos superiores H4, H3, H2, H1 e os trilhos inferiores L1, L2, L3, L4 de acordo com as fórmulas
  3. Cálculo das bandas de Bollinger de 20 dias banda superior e banda inferior
  4. Ir longo quando o preço quebra acima da faixa inferior, ir curto quando o preço quebra abaixo da faixa superior
  5. O valor da posição em risco deve ser calculado em função do valor da posição em risco.

Análise das vantagens

  1. As linhas de pivô Camarilla contêm vários níveis de suporte e resistência para aumentar a confiabilidade dos sinais de negociação
  2. A combinação com as Bandas de Bollinger efetivamente filtra falsas rupturas
  3. As combinações de vários parâmetros tornam a negociação flexível

Análise de riscos

  1. Configurações incorretas dos parâmetros Bollinger Bands podem causar sinais de negociação errados
  2. Os pontos pivot da Camarilla dependem do preço do dia de negociação anterior, podendo ser afectados por brechas overnight
  3. As posições longas e curtas comportam riscos de perdas

Orientações de otimização

  1. Otimizar os parâmetros das bandas de Bollinger para encontrar a melhor combinação
  2. Adicionar outros indicadores para filtrar falsos sinais de ruptura
  3. Aumentar as estratégias de stop loss para reduzir perdas únicas

Resumo

Esta estratégia combina linhas de pivô Camarilla e Bandas de Bollinger, gerando sinais de negociação quando o preço quebra os principais níveis de suporte e resistência. A rentabilidade e a estabilidade da estratégia podem ser melhoradas através da otimização de parâmetros e filtragem de sinais.


/*backtest
start: 2024-01-28 00:00:00
end: 2024-02-04 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 12/05/2020
// Camarilla pivot point formula is the refined form of existing classic pivot point formula. 
// The Camarilla method was developed by Nick Stott who was a very successful bond trader. 
// What makes it better is the use of Fibonacci numbers in calculation of levels.
//
// Camarilla equations are used to calculate intraday support and resistance levels using 
// the previous days volatility spread. Camarilla equations take previous day’s high, low and 
// close as input and generates 8 levels of intraday support and resistance based on pivot points. 
// There are 4 levels above pivot point and 4 levels below pivot points. The most important levels 
// are L3 L4 and H3 H4. H3 and L3 are the levels to go against the trend with stop loss around H4 or L4 . 
// While L4 and H4 are considered as breakout levels when these levels are breached its time to 
// trade with the trend.
//
// WARNING:
//  - For purpose educate only
//  - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Camarilla Pivot Points V2 Backtest", shorttitle="CPP V2", overlay = true)
res = input(title="Resolution", type=input.resolution, defval="D")
width = input(1, minval=1)
SellFrom = input(title="Sell from ", defval="R1", options=["R1", "R2", "R3", "R4"])
BuyFrom = input(title="Buu from ", defval="S1", options=["S1", "S2", "S3", "S4"])
reverse = input(false, title="Trade reverse")
xHigh  = security(syminfo.tickerid,res, high)
xLow   = security(syminfo.tickerid,res, low)
xClose = security(syminfo.tickerid,res, close)
H4 = (0.55*(xHigh-xLow)) + xClose
H3 = (0.275*(xHigh-xLow)) + xClose
H2 = (0.183*(xHigh-xLow)) + xClose
H1 = (0.0916*(xHigh-xLow)) + xClose
L1 = xClose - (0.0916*(xHigh-xLow))
L2 = xClose - (0.183*(xHigh-xLow))
L3 = xClose - (0.275*(xHigh-xLow))
L4 = xClose - (0.55*(xHigh-xLow))
pos = 0
S = iff(BuyFrom == "S1", H1, 
      iff(BuyFrom == "S2", H2,
       iff(BuyFrom == "S3", H3,
         iff(BuyFrom == "S4", H4,0))))
B = iff(SellFrom == "R1", L1, 
      iff(SellFrom == "R2", L2,
       iff(SellFrom == "R3", L3,
         iff(SellFrom == "R4", L4,0))))
pos := iff(close > B, 1,
       iff(close < S, -1, 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_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

Mais.