Это количественная стратегия торговли, основанная на методе анализа Markttechnik (MT), широко используемом немецкими финансовыми учреждениями. Стратегия сочетает в себе несколько измерений, включая последовательность тренда SMA, идентификацию поддержки и сопротивления, анализ обратного шаблона свечей и размещение пирамидных позиций, достигая стабильной торговли посредством строгого контроля рисков. Ядро стратегии заключается в определении направления тренда рынка посредством многомерного синтеза сигналов и расширении прибыли посредством размещения пирамидных позиций при формировании тенденций.
Стратегия использует следующие ключевые компоненты для создания торговой системы: 1. Определение тренда: использует 10-периодный простой скользящий средний (SMA) в качестве основного индикатора тренда, причем цены выше SMA указывают на восходящий тренд и наоборот. 2. Поддержка и сопротивление: определяет краткосрочные зоны поддержки и сопротивления с использованием 3-периодных высоких и низких цен. 3. Образцы обратного движения: анализирует модели свечей с молотком и стреляющей звездой как важные индикаторы обратного движения. 4. Торговые сигналы: запускает торговые сигналы, основанные на подтверждении направления тренда в сочетании с уровнями поддержки/сопротивления и шаблонами перехода. 5. Управление позицией: использует стратегию размещения пирамиды, позволяющую накапливать до 2x позиции. 6. Контроль риска: устанавливает максимальный лимит привлечения 5% и использует соотношение риск-вознаграждение 2.0 для уровня остановки потери и получения прибыли.
Эта стратегия создает полную торговую систему с помощью многомерного анализа сигналов и строгого контроля рисков. Основные преимущества заключаются в надежности сигнала и управляемости рисками, хотя оптимизация параметров все еще необходима для различных рыночных условий. Благодаря предложенным направлениям оптимизации стабильность и рентабельность стратегии могут быть еще улучшены. Стратегия подходит для рынков с четкими тенденциями и является полезным соображением для трейдеров, ищущих стабильную прибыль.
/*backtest start: 2025-01-02 00:00:00 end: 2025-01-09 00:00:00 period: 30m basePeriod: 30m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=6 strategy("Markttechnik Strategie mit Pyramiding und Drawdown-Limit", overlay=true, pyramiding=2) // Eingabewerte lengthSupport = input.int(3, title="Unterstützungs-/Widerstandsfenster", minval=1) lengthSMA = input.int(10, title="SMA Länge für Trends", minval=1) riskRewardRatio = input.float(2.0, title="Risk-Reward-Ratio", minval=0.1, step=0.1) maxDrawdown = input.float(5.0, title="Maximaler Drawdown (%)", minval=0.1, step=0.1) // Unterstützungs- und Widerstandszonen berechnen support = ta.lowest(low, lengthSupport) resistance = ta.highest(high, lengthSupport) // Trendindikator (SMA-basierter Trend) sma = ta.sma(close, lengthSMA) trendUp = close > sma trendDown = close < sma // Umkehrstäbe erkennen isHammer = close > open and (low < open) and ((open - low) > 2 * (close - open)) isShootingStar = open > close and (high > open) and ((high - open) > 2 * (open - close)) // Kauf- und Verkaufssignale buySignal = isHammer and close > support and trendUp sellSignal = isShootingStar and close < resistance and trendDown // Strategiefunktionen: Pyramiding und Drawdown equityPeak = na(strategy.equity[1]) or strategy.equity > strategy.equity[1] ? strategy.equity : strategy.equity[1] // Höchster Kontostand drawdown = equityPeak > 0 ? (strategy.equity - equityPeak) / equityPeak * 100 : 0 // Drawdown in Prozent if buySignal and drawdown > -maxDrawdown strategy.entry("Buy", strategy.long) strategy.exit("Sell", "Buy", stop=low - (high - low) * riskRewardRatio, limit=close + (close - low) * riskRewardRatio) if sellSignal and drawdown > -maxDrawdown strategy.entry("Sell", strategy.short) strategy.exit("Cover", "Sell", stop=high + (high - low) * riskRewardRatio, limit=close - (high - close) * riskRewardRatio) // Unterstützungs- und Widerstandslinien zeichnen plot(support, color=color.new(color.green, 80), linewidth=1, title="Unterstützungszone") plot(resistance, color=color.new(color.red, 80), linewidth=1, title="Widerstandszone") // Trendlinie (SMA) plot(sma, color=color.blue, linewidth=2, title="SMA-Trend") // Umkehrstäbe hervorheben bgcolor(buySignal ? color.new(color.green, 90) : na, title="Kaufsignal Hintergrund") bgcolor(sellSignal ? color.new(color.red, 90) : na, title="Verkaufssignal Hintergrund") // Debugging: Drawdown anzeigen plot(drawdown, title="Drawdown (%)", color=color.purple, linewidth=2, style=plot.style_line)