Diseño Experimental de la Guerra de Desgaste del Capital
2026-02-02
Revisemos los conceptos fundamentales del diseño experimental, ya que los detalles del código escrito por la IA aún necesitan ser perfeccionados.
Escala de Tiempo t
La escala de tiempo t es discreta y representa cada momento del mercado. Puede ser un minuto, una hora, un día, etc. Normalmente se refiere a cada vela (K-line). A continuación, se discutirán muchas series temporales, cuyas variables independientes son t.
Cuenta de Referencia (Benchmark)
La cuenta de referencia es una cuenta que no utiliza ninguna estrategia de gestión de capital. Siempre opera con una posición inicial de 1 unidad. El rendimiento de la cuenta de referencia se utiliza para guiar la gestión de capital de la cuenta de apuesta.
- Beneficio/Pérdida Acumulado de la Cuenta de Referencia BasePnL(t), serie temporal, valor inicial 0. Siempre opera con una posición inicial de 1 unidad. La curva de beneficio/pérdida acumulado resultante.
Cuenta de Apuesta
La cuenta de apuesta utiliza una estrategia de gestión de capital Anti-Martingale, ajustando dinámicamente el tamaño de la posición según el rendimiento de la cuenta de referencia.
Parámetros importantes:
- Objetivo de Toma de Ganancias M_T, determinado por los parámetros de la estrategia de apuesta.
Objetos de estudio:
Beneficio/Pérdida No Realizado UnrealizedPnL(t), serie temporal, representa el beneficio/pérdida no realizado de la posición actual de la cuenta de referencia. Valor inicial 0.
Beneficio/Pérdida Realizado RealizedPnL(t), serie temporal, representa el beneficio/pérdida ya realizado por la cuenta de referencia. Valor inicial 0.
Beneficio/Pérdida Acumulado PnL(t), serie temporal, representa la ganancia o pérdida generada por el sistema. Es siempre igual a PnL(t) = UnrealizedPnL(t) + RealizedPnL(t). Este PnL es la curva de valor neto (Net Asset Value). Se puede escalar linealmente a cualquier tamaño de capital inicial. El rendimiento del modelo de apuesta se puede observar a través de PnL(t).
Control de Riesgo
Determinar el Flujo de Caja de Entrada
Flujo de Caja de Entrada C(t), serie temporal, representa la velocidad del flujo de caja de entrada (atención, no el volumen total).
Se deriva del historial de rendimiento de la cuenta de referencia y se actualiza dinámicamente.
El método de cálculo recomendado es: calcular, para cada operación de la cuenta de referencia, la mayor pérdida / duración como valor de C(t).
Construir la Línea de Control de Riesgo Estricta
Línea de Control de Riesgo RiskLine, valor inicial 0.
Naturalmente, se itera según RiskLine(t+1) = RiskLine(t) - C(t). Al tomar ganancias, RiskLine se restablece a 0.
La línea de control de riesgo se desplaza hacia abajo a medida que pasa el tiempo. En cualquier momento, se garantiza que UnrealizedPnL(t) >= RiskLine(t).
Capital de Riesgo (Venture Capital, VC)
Siempre igual a VC(t) = UnrealizedPnL(t) - RiskLine(t), representa el capital actualmente disponible para apostar, el capital que asume el riesgo de pérdida total. El capital de riesgo siempre es no negativo.
Determinar el Tamaño de la Posición
En principio, bajo las condiciones de control de riesgo, apostar de la manera más agresiva posible para maximizar la eficiencia en el uso del capital de riesgo. Cualquier acción que desperdicie capital de riesgo carece de sentido. Cada tamaño de posición se determina con la determinación de que la pérdida máxima agote directamente VC(t), sin desperdiciar ni una unidad de capital de riesgo.
Pérdida Máxima de Referencia, StopLoss(t)
Representa la máxima pérdida flotante establecida por unidad de posición actual, es decir, el nivel de stop-loss durante la tenencia de la posición. Durante la tenencia, si se toca esta línea de stop-loss, provocará una salida intradía. La pérdida máxima de referencia se deriva del historial de rendimiento de la cuenta de referencia y se actualiza dinámicamente.
El método de cálculo recomendado es: calcular, para cada operación de la cuenta de referencia, la mayor pérdida flotante intradía como valor de StopLoss(t). Nota: hay que calcular la pérdida flotante intradía, no el beneficio/pérdida final. Para posiciones largas se usa el precio mínimo, para posiciones cortas se usa el precio máximo.
Tamaño de la Posición, es un entero no negativo que representa el múltiplo de la posición de la cuenta de apuesta en relación con la posición de la cuenta de referencia.
if StopLoss(t) > 0 then
Position(t) = max(1, floor(VC(t) / StopLoss(t)))
else
Position(t) = 0
end if
Nota: Si StopLoss(t) = 0.01 y VC(t) = 1, esto significa que abriríamos una posición 100 veces mayor que la posición de referencia. Esto parece un tamaño de posición muy agresivo. Por ejemplo, el monto mínimo de operación para contratos de BTC es 0.0001 BTC, entonces una posición 100 veces mayor sería solo una posición de 0.01 BTC, lo cual no parece tan alarmante. Sin embargo, aún es necesario observar si este múltiplo podría ser demasiado grande, haciendo que sea imposible de implementar en la operación real.
Período de Observación
Cuando C(t) es 0 o StopLoss(t) es 0, indica un período de observación. No se realizan operaciones, solo se actualizan C(t) y StopLoss(t). Position(t) siempre es 0.
Evento de Toma de Ganancias
Cuando UnrealizedPnL(t) >= M_T, se activa el evento de toma de ganancias y se procede a tomar ganancias. Dado que la toma de ganancias se activa intradía, UnrealizedPnL(t) solo puede alcanzar M_T, no superarlo. Al verificar el evento de toma de ganancias, se debe utilizar el beneficio flotante máximo de la posición, calculando con el precio más alto para posiciones largas y el precio más bajo para posiciones cortas.
Registrar el evento de toma de ganancias, restablecer RiskLine(t) = UnrealizedPnL(t) = 0, haciendo que VC(t) = 0.
RealizedPnL(t) += M_T
UnrealizedPnL(t) = 0
RiskLine(t) = 0
La información ya observada, C(t) y StopLoss(t), permanece sin cambios.
Evento de Stop-Loss
Cuando la pérdida flotante máxima durante la tenencia de la posición >= StopLoss(t), se activa el evento de stop-loss y se procede a aplicar el stop-loss.
Registrar el evento de stop-loss. UnrealizedPnL(t) solo puede retroceder hasta RiskLine(t), es decir, VC(t) = 0.
El stop-loss también ocurre intradía. Una vez que ocurre el stop-loss, esta operación se detiene, incluso si hay una recuperación posterior, la pérdida ya está bloqueada. El capital de control de riesgo se reducirá a cero, pero en realidad no es necesario restablecer ningún estado; se aplica el stop-loss, pero la ejecución continúa.
Para la cuenta de referencia, la información ya observada, C(t) y StopLoss(t), permanece sin cambios.