Estrategia de puntos de pivote de Camarilla basada en bandas de Bollinger

El autor:¿ Qué pasa?, Fecha: 2024-02-05 14:23:59
Las etiquetas:

img

Resumen general

Esta estrategia primero calcula los puntos de pivote de Camarilla basándose en el precio más alto, el precio más bajo y el precio de cierre del día de negociación anterior. Luego filtra el precio con el indicador Bollinger Bands para generar señales comerciales cuando el precio rompe los puntos de pivote.

Estrategia lógica

  1. Calcular el precio más alto, el precio más bajo y el precio de cierre del día de negociación anterior
  2. Calcular las líneas de giro de Camarilla incluyendo los rieles superiores H4, H3, H2, H1 y los rieles inferiores L1, L2, L3, L4 de acuerdo con las fórmulas
  3. Calcular Bandas de Bollinger de 20 días banda superior y banda inferior
  4. Ir largo cuando el precio rompe por encima de la banda inferior, ir corto cuando el precio rompe por debajo de la banda superior
  5. Se establecerá un stop loss cerca de la banda superior o inferior de las bandas de Bollinger

Análisis de ventajas

  1. Las líneas de pivote de Camarilla contienen múltiples niveles clave de soporte y resistencia para mejorar la confiabilidad de las señales comerciales
  2. La combinación con las bandas de Bollinger filtra eficazmente las falsas rupturas
  3. Las combinaciones de múltiples parámetros hacen que las operaciones sean flexibles

Análisis de riesgos

  1. La configuración incorrecta de los parámetros de Bollinger Bands puede causar señales de negociación incorrectas
  2. Los puntos pivot de Camarilla dependen del precio del día de negociación anterior y pueden verse afectados por los gaps de la noche a la mañana.
  3. Las posiciones largas y cortas conllevan riesgos de pérdida

Direcciones de optimización

  1. Optimizar los parámetros de las bandas de Bollinger para encontrar la mejor combinación
  2. Añadir otros indicadores para filtrar señales falsas de ruptura
  3. Aumentar las estrategias de stop loss para reducir las pérdidas individuales

Resumen de las actividades

Esta estrategia combina las líneas de pivote de Camarilla y las bandas de Bollinger, generando señales de negociación cuando el precio rompe los niveles clave de soporte y resistencia. La rentabilidad y estabilidad de la estrategia se pueden mejorar a través de la optimización de parámetros y el filtrado de señales. En general, esta estrategia tiene una lógica de negociación clara y una alta operabilidad, vale la pena verificar la negociación en vivo.


/*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 )

Más.