Operación de MT5Evaluación de EAElección de bróker
Deslizamiento
La diferencia entre el precio que pidió una orden y el precio al que se ejecutó. Puede caer hacia cualquier lado, pero para una estrategia que opera por velocidad es un coste que los backtests rara vez modelan.
también: slippage, deslizamiento de precio, desviación
Actualizado · Revisado
En palabras sencillas
Pidió un precio y obtuvo otro. Entre el momento en que una orden sale del terminal y el momento en que se ejecuta, el mercado se mueve — a veces a su favor, más a menudo no, y sobre todo cuando menos le conviene.
Por qué importa
Un backtest ejecuta al precio que él mismo decide. Una cuenta real ejecuta a lo que el bróker tuviera disponible cuando llegó la orden. Esa diferencia es pequeña por operación y se acumula con el número de operaciones, y por eso decide si una estrategia rápida sobrevive al contacto con una cuenta real.
✓Escala con la frecuencia, no con el tamaño. Una décima de pip no es nada en una operación y sí lo es a lo largo de dos mil.
✓Es peor justo donde más duele — en publicaciones de noticias, en aperturas de sesión y en cierres forzosos, todos momentos en los que una estrategia tiene más probabilidad de estar enviando órdenes.
✓Depende del bróker de una forma que los backtests no pueden capturar: el mismo EA sobre los mismos datos producirá resultados reales distintos en dos brókers con ejecución distinta.
✓Es medible. Precio solicitado contra precio de ejecución, promediado sobre unos cientos de operaciones, convierte una discusión sobre calidad de ejecución en un número.
En MetaTrader 5
Dónde aparece en MT5
Diálogo Nueva orden (F9) → Desviación — el deslizamiento máximo en puntos que aceptará en una orden de mercado
Caja de herramientas → Historial → el precio de la operación frente al precio que el EA solicitó en el registro de Expertos
La pestaña Diario, donde los rechazos aparecen como recotización o precio no válido en lugar de como una ejecución
Probador de Estrategias — modela el spread pero no la latencia de las órdenes, y por eso las ejecuciones del probador son sistemáticamente más benévolas que las reales
Cómo lo usan los EA
El campo deviation de MqlTradeRequest fija la tolerancia: ejecutar dentro de ese número de puntos respecto al precio solicitado, y si no, rechazar en lugar de ejecutar peor.
Bajo Market Execution la solicitud se ejecuta a lo que el mercado ofrezca, y la desviación limita hasta dónde puede llegar eso antes de que la orden sea rechazada.
El modo de llenado decide en el límite: Fill or Kill rechaza de plano una ejecución parcial, Immediate or Cancel toma lo disponible y cancela el resto.
Un EA bien escrito compara el precio de ejecución obtenido con el que pidió y recalcula su stop y su objetivo a partir de la ejecución — no de la solicitud.
Reenviar una orden rechazada sin volver a comprobar la señal es la forma en que una ejecución denegada se convierte en varias a precios cada vez peores.
Ajustes habituales
Ajuste
Valor habitual
Nota
Desviación, estrategias de swing
10–30 puntos
Generosa. Unos pocos puntos de deslizamiento son irrelevantes frente a un objetivo medido en centenas.
Desviación, estrategias de scalping
1–5 puntos
Lo bastante estrecha para que una mala ejecución se rechace en lugar de aceptarse — al precio de más rechazos.
Deslizamiento medio aceptable
menos de 0,5 pips
Medido sobre más de 100 operaciones reales en su propia cuenta, no citado del marketing de un bróker.
Deslizamiento medio que conviene investigar
más de 1,5 pips
Para una estrategia con objetivos pequeños esto es una parte apreciable de cada ganancia.
Modo de llenado
según lo permita el símbolo
Lo fija el bróker por símbolo; enviar un modo no admitido hace que la orden se rechace, no que se ajuste.
Problemas operativos frecuentes
Una desviación demasiado estrecha para un símbolo volátil se convierte en un goteo de órdenes rechazadas, y el EA opera mucho menos de lo que dice el backtest.
Una desviación demasiado amplia acepta ejecuciones lejos del precio de la señal, así que la operación tomada no es la que la estrategia modeló.
El EA calcula su stop a partir del precio solicitado y no del de ejecución, con lo que el riesgo real difiere del pretendido en cada entrada deslizada.
La distancia al servidor del bróker añade latencia, y la latencia añade deslizamiento — ese es el argumento práctico para alojar un EA cerca del servidor de operaciones.
Las publicaciones de noticias producen deslizamientos muy por encima de cualquier cosa de la muestra, y por eso las estrategias que operan a través de ellas tienen que haber sido probadas también a través de ellas.
Funciones de MT5 relacionadas
MqlTradeRequest.deviation
Deslizamiento máximo aceptable en puntos para una orden de mercado.
CTrade::SetDeviationInPoints(points)
La misma tolerancia fijada una vez para cada orden que envíe la instancia.
MqlTradeResult.price
El precio realmente ejecutado — el número que hay que comparar con la solicitud.
SymbolInfoInteger(symbol, SYMBOL_FILLING_MODE)
Qué modos de llenado permite el bróker para este símbolo; enviar otro se rechaza.
OrderSend(request, result)
Devuelve la estructura de resultado con el retcode y el precio ejecutado.
Ejemplo
Los mismos 0,4 pips de deslizamiento medio, aplicados a dos estrategias con objetivos distintos. El coste por operación es idéntico; la parte de la ventaja que consume, no.
Deslizamiento medio por operación
0,4 pips
Scalper — ganancia media
6 pips
El deslizamiento en entrada y salida es alrededor del 13 % de la ganancia bruta.
EA de swing — ganancia media
120 pips
El mismo deslizamiento es alrededor del 0,7 % de la ganancia bruta.
Scalper — operaciones por año
2.000
1.600 pips al año perdidos solo por la ejecución.
Nada del bróker cambió entre estas dos filas. La diferencia está en cuánta ventaja de la estrategia queda dentro de la ventana de ejecución.
Cálculo0,8 ÷ 6 = 13 % · 0,8 ÷ 120 = 0,7 %
ResultadoUna calidad de ejecución, dos veredictos completamente distintos
Cómo se usa
El deslizamiento se mide, no se supone. Cada conclusión de abajo sale de comparar precios solicitados con precios de ejecución en su propia cuenta y con su bróker.
Rango
Qué significa
Media por debajo de 0,5 pips en más de 100 operaciones
Buena ejecución. Los resultados del backtest se trasladan con un recorte moderado.
0,5–1,5 pips
Aceptable para estrategias con objetivos de decenas de pips; un lastre real para cualquier cosa menor.
Más de 1,5 pips de media
Investigue antes de escalar. O la estrategia opera en los momentos equivocados o la ejecución no es competitiva.
Sistemáticamente en una sola dirección
El deslizamiento positivo también debería aparecer. Si las ejecuciones son siempre peores que lo solicitado, eso describe la ejecución y no el movimiento del mercado.
Registre el precio solicitado junto al de ejecución en cada operación. Sin ese par no hay nada que medir ni base para comparar brókers.
Compare una ejecución real con su backtest sobre el mismo periodo — la diferencia en resultado medio por operación es donde viven el deslizamiento y el spread.
Fije la desviación a partir del tamaño del objetivo: estrecha para objetivos pequeños, de modo que las malas ejecuciones se rechacen, y amplia para los grandes, de modo que no se pierdan buenas señales por una fracción de pip.
Recalcule stop y objetivo a partir del precio de ejecución, no de la solicitud. Si no, una entrada deslizada cambia en silencio el riesgo de la operación.
Juzgue por separado la ejecución en horario de noticias. Las medias tomadas en periodos tranquilos no dicen nada de las ejecuciones que ocurren en los segundos que importan.
Los anuncios de mt5depot publican con qué bróker y condiciones de cuenta se produjo cada backtest, así que los supuestos de ejecución detrás de un resultado quedan declarados en lugar de sobreentendidos.
Errores frecuentes
✕Suponer que el deslizamiento siempre es negativo
El deslizamiento positivo — una ejecución mejor que la solicitada — ocurre en condiciones normales con ejecución de mercado genuina. Un registro que muestra solo deslizamiento negativo a lo largo de cientos de operaciones está describiendo la ejecución, no el mercado.
✕Juzgar un backtest como si hubiera modelado la ejecución
El Probador de Estrategias modela el spread pero no el retraso entre la decisión y la ejecución. Todo resultado del probador es por tanto optimista en una cantidad que crece con la frecuencia de operación, y la diferencia es mayor justo en las estrategias que mejor se ven en las pruebas.
✕Poner la desviación a cero para evitar el deslizamiento
Eso no elimina el deslizamiento; elimina ejecuciones. El EA acaba operando una fracción de sus señales, y cuáles se pierde lo decide la velocidad del mercado en lugar de la estrategia.
✕Comparar brókers solo por el spread
Un spread anunciado estrecho con mala ejecución puede costar más que uno más amplio ejecutado limpiamente. El número comparable es el coste total por ida y vuelta — spread más comisión más deslizamiento medido.
En detalle
Cada anuncio de aquí incluye una tolerancia de ejecución, y el catálogo no se pone de
acuerdo sobre su significado. La desviación decide qué ejecuciones se rechazan, no cómo
de malas son las aceptadas — y aquí la misma cifra significa dos tamaños.
La tolerancia que incluye cada anuncio
Sobre los 14 EAs publicados aquí
Valor
Anuncios con una entrada de tolerancia de ejecución
14
Entradas de parámetro que la describen
40
Tolerancia declarada de 0,3 pips
3
Tolerancia declarada de 3 pips
11
Páginas que dicen que no afecta al backtest
8
Páginas que dicen que el registro se midió con ese valor
2
Ejecuciones con una cifra de deslizamiento medida
0
Las filas tres y cuatro son la trampa. Cairn y Thunderhead imprimen un 3 desnudo y lo
cuentan en puntos; otros nueve imprimen un 3 desnudo y lo cuentan en pips. La misma cifra,
con un factor de diez entre medias. Solo Iridescence, Lattice Weave y Tidewell Slack
imprimen la unidad al lado — los tres que no puede leer mal.
Las filas cinco y seis describen un mismo ajuste en dos registros, y la fila siete dice de
cuál fiarse: ninguno de nuestros backtests mide una ejecución contra una solicitud. Eso lo
convierte en una instrucción para el trading real, no en un supuesto de backtest — el
límite que nuestra metodología traza alrededor de cada registro.
Muerde más fuerte donde está más apretada: con 0,3 pips, una ejecución que se mueva más
allá se rechaza, así que las 4.725 operaciones de Cairn se vuelven menos de las que
muestra el registro, no peores.
Preguntas frecuentes
¿Cuánto deslizamiento es normal para un EA de MT5?
En una cuenta competitiva y en condiciones ordinarias, una media por debajo de unos 0,5 pips sobre cien o más operaciones es buena, y de 0,5 a 1,5 pips resulta viable para estrategias con objetivos de decenas de pips. Medias sostenidas por encima de 1,5 pips merecen investigación, sobre todo si la estrategia opera a menudo.
¿Por qué mi resultado real es peor que el backtest?
El deslizamiento y el spread son la explicación habitual. El Probador de Estrategias ejecuta al precio que él decide y no modela el retraso entre el envío de una orden y su ejecución, así que las ejecuciones reales son sistemáticamente algo peores. El efecto escala con el número de operaciones, y por eso las estrategias frecuentes se separan antes de sus backtests.
¿Un VPS reduce el deslizamiento?
Reduce la parte causada por la distancia y el retraso entre su terminal y el servidor del bróker, que es la que más pesa en estrategias con objetivos pequeños. No hace nada contra la parte causada por el movimiento del mercado o por la liquidez escasa en el momento de la orden.
¿Qué desviación debería usar un EA?
La suficiente para que se ejecuten las señales que merecen tomarse, y no más. Las estrategias con objetivos grandes pueden aceptar de 10 a 30 puntos sin que importe; las de scalping suelen fijar unos pocos puntos para que una mala ejecución se rechace en lugar de aceptarse, asumiendo más rechazos a cambio.