
Il s’agit d’une stratégie de suivi de tendance très simple. Il fait plus quand il y a une différence de juste prix à plusieurs têtes, et il est à plat ou à vide quand il y a une différence de juste prix à vide.
La logique centrale de cette stratégie est d’identifier les formes de juste-prix-écart. La soi-disant “marge de juste-prix-écart” est une marge de creux où le prix le plus élevé de la journée est inférieur au prix le plus bas de la journée précédente, ou le prix le plus bas de la journée est supérieur au prix le plus élevé de la journée précédente.
On utilise ici deux lags, c’est-à-dire les hauts et les bas des deux premières lignes K, pour juger de l’écart de juste valeur, afin d’éviter d’être affecté par de fausses percées ou des retours à court terme, et d’améliorer la fiabilité des jugements de forme et la qualité du signal.
Cette stratégie identifie la formation d’un écart de prix équitable pour juger de la possibilité d’un renversement de tendance et fait partie de la stratégie de suivi de tendance de base. L’avantage est que le moment de capture du renversement de tendance est plus précis, mais il existe également un certain taux d’erreur.
/*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