Estrategia del cazador de fondo

El autor:¿ Qué pasa?, fecha: 2024-02-06 09:26:54
Las etiquetas:

img

Resumen general

La estrategia Bottom Hunter es una estrategia de trading a corto plazo para las criptomonedas.

Principio de la estrategia

Esta estrategia combina múltiples indicadores técnicos para identificar los fondos. Específicamente, utiliza el indicador MACD para juzgar las señales de reversión de fondo, el indicador RSI para determinar el estado de sobreventa y las bandas de Bollinger para determinar si el precio está por debajo del rieles inferior.

En primer lugar, la estrategia utiliza la divergencia MACD para juzgar el fondo. La llamada divergencia significa que el precio hace un nuevo mínimo mientras que el indicador MACD no hace un nuevo mínimo. Esta situación representa un debilitamiento del volumen de operaciones y generalmente presagia una inminente inversión de tendencia.

En segundo lugar, la estrategia requiere que el indicador RSI esté por debajo de 31.1.

Por último, la estrategia requiere que el precio de cierre esté por debajo del carril medio de las bandas de Bollinger, lo que indica que el precio ha caído por debajo del rango normal, lo que proporciona una mejor oportunidad de compra.

Cuando todas las condiciones anteriores se cumplen al mismo tiempo, la estrategia genera una señal de compra y establece una posición.

Análisis de ventajas

La estrategia del cazador de fondo tiene las siguientes ventajas:

  1. El uso de múltiples indicadores para determinar el fondo garantiza la exactitud de la identificación del fondo
  2. Utilizando la divergencia MACD para juzgar las señales de reversión es una técnica de negociación experimentada
  3. Al juzgar tanto el exceso de venta como las anomalías, se evita el riesgo de falsas rupturas.
  4. Control conservador de las posiciones, sólo se construyen posiciones en puntos clave, se evita el comercio excesivo

Análisis de riesgos

Esta estrategia también tiene algunos riesgos:

  1. El mercado puede caer aún más sin un stop loss oportuno
  2. La combinación de múltiples condiciones para juzgar el fondo puede perder el fondo en algunos escenarios
  3. La determinación manual de parámetros tales como los umbrales del RSI puede afectar al rendimiento de la estrategia

En respuesta a los riesgos anteriores, se puede utilizar para la optimización el seguimiento en tiempo real de las pérdidas de parada, el ajuste de los rangos de parámetros, etc.

Direcciones de optimización

La estrategia se puede optimizar en las siguientes direcciones:

  1. Aumentar el mecanismo de stop loss adaptativo para ajustar de forma flexible la posición de stop loss en función de la volatilidad del mercado
  2. Prueba y optimización de los criterios para la determinación de señales de compra para identificar parámetros óptimos
  3. Aumentar los algoritmos de aprendizaje automático para identificar automáticamente parámetros y reglas de negociación
  4. Añadir un módulo de evaluación de tendencias para evitar la entrada en mercados de consolidación durante los mercados de tendencias
  5. Incorporar indicadores adicionales como el cambio de volumen para mejorar la identificación del fondo

Resumen de las actividades

La estrategia de Bottom Hunter compra en bajos clave con el fin de lograr rendimientos excedentes. La lógica para determinar el fondo es robusta, al tiempo que combina múltiples condiciones de filtro para evitar señales falsas. Con el ajuste adecuado de parámetros y control de stop loss, esta estrategia puede funcionar bien en el comercio de criptomonedas a corto plazo.


/*backtest
start: 2023-01-30 00:00:00
end: 2024-02-05 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("MACD Divergence Strategy", shorttitle="Strategy: MACD Dive", overlay=true)

// MACD设置
fastLength = input.int(12, "Fast Length")
slowLength = input.int(26, "Slow Length")
signalSmoothing = input.int(9, "Signal Smoothing")

[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSmoothing)

// 计算99日EMA均线
ema99 = ta.ema(close, 99)

// 计算RSI
rsiLength = input.int(14, title="RSI Length")
rsi = ta.rsi(close, rsiLength)

// 计算布林带中轨
length = input.int(20, "BB Length")
src = input(close, "Source")
mult = input.float(2.0, "BB StdDev")
basis = ta.sma(src, length)

// 买入筛选条件
priceLow = ta.lowest(low[1], 60)
macdLow = ta.lowest(macdLine[1], 60)
divergence = low < priceLow and macdLine > macdLow

allHighsBelowEma99 = true
for i = 0 to 14
    if high[i] > ema99
        allHighsBelowEma99 := false

rsiBelow = rsi < 31.1
priceDifference = (high - low) / low * 100

buySignal1 = divergence and allHighsBelowEma99 and rsiBelow
buySignal2 = high < ema99 and priceDifference >= 3 and close < open and high < basis 
buySignal3 = buySignal1 or buySignal2

// 定义一个变量来存储买入时的价格
var float buyPrice = na

// 买入逻辑
if buySignal3
    buyPrice := close // 存储买入时的价格
    strategy.entry("Buy", strategy.long)

// 止盈和止损条件
longTakeProfit = buyPrice * 1.1 // 止盈设为买入价格的1.2倍
longStopLoss = buyPrice * 0.98// 止损设为买入价格的0.99倍

// 应用止盈和止损
strategy.exit("Exit", "Buy", limit=longTakeProfit, stop=longStopLoss)
// 绘制买入信号
plotshape(series=buySignal3, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)


Más.