Veredicto
El Fair Value Gap (FVG)
Por Thomas Jamais (Backtestd) · Publicado el · Actualizado el
¿Funciona el Fair Value Gap (FVG)?
No, no en nuestra prueba. Programamos la regla y probamos 772 versiones en 24 mercados de 2022 a 2025, con comisiones, deslizamiento y funding. El 50 % de las versiones pierde dinero. La mejor versión no resistió datos más antiguos que nunca vio (2020–2022).
Lo esencial
| Versiones probadas | 772 |
|---|---|
| Mercados | 24 |
| Período | 2022-11-10 → 2025-07-09 |
| Velas | 1d |
| Costes | comisiones, deslizamiento y funding en cada operación |
| Versiones que pierden | 50 % |
| Veredicto | Sin ventaja después de costes |
En resumen
Programamos la regla y probamos 772 versiones en 24 mercados de 2022 a 2025, con comisiones, deslizamiento y funding. El 50 % de las versiones pierde dinero. La mejor versión no resistió datos más antiguos que nunca vio (2020–2022).
La regla que se comparte
Tal como se suele explicar:
Explicado: los términos
- Mira tres velas — Mira tres velas.
- Una vela fuerte: displacement — La del medio es enorme. Se le llama displacement.
- El vacío que deja — Entre el máximo de la primera vela y el mínimo de la tercera, el precio dejó un vacío. Ese es el Fair Value Gap.
- El precio vuelve… — La idea: el precio vuelve a llenar ese vacío…
- …y rebota: compra — …y rebota. Compras dentro del vacío, con un stop justo debajo.
Cómo la probamos
Datos
Velas de 1d de 24 mercados (APR, ARB, BAT, BTC, BZ, DOGE, ETH, FIL, HYPE, NEAR, PEPE, PUMP, QQQ, SOL, SPY, STRK, SUI, TIA, UNI, WLD, XAG, XAU, XRP, ZEC), del 2022-11-10 al 2025-07-09. Los precios cripto vienen de los futuros perpetuos de OKX; la verificación 2020–2022 usa el archivo público de Binance (diferencia mediana con OKX: 0,06 %). Los índices de EE. UU. vienen de HistData.
Costes
Cada operación paga 0,05 % de comisión taker por lado, de 2 a 5 puntos básicos de deslizamiento por lado y el funding cada 8 horas a la tasa media medida de cada mercado. Los resultados están en R: 1 R es lo que se arriesga en una operación (de la entrada al stop), para comparar estrategias con stops distintos.
Versiones
Una regla compartida en internet nunca está completa (¿qué stop? ¿cuánto tiempo? ¿qué temporalidad?). Por eso probamos cada lectura razonable: cada combinación de los ajustes de abajo es una versión.
Dos mitades
Los datos se dividen en dos mitades (un mercado alcista y luego uno más plano). Una ventaja real debe funcionar en ambas.
Contra el mercado
Una compra en un mercado que sube gana sin ninguna habilidad. Restamos lo que habría dado simplemente mantener el mercado cripto (una cesta equiponderada) del mismo lado esos mismos días: lo que queda es lo que aporta la regla.
Datos antiguos, nunca vistos
La mejor versión se ejecuta después, sin cambios, en 2020–2022, datos que no sirvieron para elegirla (un desplome, un mercado alcista y uno bajista).
Resultados
Las 772 versiones
Cada barra cuenta versiones según su resultado medio por operación después de costes (limitado a ±1 R). Verde: ganan; rojo: pierden.
La mejor de 772 versiones
76 operaciones, 45 % ganadoras, +0,839 R por operación de media, +63,8 R en total, peor caída −10,6 R.
Resultado acumulado después de costes, operación tras operación (línea discontinua: inicio de la segunda mitad).
- Primera mitad: +0,962 R por operación. Segunda mitad: +0,729 R por operación.
- Contra mantener el mercado esos mismos días: +0,932 R por operación (t agrupado por semana = 3,0).
- Mismos ajustes en 2020–2022: 47 operaciones, +0,157 R por operación, −0,205 R por operación contra el mercado.
Por qué «la mejor versión» engaña
Con 772 versiones, algunas se ven bien por pura suerte. La versión típica hizo +0,000 R por operación; la mejor, +0,839. Aunque la regla no tuviera ninguna ventaja, la dispersión se vería así: lo mejor de muchos intentos al azar siempre impresiona. Por eso nunca confiamos en la mejor versión hasta que funcione con datos que no sirvieron para elegirla.
Verifícalo tú mismo
- Escribe la regla exactamente (abajo: nuestra especificación y cada ajuste probado).
- Consigue datos gratis: el archivo público de Binance (data.binance.vision) tiene años de velas; OKX y la mayoría de plataformas ofrecen una API.
- Incluye los costes: comisiones de ambos lados, deslizamiento y funding de los futuros perpetuos.
- Mide en R (riesgo por operación), no en %, y mira la versión típica, no la mejor.
- Divide tus datos en dos y guarda una parte que no mires hasta el final.
- Compara con simplemente mantener el mercado esos mismos días.
Nuestra especificación exacta (texto original del laboratorio, en inglés)
SMC: fair value gap (FVG) retest. What it does: a bullish fair value gap is a three-candle pattern where the third candle's low stays above the first candle's high, leaving a price gap that the strong middle candle jumped over. SMC traders expect price to come back into that gap and bounce. Bearish is the mirror image. Rules (fixed a priori, not tuned on results): - Gap: low[i] > high[i-2] (bullish) or high[i] < low[i-2] (bearish), gap height >= min_gap_atr x ATR, and the middle candle's body >= disp_mult x ATR (a "displacement" candle, not drift). - Zone: between high[i-2] and low[i] (bullish). Only the newest gap of each side is watched. - Entry long: the first later candle (within max_wait candles) whose low reaches the zone top and that closes above the zone bottom. A close below the bottom before that kills the zone. - Stop: zone bottom - stop_buf x ATR, but at least min_stop_adr x average daily range away. Target: target_r x stop distance (0 = none). Time stop after hold_bars. Source: common ICT / "smart money concepts" teaching (TradingView, YouTube); idea only.
Ajustes probados
| Ajuste | Valores |
|---|---|
disp_mult | 1.0, 1.5 |
min_gap_atr | 0.2, 0.5 |
max_wait | 192, 672 |
stop_buf | 0.25, 1.0 |
min_stop_adr | 0, 0.5 |
target_r | 0, 2, 3 |
hold_bars | 288, 960 |
timeframe | 1d, 1h, 4h |
atr_len | 14 |
entry_mode | at_stop, market, pullback |
entry_stop | 0.25, 0.5, 1 |
entry_wait | 3 |
exit_scale | —, 1:0.33,2:0.33, 1:0.5 |
exit_scale_be | 0, 1 |
entry_pull | 0.25, 0.5 |
avg_down | 0, 2 |
avg_stop | 0.5, 1, 2 |
avg_exit | breakeven, strategy |
sent_weight | 0, 0.5, 1 |
sent_mode | contrarian, follow |
sent_block | 0, 0.5 |
session | any, asia, london, london_ny, ny, outside |
Ajustes de la versión mostrada
atr_len | 14 |
disp_mult | 1.5 |
min_gap_atr | 0.5 |
max_wait | 672 |
stop_buf | 1.0 |
min_stop_adr | 0 |
target_r | 3 |
hold_bars | 960 |
entry_mode | pullback |
entry_pull | 0.5 |
entry_wait | 3 |
timeframe | 1d |
Descargar cada operación de la versión mostrada (CSV, 76 filas)
Limitaciones
- Un backtest no es trading real: ejecuciones, caídas y tu propia disciplina son distintas.
- Probamos la regla tal como está escrita; el criterio de un trader no se puede probar.
- Los mercados cambian. Una regla que falló aquí podría funcionar en otro lado, y al revés.
- Los costes dependen de tu plataforma y tamaño; los nuestros son los de un minorista en futuros perpetuos.
Preguntas
¿Incluyeron las comisiones?
Sí: comisiones, deslizamiento y funding en cada operación, según tarifas reales.
¿Y en otra temporalidad?
Probamos varias temporalidades y duraciones: ver «Ajustes probados». El resultado no depende de una sola elección.
¿Y con mejor gestión del riesgo?
Probamos stops de distintos tamaños, objetivos, stops dinámicos y salidas parciales. La gestión del riesgo cambia la forma de los resultados, no el signo de la ventaja.
¿Por qué confiar en ustedes?
No confíes: verifica. La regla, cada ajuste y cada operación están en esta página.
¿Entonces nadie gana con ella?
Algunos ganarán, por habilidad en otra cosa o por suerte. Esta prueba solo dice que la regla en sí no da ventaja después de costes.
Aviso
Contenido educativo basado en backtests históricos. No es asesoramiento financiero. Los resultados pasados no garantizan resultados futuros. Los productos apalancados pueden hacerte perder más de lo que inviertes.