2. Cómo ejecutar una prueba retrospectiva

2.1. Punto de entrada y método de configuración.

Ejecute la prueba retrospectiva usando qt.run(op, mode=1, …). La configuración se puede establecer de antemano a través de qt.configure(…). Los kwargs pasados ​​para ejecutar se fusionarán con la configuración actual (los parámetros pasados ​​para ejecutar tienen prioridad).

2.2. Lista completa de parámetros de tiempo de ejecución de backtest (enumere y explique brevemente)

Los siguientes son los principales parámetros relacionados con el backtesting del modo = 1; consulte la API qteasy 2.0 actual para obtener más detalles.

Nombre del parámetro

Tipo/valores opcionales

Significado

asset_pool

cadena o lista

Universo de backtest (tickers de acciones, etc.).

asset_type

str

Tipo de activo (por ejemplo, “E” para acciones).

invest_start

str

Fecha de inicio del backtest.

invest_end

str

Fecha de finalización del backtest.

invest_cash_amounts

list/float

Invierta los fondos inicialmente o en cuotas.

invest_cash_dates

list

Fechas de inversión correspondientes a invest_cash_amounts (si son en lotes).

trade_batch_size

float

Unidad de cantidad mínima por operación (mínimo 0,01; por ejemplo, para acciones A puede establecerlo en 100 para representar un lote).

cost_rate_buy

float

Comprar tasa de coste (comisiones, etc.).

cost_rate_sell

float

Tasa de costo de venta.

cost_min

float

Costo mínimo por transacción.

allow_sell_short

bool

Si se permiten las ventas en corto.

trade_log

bool

Si se debe registrar el registro comercial.

visual

bool

Ya sea para generar gráficos de visualización.

Otros parámetros posibles: deslizamiento, unidad comercial, impuesto de timbre, etc. Consulte la documentación para qt.configure() o ejecute.

2.3. Ejemplo mínimo ejecutable

import qteasy as qt

# 假设已配置数据源与 Operator
op = qt.Operator(strategies='dma', signal_type='PT', run_freq='d')
qt.configure(asset_pool='000001.SZ', invest_start='2020-01-01', invest_end='2023-12-31')
result = qt.run(op, mode=1)

2.4. Casos de uso comunes

  • Configuración de costos: utilice cost_rate_buy, cost_rate_sell y cost_min para simular comisiones y derechos de timbre.

  • Unidad de negociación: trade_batch_size controla la unidad de negociación mínima (el mínimo es 0,01; por ejemplo, para las acciones A se puede establecer en 100 acciones).

  • Si se permiten las ventas en corto: enable_sell_short=False significa solo posiciones largas.