Cómo preparar tu fichero — exactamente

El examen vale lo que valgan los datos que le des. Hay dos formas de entrar: si usas Freqtrade, subes sus propios ficheros y no conviertes nada; si usas cualquier otra cosa, un CSV pequeño. Elige tu camino aquí abajo — todos los ejemplos funcionan tal cual (descárgalos y pruébalos).

CAMINO A

Uso Freqtrade

Sube el fichero que Freqtrade ya ha escrito. Sin convertir nada, sin editar nada.

→ backtest .json / .zip · hyperopt .fthypt

Ir al Camino A ↓

CAMINO B

Uso otra cosa

Excel, Python, TradingView, MT4/5, tu propio backtester… → un CSV con tus resultados.

→ B1 una estrategia · B2 ⭐ todas las variantes · B3 lista de operaciones

Ir al Camino B ↓

En una línea: qué necesitamos de verdad

La secuencia de resultados que dio tu estrategia, a lo largo del tiempo. Nada más. Ni tus reglas, ni tu código, ni tus parámetros — no los pedimos nunca y no sabríamos qué hacer con ellos. Si puedes producir una columna de retornos diarios (o el saldo de tu cuenta día a día), ya lo tienes todo.

CAMINO A · Freqtrade — ficheros nativos, sin convertir

1. Tu backtest. Corre freqtrade backtesting --export trades y sube el fichero que crea en user_data/backtest_results/ — el .zip en versiones recientes o el .json en las antiguas. Ambos valen: leemos la curva diaria y rellenamos con 0 los días sin operaciones (validado contra 910 ficheros reales).

2. Tu hyperopt (si lo tienes, haz ESTO primero). Sube el .fthypt de user_data/hyperopt_results/. No lleva las curvas dentro, así que por sí solo no se puede examinar — lo que nos da es el número REAL de variantes que probaste, que es el dato más importante de todo el examen. Lo leemos, te lo enseñamos y te damos un enlace para subir tu backtest ganador con ese número ya puesto.

3. Pon periodos por año = 365 (la cripto opera todos los días). Es el único ajuste que no puedes dejar en el valor por defecto de las acciones (252).

⚠️ Subir solo la ganadora de un hyperopt, sin su número de variantes, es la forma más rápida de sacar un veredicto bueno de mentira. El paso 2 existe justo para evitar eso.
CAMINO B · Tu propio CSV — ¿cuál de los tres?

· Backtesteaste UNA estrategia → B1 (desbloquea PSR, MinTRL y los pecados).
· Probaste MUCHAS variantes y te quedaste la mejor → B2 ⭐ (desbloquea además PBO + Deflated Sharpe — el examen completo. Este es el que importa).
· Solo tienes la lista de operaciones cerradas → B3.

B1 · Una estrategia (retornos o equity) — ⬇ descargar ejemplo

Qué debe contener: una fila por periodo (día/semana/mes), dos columnas:

· fecha — la fecha del periodo (ISO tipo 2024-03-01 es lo más seguro)
· valor — O el retorno del periodo en decimales (0.004 = +0,4%) O el saldo de la cuenta (10000, 10040, …). Detectamos solos cuál es — nunca mezcles ambos.

fecha,ret
2024-01-02,0.0041
2024-01-03,-0.0012

Cómo generarlo · Excel/Google Sheets: dos columnas como arriba → Archivo → Guardar como → CSV (el de "punto y coma" también vale, lo entendemos). · Python: serie.to_csv("mi_backtest.csv") (una Series de pandas de retornos con índice de fechas es exactamente esto). · Cualquier backtester: exporta la curva de equity.

¿Dudas? Prefiere la curva de equity DIARIA: es inequívoca y los retornos los derivamos nosotros.

B2 · ⭐ TODAS tus variantes (matriz) — ⬇ descargar ejemplo

El fichero más valioso que puedes producir. Primera columna fecha, y después una columna por cada variante que probaste — TODAS (ganadoras y perdedoras), mismo periodo, mismo tipo (todo retornos, o todo equity — nunca mezclado). Con ≥8-10 variantes el PBO empieza a ser significativo; 100+ va perfecto. Las variantes tienen que ser de verdad distintas: casi-copias de una estrategia (un parámetro movido un 1 %) hacen que el PBO salga peor de lo que es — el informe lo avisa cuando pasa.

fecha,cfg_a,cfg_b,cfg_c
2024-01-02,0.004,-0.001,0.002
2024-01-03,-0.001,0.002,0.000

Cómo generarlo: en tu bucle de optimización, guarda los retornos diarios de cada variante como una columna. Python: pd.DataFrame({nombre: serie de cada variante}).to_csv("rejilla.csv"). Subir solo la ganadora esconde justo lo que necesitamos examinar — si no puedes reconstruir la rejilla, al menos declara en el paso 2 del formulario CUÁNTAS variantes probaste.

B3 · Lista de operaciones — ⬇ descargar ejemplo

Una columna llamada ret / return / pnl / profit: el retorno de cada operación CERRADA en decimales (0.02 = +2%), en orden cronológico, SIN columna de fecha (o elige "trades" en el desplegable si la tiene). Con las pérdidas incluidas — una lista solo de ganadoras es autoengaño.

pnl
0.021
-0.013

⚠️ Es el formato menos informativo: sin fechas no podemos comprobar la estabilidad por años, y el Sharpe por operación no es comparable al diario. Úsalo solo si no tienes otra cosa.

Lo que toleramos automáticamente (verificado en el motor)

Separador coma, punto y coma o tabulador · comas decimales (0,004) · signo % (0,4% o 0.4% → dividimos entre 100) · separadores de miles (10,000 o 1.234,56) · fechas desordenadas (las ordenamos) · retornos vs equity (lo detectamos). Es decir: el CSV que exporta el Excel en español funciona tal cual sale. Aun así, lo más seguro sigue siendo: coma como separador, punto decimal y fechas ISO.

Comprueba que lo hemos leído bien (10 segundos, hazlo)

El informe empieza con una línea que dice cómo hemos entendido tu fichero: cuántos periodos, de qué fecha a qué fecha, leído como retornos o como equity, y cuántas variantes. Lee esa línea antes que el veredicto. Si el número de periodos o las fechas no cuadran con lo que subiste, el veredicto es sobre un fichero que no es el tuyo — corrige el CSV y repite.

El desajuste más habitual: tu primera columna no se reconoció como fechas y 743 filas quedaron en "743 periodos, sin fechas". Usa fechas ISO (2024-03-01) y desaparece.
Los errores que SÍ estropean el análisis (estos no podemos detectarlos por ti)
  1. Subir solo la ganadora de muchas variantes sin declarar cuántas probaste. Es la causa nº 1 de backtests "validados" que fallan en vivo. Sube la matriz o, como mínimo, declara el número.
  2. Porcentajes como números sueltos: un "0.4" que significa 0,4% se leerá como +40%. Escribe 0.004, o escribe "0,4%" con el signo % (ese sí lo detectamos).
  3. Periodos por año equivocados: acciones diario=252, cripto diario=365, semanal=52, mensual=12. Escala todos los números anualizados del informe.
  4. Ventana elegida a dedo: sube el periodo COMPLETO que backtesteaste, no el trozo bonito. El examen es contigo mismo.
  5. Retornos brutos declarando "costes incluidos": la atestación del paso 2 solo funciona si la respondes con verdad.
  6. Mezclar retornos y equity en una matriz: todas las columnas del mismo tipo.
¿Cuántos datos hacen falta?

Por debajo de ~60 periodos el examen te dirá (honestamente) que la muestra es pequeña; ≥250 (un año de datos diarios) empieza a ser significativo; más es mejor. No es una limitación de NeuralTEST — es la realidad estadística en la que vive tu backtest, y el MinTRL te dirá el número exacto de periodos que tu Sharpe exige.

← volver al examen