Estrategia de negociación cuantitativa integral basada en múltiples indicadores

El autor:¿ Qué pasa?, Fecha: 2023-12-28 17:46:45
Las etiquetas:

img

Resumen general

La estrategia se llama Comprehensive Quantitative Trading Strategy Based on Multiple Indicators. Integra varios indicadores técnicos, incluidos SuperTrend, QQE y Trend Indicator A-V2, para formar un sistema comercial completo que analiza el mercado desde múltiples dimensiones.

La idea central es combinar diferentes indicadores para mejorar la precisión del juicio mientras se capturan las principales tendencias en el mercado, para proporcionar a los operadores señales comerciales estables y eficientes.

Estrategia lógica

La lógica de negociación central de esta estrategia se basa en los juicios combinados de los siguientes tres indicadores:

  1. SuperTrend: Para determinar si el precio está en una tendencia alcista o descendente.

  2. QQE: Una versión mejorada del RSI que incorpora características de reversión media. Se utiliza para juzgar si el mercado está sobrecomprado o sobrevendido. El umbral se ajusta dinámicamente en función de la banda de desviación estándar del RSI.

  3. Indicador de tendencia A-V2: Compara la EMA del precio y la EMA del precio abierto para determinar la dirección de la tendencia.

Los tres indicadores anteriores tienen enfoques diferentes. SuperTrend se enfoca en tendencias y puntos de reversión. QQE se centra en los niveles de sobrecompra / sobreventa. A-V2 ayuda a determinar la tendencia a medio y largo plazo. Esta estrategia los integra para formar un sistema completo de decisión comercial.

La lógica de negociación específica es la siguiente:

Una señal de compra se genera cuando SuperTrend muestra una tendencia alcista, QQE muestra que el RSI está por debajo del nivel de sobreventa y que las EMA A-V2 están subiendo.

Una señal de venta se genera cuando SuperTrend muestra una tendencia bajista, QQE muestra que el RSI está por encima del nivel de sobrecompra y los EMA A-V2 están cayendo.

El juicio exhaustivo de múltiples indicadores asegura una alta precisión en las señales al tiempo que maximiza las oportunidades en el mercado para lograr una negociación estable y eficiente.

Análisis de ventajas

Las principales ventajas de esta estrategia son las siguientes:

  1. La integración de múltiples indicadores permite la verificación mutua, mejorando así en gran medida la precisión.

  2. Una cobertura más completa para el comercio bidireccional: permitir posiciones largas y cortas puede generar ganancias decentes tanto de las fluctuaciones al alza como a la baja del mercado.

  3. Mejor control de riesgos. La combinación de indicadores evita señales falsas de indicadores individuales. Indicadores como QQE también controlan los riesgos inherentemente.

  4. Fácil de usar, ajuste flexible de parámetros. Los parámetros de entrada son sencillos de ajustar para que los usuarios se adapten a sus propias preferencias para adaptarse a las diferentes condiciones del mercado.

  5. Puede aplicarse a mercados como acciones, divisas, criptomonedas y le conviene a los operadores técnicos en particular.

Análisis de riesgos

Los principales riesgos de esta estrategia incluyen:

  1. El riesgo de sesgo en los juicios de los indicadores: las anomalías raras de los precios pueden causar sesgos en las señales de los indicadores y, por lo tanto, riesgos.

  2. Este tipo de estrategia se centra en el seguimiento de tendencias, por lo que las inversiones fundamentales pueden causar enormes pérdidas.

  3. El riesgo de un ajuste inadecuado de los parámetros puede distorsionar las señales del indicador.

Las principales soluciones de gestión del riesgo son: 1) Verificar las señales entre indicadores para evitar la dependencia de un único indicador; 2) Controlar el tamaño de las posiciones para las pérdidas gestionadas por operación; 3) Ajustar los parámetros por diferentes mercados.

Direcciones de optimización

La estrategia se puede optimizar en los siguientes aspectos:

  1. Se puede introducir un stop loss de seguimiento o un stop loss con ganancia.

  2. Se pueden añadir indicadores como MACD, DMI, OBV para confirmar la señal.

  3. Introducir el tamaño de las posiciones basado en la volatilidad y ajustar dinámicamente los tamaños de las posiciones de acuerdo con el cambio de la volatilidad del mercado.

  4. Optimizar el ajuste de parámetros. Se pueden realizar pruebas posteriores más largas para encontrar los conjuntos de parámetros óptimos para esta estrategia.

  5. Utilice diferentes conjuntos de parámetros para diferentes mercados. Los parámetros se pueden optimizar por separado para obtener los mejores resultados en diferentes mercados (acciones, forex, criptomonedas, etc.).

Conclusión

Esta estrategia integra los indicadores SuperTrend, QQE y A-V2 en un sistema comercial cuantitativo integral con juicios de señales robustos. Al combinar tendencia, niveles de sobrecompra / sobreventa y verificaciones de tendencia a medio y largo plazo, puede identificar efectivamente oportunidades mientras controla estrictamente los riesgos. La estrategia tiene ventajas significativas y vale la pena evaluar y optimizar en el comercio en vivo por parte de los operadores técnicos. También proporciona valiosas referencias para el desarrollo de otras estrategias.


/*backtest
start: 2022-12-21 00:00:00
end: 2023-12-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//author:盧振興 芙蓉中華中學畢業 育達科技大學畢業碩士
//參考資料 : QQE MOD By:Mihkel00 ,SuperTrend By:KivancOzbilgic , TrendIndicator A-V2 By:Dziwne

strategy("綜合交易策略", shorttitle="Comprehensive Strategy", overlay=true)

// 添加單邊或多空參數
OnlyLong = input(true, title="單邊")

// SuperTrend 参数
PeriodsST = input(9, title="ST ATR Period")
MultiplierST = input(3.9, title="ST ATR Multiplier")
srcST = input(hl2, title="ST Source")

atrST = atr(PeriodsST)
upST = srcST - (MultiplierST * atrST)
upST := close[2] > upST[1] ? max(upST, upST[1]) : upST
dnST = srcST + (MultiplierST * atrST)
dnST := close[2] < dnST[1] ? min(dnST, dnST[1]) : dnST
trendST = 1
trendST := nz(trendST[1], trendST)
trendST := trendST == -1 and close[2] > dnST[1] ? 1 : trendST == 1 and close[2] < upST[1] ? -1 : trendST

// QQE 参数
RSI_PeriodQQE = input(6, title='QQE RSI Length')
SFQQE = input(5, title='QQE RSI Smoothing')
QQE = input(3, title='QQE Fast Factor')
ThreshHoldQQE = input(3, title="QQE Thresh-hold")
srcQQE = input(close, title="QQE RSI Source")

Wilders_PeriodQQE = RSI_PeriodQQE * 2 - 1

RsiQQE = rsi(srcQQE, RSI_PeriodQQE)
RsiMaQQE = ema(RsiQQE, SFQQE)
AtrRsiQQE = abs(RsiMaQQE[1] - RsiMaQQE)
MaAtrRsiQQE = ema(AtrRsiQQE, Wilders_PeriodQQE)
darQQE = ema(MaAtrRsiQQE, Wilders_PeriodQQE) * QQE

basisQQE = sma(RsiMaQQE - 50, 50)
devQQE = 0.35 * stdev(RsiMaQQE - 50, 50)
upperQQE = basisQQE + devQQE
lowerQQE = basisQQE - devQQE

qqeCondition = RsiMaQQE[1] - 50 > upperQQE[1] ? true : RsiMaQQE[1] - 50 < lowerQQE[1] ? false : na

// Trend Indicator A-V2 参数
ma_periodA_V2 = input(52, title="TIA-V2 EMA Period")
oA_V2 = ema(open, ma_periodA_V2)
cA_V2 = ema(close, ma_periodA_V2)
trendIndicatorAV2Condition = cA_V2[1] >= oA_V2[1] ? true : false

// 综合交易逻辑
longCondition = trendST == 1 and qqeCondition and trendIndicatorAV2Condition
shortCondition = trendST == -1 and not qqeCondition and not trendIndicatorAV2Condition

// 针对多单的开平仓逻辑
if (OnlyLong)
    if (longCondition)
        strategy.entry("Buy", strategy.long)        
    else
        strategy.close("Buy")

// 多空都做时的逻辑
if (not OnlyLong)
    if (longCondition)
        strategy.entry("Buy", strategy.long)
    else if (shortCondition)
        strategy.entry("Sell",strategy.short)

    // 添加多空平仓逻辑
    if (not longCondition)
        strategy.close("Buy")
    if (not shortCondition)
        strategy.close("Sell")

// 可视化信号
plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=shortCondition and not OnlyLong, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")


Más.