Estrategia cuantitativa de equilibrio dinámico 50% fondos y 50% posiciones


Fecha de creación: 2023-12-25 14:12:30 Última modificación: 2023-12-25 14:12:30
Copiar: 1 Número de Visitas: 678
1
Seguir
1621
Seguidores

Estrategia cuantitativa de equilibrio dinámico 50% fondos y 50% posiciones

Descripción general de la estrategia

Esta estrategia se equilibra dinámicamente con un 50% de capital y un 50% de posiciones, para lograr el control del riesgo mediante el ajuste continuo de las posiciones y la proporción de capital. Es ideal para los inversores que no pueden monitorear el mercado en tiempo real.

Principio de estrategia

  1. El capital inicial es de un millón de yuanes, dividido en un 50% de capital y un 50% de posición.

  2. En el ciclo de negociación, si el capital restante es mayor que 1.05 veces la pérdida no lograda en cada día de apertura, se utiliza el 2.5% del capital restante para la adición de riesgo.

  3. Si no se logra una ganancia mayor a 1.05 veces el saldo, se vende parte de la posición para restablecerla en equilibrio.

  4. Al final de la operación, se liquidan todas las posiciones.

Ventajas estratégicas

  1. Con un equilibrio dinámico de capital y posiciones, se puede controlar el riesgo de manera efectiva y evitar al máximo las grandes pérdidas en situaciones extremas.

  2. No es necesario monitorear el mercado con frecuencia, solo se necesita ajustar la proporción de capital y posiciones, es fácil de operar y es adecuado para inversores que trabajan mucho.

  3. Se pueden ajustar los parámetros para lograr diferentes niveles de preferencia de riesgo y satisfacer las necesidades de diferentes inversores.

Riesgo estratégico

  1. El mercado no puede capturar las fluctuaciones a corto plazo y el espacio de ganancias es limitado.

  2. Si se produce una ruptura unilateral prolongada en el mercado, puede ocasionar que la proporción de posiciones sea demasiado baja para capturar la tendencia.

  3. La configuración incorrecta de los parámetros puede causar ajustes de posición demasiado frecuentes o una baja utilización de los fondos.

Optimización de la estrategia

  1. Se pueden introducir más parámetros para un control más preciso de las posiciones y la proporción de capital.

  2. Se puede combinar con el principio de detener el deterioro, para detener adecuadamente la pérdida cuando la posición es grande.

  3. Se pueden probar diferentes configuraciones de parámetros de ciclo de negociación para mejorar la adaptabilidad de la estrategia.

Resumir

Esta estrategia logra el objetivo de controlar el riesgo a través de una idea de equilibrio dinámico de capital y posición. En comparación con otras estrategias, la operación es simple y fácil de implementar. Posteriormente, la estrategia puede perfeccionarse mediante la introducción de más parámetros ajustables y la combinación de otras ideas estratégicas.

Código Fuente de la Estrategia
/*backtest
start: 2023-12-17 00:00:00
end: 2023-12-18 19:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("00631L Trading Simulation", shorttitle="Sim", overlay=true, initial_capital = 1000000)

// 设置本金
capital = 1000000

// 设置购买和出售日期范围
start_date = timestamp(2020, 11, 4)
next_date = timestamp(2020, 11, 5)
sell_date = timestamp(2023, 10, 24)
end_date = timestamp(2023, 10, 25)  // 结束日期改为2023年10月25日

// 判断是否在交易期间
in_trade_period = true
// 实现的盈亏
realized_profit_loss = strategy.netprofit
plot(realized_profit_loss, title="realized_profit_loss", color=color.blue)
// 未实现的盈亏
open_profit_loss = strategy.position_size * open
plot(open_profit_loss, title="open_profit_loss", color=color.red)
// 剩余资金
remaining_funds = capital  + realized_profit_loss - (strategy.position_size * strategy.position_avg_price)
plot(remaining_funds, title="remaining_funds", color=color.yellow)
// 總權益
total_price = remaining_funds + open_profit_loss
plot(total_price, title="remaining_funds", color=color.white)
// 购买逻辑:在交易期间的每个交易日买入 daily_investment 金额的产品
first_buy = time >= start_date and time <= next_date
buy_condition = in_trade_period and dayofmonth != dayofmonth[1]
// 出售邏輯 : 在交易期间的截止日出售所有商品。
sell_all = time >= sell_date

// 在交易期間的第一日買入50%本金
if first_buy
    strategy.order("First", strategy.long, qty = capital/2/open)
// 在每个K线的开盘时进行买入

// 加碼邏輯 : 剩余资金 > 未实现的盈亏 * 1.05
add_logic = remaining_funds > open_profit_loss * 1.05
if buy_condition
    strategy.order("Buy", strategy.long, when = add_logic, qty = remaining_funds * 0.025 / open)
//

// 減碼邏輯 : 剩余资金 > 未实现的盈亏 * 1.05
sub_logic = open_profit_loss > remaining_funds * 1.05
if buy_condition
    strategy.order("Sell", strategy.short, when = sub_logic, qty = open_profit_loss * 0.025/open)
//

strategy.order("Sell_all",  strategy.short, when = sell_all, qty = strategy.position_size)

// 绘制交易期间的矩形区域
bgcolor(in_trade_period ? color.green : na, transp=90)