
Esta es una estrategia de seguimiento de tendencias muy simple. Se hace más en el caso de diferencias de precios justos de tipo múltiple, y se borra o se borra en el caso de diferencias de precios justos de tipo abierto.
La lógica central de esta estrategia es identificar las formas de brecha de precios justos. La llamada brecha de precios justos, es decir, el precio más alto del día está por debajo del precio más bajo del día anterior, o el precio más bajo del día está por encima del precio más alto del día anterior, y se forma una brecha de brecha de brecha. Esto generalmente indica una posible reversión de la tendencia.
Aquí se utilizan dos lags, es decir, los precios altos y bajos de las dos primeras líneas K para juzgar la diferencia de precios justos, para evitar ser afectados por brechas falsas o reajustes a corto plazo, y mejorar la fiabilidad de los juicios de forma y la calidad de la señal.
Esta estrategia identifica la formación de brechas de precios justos para juzgar si la tendencia puede revertirse y es una estrategia básica de seguimiento de la tendencia. La ventaja es que el momento de captura de la tendencia es más preciso, pero también existe una cierta tasa de error. Se puede controlar el riesgo mediante el stop loss y el filtro, o se pueden combinar más factores para mejorar la precisión de la decisión. En general, esta es una estrategia de comercio de tendencias muy simple y práctica que vale la pena ampliar y optimizar.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Greg_007
//@version=5
strategy("Fair Value Gap Strategy", "FVG Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, pyramiding = 1)
var longOnly = input.bool(false, "Take only long trades?")
var pyramid = input.bool(false, "Since this can generate a lot of trades, make sure to fill in the commission (if applicable) for a realistic ROI.", group = "REMINDERS")
var pyramid2 = input.bool(false, "Modify pyramiding orders to increase the amount of trades.", group = "REMINDERS")
var bearFVG = false
var bullFVG = false
var plotBull = false
var plotBear = false
var bearTrend = false
var bullTrend = false
//BEARISH FVG
if high < low[2] and close[1] < low[2]
bullFVG := false
bearFVG := true
plotBear := true
if not longOnly
strategy.entry("Short", strategy.short)
else
strategy.close_all()
else
//BULLISH FVG
if low > high[2] and close[1] > high[2]
bullFVG := true
bearFVG := false
plotBull := true
strategy.entry("Long", strategy.long)
// plotshape(plotBull, style=shape.labeldown, location=location.abovebar, color=color.green, text="FVG",textcolor=color.white, size=size.tiny, title="Bull FVG", display=display.all - display.status_line)
// plotshape(plotBear, style=shape.labelup, location=location.belowbar, color=color.red, text="FVG",textcolor=color.white, size=size.tiny, title="Bear FVG", display=display.all - display.status_line)
// //reset the status
// plotBull := false
// plotBear := false