Стратегия Bottom Hunter - это краткосрочная торговая стратегия для криптовалют.
Эта стратегия сочетает в себе несколько технических индикаторов для определения дна. В частности, она использует индикатор MACD для оценки сигналов обратного движения вниз, индикатор RSI для определения состояния перепроданности и полосы Боллинджера для определения, находится ли цена ниже нижней рельсы. Сигнал покупки генерируется при выполнении всех условий.
Во-первых, стратегия использует дивергенцию MACD для оценки дна. Так называемая дивергенция означает, что цена достигает нового минимума, в то время как индикатор MACD не достигает нового минимума. Эта ситуация представляет собой ослабление объема торговли и обычно предвещает неминуемое изменение тренда.
Во-вторых, стратегия требует, чтобы показатель RSI был ниже 31.1.
Наконец, стратегия требует, чтобы цена закрытия находилась ниже средней рельсы полос Боллинджера, что указывает на то, что цена упала ниже нормального диапазона, что обеспечивает лучшую возможность для покупки.
Когда все вышеперечисленные условия выполнены одновременно, стратегия генерирует сигнал покупки и устанавливает позицию.
Стратегия "Охотников за дном" имеет следующие преимущества:
Эта стратегия также сопряжена с некоторыми рисками:
В ответ на вышеперечисленные риски для оптимизации можно использовать отслеживание стоп-потери в режиме реального времени, регулирование диапазонов параметров и т. д.
Стратегия может быть оптимизирована в следующих направлениях:
Стратегия Bottom Hunter покупает на ключевые дно, чтобы достичь избыточной доходности. Разум для определения дна является надежным, в то время как объединяет несколько условий фильтрации, чтобы избежать ложных сигналов. С правильной настройкой параметров и контролем стоп-лосса, эта стратегия может хорошо работать в краткосрочной криптовалютной торговле.
/*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)