Diese Strategie ist ein bidirektionales Handelssystem, das auf Kerzenabsorptionsmustern basiert. Es identifiziert Marktabsorptionsmuster, indem es die Richtung, Amplitude und Volumenbeziehungen benachbarter Kerzen analysiert und Trades ausführt, wenn Bedingungen erfüllt sind. Die Strategie verwendet prozentualbasiertes Geldmanagement mit vollständiger Ein- und Ausstiegslogik.
Die Kernlogik beruht auf drei Schlüsselbedingungen:
Wenn diese drei Bedingungen gleichzeitig erfüllt sind, bestimmt die Strategie die Handelsrichtung auf der Grundlage der neuesten Kerze: lang für bullische Kerzen, kurz für bärische.
Diese Strategie baut ein komplettes Handelssystem durch mehrdimensionale Analyse von Kerzenmustern, Amplitude und Volumen auf. Während bestimmte Risiken bestehen, können die Stabilität und Zuverlässigkeit der Strategie durch die vorgeschlagenen Optimierungsrichtungen weiter verbessert werden. Die Hauptvorteile liegen in ihrer mehrdimensionalen Analysemethode und dem umfassenden Zustandsmanagementmechanismus, was sie für die Anwendung in hochvolatilen Marktumgebungen geeignet macht.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-10 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Candle Absorption Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) // Условия индикатора // 1. Две соседних свечи должны быть разнонаправленными condition1 = (close[1] > open[1] and close < open) or (close[1] < open[1] and close > open) // 2. Дельта по цене открытия/закрытия у первой свечи меньше, чем у следующей delta1 = math.abs(close[1] - open[1]) delta2 = math.abs(close - open) condition2 = delta1 < delta2 // 3. Объем первой свечи должен быть больше, а последней меньше condition3 = volume[1] > volume and volume < volume[2] // Проверяем выполнение всех условий all_conditions = condition1 and condition2 and condition3 // Определяем направление для входа is_bullish = close > open // Зеленая свеча больше (бычье поглощение) is_bearish = close < open // Красная свеча больше (медвежье поглощение) // Переменные для отслеживания состояния позиции var float entryPrice = na var bool isLong = false var bool isShort = false // Логика генерации сигналов buySignal = all_conditions and is_bullish and not isLong sellSignal = all_conditions and is_bearish and not isShort // Обработка лонгового входа if (buySignal) isLong := true isShort := false entryPrice := close strategy.entry("Long", strategy.long) // Обработка шортового входа if (sellSignal) isLong := false isShort := true entryPrice := close strategy.entry("Short", strategy.short) // Визуализация точек поглощения // if all_conditions // label.new(bar_index, high, "✔", color=is_bullish ? color.green : color.red, textcolor=color.white, style=label.style_circle, size=size.small) // Логика сброса состояния при закрытии позиции if (strategy.position_size == 0) isLong := false isShort := false entryPrice := na // Дополнительно: можно добавить стоп-лосс и тейк-профит (пример ниже) // strategy.exit("Exit Long", from_entry="Long", stop=low - atr(14), limit=high + atr(14)) // strategy.exit("Exit Short", from_entry="Short", stop=high + atr(14), limit=low - atr(14))