3. Estructura de los resultados del backtest

3.1. Descripción del valor de retorno

El objeto devuelto por qt.run(op, mode=1) suele ser un contenedor de resultados de backtest (por ejemplo, un Backtester o una estructura que contiene resultados), consistente con la API qteasy 2.0. El tipo exacto depende de la documentación.

3.2. Lista completa de campos de resultados del backtest (enumere y explique brevemente)

A continuación se muestran atributos/claves comunes en los resultados del backtest y sus significados; consulte la versión actual para obtener más detalles.

Nombre de campo/atributo

Tipo

Significado

loop_result

Estructura/Lista

Resultados de ejecución en bucle por paso de tiempo.

complete_values

DataFrame/array

Una serie completa de NAV o curva de acciones, que incluye posiciones, efectivo, valor, tarifas y las p-{股票代码} columnas de precios diarios, etc.

oper_count

int/dict

Número de operaciones o estadísticas por tipo.

summary

dict/str

Información resumida (por ejemplo, rendimiento total, índice de Sharpe, etc.).

Curva de capital / valor liquidativo

array/Series

NAV diario o por período.

Posiciones

DataFrame

Detalles de la posición en cada momento (si corresponde).

Otros campos posibles: detalles comerciales, resúmenes de tarifas, etc. Consulte las propiedades reales del objeto devuelto.

3.3. Curva de renta variable y posiciones

  • Extraiga el NAV diario del resultado: normalmente proviene de la columna value de complete_values ​​o un atributo similar.

  • Precio del mismo día: en valores_completos, la columna p-{股票代码} contiene el precio de cierre de cada instrumento para ese día; si falta, es NaN.

  • Proporción de posiciones: si los resultados proporcionan una tabla de posiciones, puede agregar por instrumento y fecha para calcular la proporción.

3.4. Métricas de rendimiento

  • Es posible que los resultados ya incluyan evaluación o métricas de rendimiento integradas (índice de Sharpe, reducción máxima, rendimiento anualizado, tasa de ganancias, etc.).

  • Cómo obtenerlo: por ejemplo, result.summary, result.evaluate() o llamar a una función de evaluación por separado; consulte la documentación de la API.