Backtesting9 min de lectura

¿Cuánto alteran las comisiones y el deslizamiento los resultados de un backtest?

Las comisiones, el spread y el deslizamiento pueden cambiar la conclusión de un backtest. Aprende a modelar cada coste una sola vez, comparar supuestos de forma justa y poner el resultado en contexto.

Idea central: Los supuestos sobre costes de transacción forman parte del modelo y del informe: compáralos con transparencia, contabiliza cada componente una sola vez e interpreta la sensibilidad como análisis condicional, no como predicción de la ejecución futura. Etiquetas: Backtesting · Costes de transacción · Deslizamiento

Contenido educativo únicamente. No es asesoramiento de inversión, recomendación de operaciones ni pronóstico. Los ejemplos son ilustrativos; las condiciones de mercado y la ejecución pueden variar.

Una fila ordenada de piezas abstractas atraviesa tres compuertas geométricas y cambia su separación.
Los distintos supuestos de fricción pueden cambiar un resultado modelado; la ilustración es conceptual.

Un backtest puede parecer ordenado hasta que aparecen los costes. Una columna muestra el resultado bruto; otra resta una comisión; la última indica lo que queda. La aritmética puede ser correcta y, aun así, la conclusión ser frágil, porque un pequeño cambio en el spread o el deslizamiento importa cuando el margen modelado es estrecho.

La pregunta útil no es si un backtest debe incluir costes. Debe indicar qué costes incluye, cómo los aplica y cuánto depende de esas decisiones el resultado. Un modelo de costes es un supuesto sobre un proceso simulado, no un recibo de un bróker real.

¿Un precio cotizado garantiza una ejecución?

Las barras históricas muestran el movimiento del precio, pero no todos los detalles de ejecución de una orden. Por lo general, una orden de mercado busca ejecutarse, no garantiza un precio. FINRA explica que el precio de ejecución puede diferir de la cotización visible al enviar la orden, sobre todo si los precios se mueven deprisa o hay demora. Un backtest que trata cada precio de señal como una ejecución disponible ya ha hecho un supuesto de ejecución, aunque el informe nunca lo nombre.

Por eso los costes no son solo una resta final. Los precios de entrada y salida elegidos, el momento de la orden y la convención de costes afectan al resultado simulado. La divulgación estadounidense sobre ejecución distingue los spreads cotizados, efectivos y realizados; los materiales de la Regla 605 de la SEC describen el spread efectivo con relación al punto medio cuando se recibe la orden. Estos términos ayudan a precisar comparaciones, pero no convierten una simulación basada en barras en la reconstrucción de la ejecución de una persona concreta.

Nombra cada coste una sola vez

Empieza anotando los componentes que realmente modela la prueba. Las tarifas y convenciones varían entre mercados e instrumentos, así que una etiqueta genérica como costes de trading puede ocultar más de lo que aclara. Mantén cada componente en un solo lugar e indica si el importe se aplica por lado, por orden o por una operación completa de ida y vuelta.

  • Costes explícitos: comisiones, cargos de mercado u otros importes cobrados por la plataforma o el mercado. Anota la unidad e indica si incluye tanto la entrada como la salida.
  • Spread: diferencia entre los mejores precios disponibles de compra y venta. Especifica si las ejecuciones simuladas ya cruzan ese spread o si aplicas un ajuste adicional.
  • Deslizamiento: diferencia entre el precio de ejecución supuesto y una referencia o hipótesis de ejecución elegida. Define la referencia y el momento que se mide.
  • Impacto de mercado u otros costes de mantenimiento: inclúyelos solo si son pertinentes para la pregunta analizada y aclara si el impacto ya está dentro de la estimación de deslizamiento o de coste de implementación.

La regla contable es sencilla: no cobres dos veces por la misma fricción. Si la entrada ya se modela al precio vendedor y la salida al comprador, parte del coste del spread puede estar incorporado. Restar además el spread completo podría exagerarlo. A la inversa, una ejecución al punto medio de la barra no se vuelve realista por descontar una comisión después. Define primero cómo se ejecuta la orden y añade solo lo que esa convención deja fuera.

Prepara una comparación justa antes de calcular

Una comparación útil cambia un supuesto declarado y mantiene el resto de la prueba fácil de seguir. Así, quien la revise puede ver si la conclusión depende de la regla estudiada, de los datos o del modelo de ejecución añadido. También facilita documentar correcciones más adelante.

  • Fija los eventos y la versión de la regla. No cambies en silencio qué observaciones cuentan al comparar supuestos de costes.
  • Especifica las unidades. Indica el instrumento o la unidad abstracta, el tamaño, el coste por lado o por ida y vuelta y el tratamiento de órdenes parciales o no ejecutadas.
  • Separa bruto y neto. Conserva el resultado antes de costes y muestra cada componente y el resultado neto bajo la convención declarada.
  • Elige una base y alternativas justificadas. Usa tarifas documentadas u observaciones de ejecución cuando existan; si los valores son exploratorios, dilo en vez de presentarlos como típicos.
  • Aplica los costes de forma coherente. Incluye observaciones ganadoras y perdedoras, y explica cómo se tratan los precios ausentes, las órdenes rechazadas y las operaciones que no se habrían ejecutado.

El objetivo no es encontrar un único valor perfecto de deslizamiento. Es mostrar qué cambia cuando cambia un supuesto defendible. Si el resultado solo parece favorable bajo una configuración estrecha, esa dependencia merece aparecer en la conclusión principal, no en una nota que pocos lectores verán.

Un cálculo hipotético de ida y vuelta

Considera un ejemplo deliberadamente hipotético con 20 operaciones abstractas de ida y vuelta. Supongamos que el resultado bruto simulado promedia 15 dólares por operación, es decir, 300 dólares en total. El ejemplo supone 2 dólares de comisiones, 4 de spread y 5 de deslizamiento por operación. Con esa convención, los costes modelados suman 11 dólares por evento, o 220 en total; quedan 80 dólares como resultado neto simulado.

Ahora cambia solo el supuesto hipotético de deslizamiento: de 5 a 9 dólares por operación. Los costes modelados suben a 15 dólares por evento y 300 en total; el resultado neto simulado pasa a cero. No ha cambiado nada en el historial de precios subyacente. El ejercicio muestra cuánto depende el resumen de una variable de ejecución. Las cifras inventadas solo ilustran la aritmética: no son datos de mercado, una estimación de costes ni una recomendación de trading.

Usa la sensibilidad como pregunta

Un rango de supuestos puede informar más que una única estimación puntual, siempre que expliques por qué se eligió. Un caso de costes bajos, uno base y otro más alto pueden mostrar dónde cambia materialmente un resultado. No son intervalos de confianza salvo que se hayan construido e interpretado como tales, ni representan probabilidades de costes futuros.

  • Varía un componente cada vez para ver qué supuesto mueve más el resultado.
  • Después prueba un escenario combinado si los componentes podrían cambiar juntos de forma plausible; explica esa relación en vez de sumar extremos inconexos.
  • Cuando aporte valor, informa más que un total: resultado neto, dispersión, drawdown, rotación o número de observaciones afectadas responden a preguntas distintas.
  • Anota junto a cada valor su justificación. Si solo es una cifra didáctica y no una estimación observada, identifícala claramente.

Una sensibilidad de un solo factor también permite localizar un supuesto de equilibrio: el nivel modelado en el que un resumen cambia de signo o pierde una propiedad concreta. Es un límite dentro del modelo, no el coste máximo que cabe esperar pagar ni un umbral que haga adecuado un método para alguien.

Lo que un backtest ajustado por costes no puede decir

Un backtest basado en barras no puede recuperar el lugar en la cola, el libro exacto de órdenes, la latencia ni la trayectoria de cada operación dentro de una vela. Incluso un modelo de deslizamiento bien descrito es una simplificación. La ejecución real puede variar según el tipo y tamaño de orden, la liquidez, el mercado, el momento y las condiciones. El modelo puede omitir algunos efectos o representarlos solo de forma aproximada.

Estas limitaciones no son un motivo para omitir los costes. Son un motivo para describir el alcance del modelo y comparar alternativas. Un resultado histórico o simulado después de costes depende de los datos, las reglas y los supuestos de ejecución utilizados. No muestra cuánto costará una orden futura ni garantiza que el método se comporte igual en otra muestra.

La investigación llega a una cautela parecida por otra vía. El estudio de Novy-Marx y Velikov sobre anomalías publicadas del mercado de acciones encontró que los costes de transacción cambiaban la evaluación de rentabilidad de las estrategias de su muestra y que las ideas con mayor rotación afrontaban un obstáculo de costes más alto. Es evidencia sobre los estudios y supuestos que analizaron, no una estimación universal para todos los mercados, productos o métodos.

Un siguiente paso práctico

Convierte el modelo de costes en una pista de auditoría breve: enumera la convención de ejecución, nombra cada coste, indica su unidad, muestra el caso base y las alternativas, y conserva juntos los resúmenes bruto y neto. Así, otra persona puede reproducir la aritmética y ver qué supuesto necesita más evidencia.

El flujo de backtesting manual de DayTradeDrill permite definir supuestos de spread, comisión y deslizamiento durante la práctica. Esos valores son supuestos formativos; la reproducción no es un modelo de ejecución de un bróker ni establece costes reales de ejecución. Usada con ese alcance, puede ayudar a hacer visibles los supuestos sin convertir un resultado simulado en una afirmación sobre el rendimiento futuro.

El mejor informe de backtest no es necesariamente el que tiene el motor de costes más elaborado. Es el que permite inspeccionar sus supuestos, contabiliza cada fricción una sola vez y muestra cómo cambia la conclusión cuando varían. Importa la cifra neta. También importa el camino que siguió el modelo para obtenerla.

Fuentes y lecturas adicionales