В процессе загрузки ресурсов... загрузка...

Адаптивное обнаружение FVG и стратегия торговли MA с динамическим сопротивлением

Автор:Чао Чжан, Дата: 2024-11-29 14:50:09
Тэги:FVGМ.А.SMCИКТ

img

Обзор

Эта стратегия является всеобъемлющей торговой системой, которая сочетает в себе обнаружение разрыва в справедливой стоимости (FVG), определение движущегося среднего тренда и динамические уровни сопротивления.

Принципы стратегии

Основная логика включает следующие ключевые компоненты:

  1. FVG Detection: выявляет бычьи и медвежие разрывы справедливой стоимости в течение определенных временных рамок (по умолчанию 1 час)
  2. Определение тенденции: использует скользящую среднюю за 20 периодов для оценки направления тенденции рынка
  3. Подтверждение обратного движения: оценивает сигналы обратного движения на рынке с помощью моделей свечей
  4. Динамическое сопротивление: использует последние максимумы в качестве уровней сопротивления и целей прибыли
  5. Управление рисками: реализация защиты стоп-лосса на основе процентов

Преимущества стратегии

  1. Многомерный анализ: объединяет ценовые модели, тенденции и структуру рынка
  2. Высокая адаптивность: может регулировать параметры в различных рыночных условиях
  3. Контролируемый риск: характеризуется четкими целями стоп-лосса и прибыли
  4. Визуальная поддержка: предоставляет графическое отображение зон FVG и ключевых уровней цен
  5. Полная логика: включает в себя комплексную систему входа, выхода и управления рисками.

Стратегические риски

  1. Временная зависимость: различные временные рамки могут генерировать противоречивые сигналы
  2. Волатильность рынка: сильные колебания могут вызывать частые стоп-лосты
  3. Чувствительность параметров: эффективность стратегии сильно зависит от настроек параметров
  4. Зависимость от тенденций: может быть низкой на различных рынках
  5. Сигнальная задержка: скользящие средние имеют врожденную задержку

Направления оптимизации стратегии

  1. Ввести адаптацию к волатильности: скорректировать цели стоп-лосса и прибыли на основе волатильности рынка
  2. Добавить условия фильтрации: включить объем или другие технические показатели для подтверждения
  3. Оптимизировать временные рамки: тестировать различные комбинации временных рамок для эффективности
  4. Улучшить определение тренда: использовать несколько скользящих средних или другие индикаторы тренда
  5. Улучшить подтверждение обращения: включить дополнительные методы распознавания моделей

Резюме

Это всеобъемлющая стратегия, которая интегрирует несколько торговых концепций, ищет высоковероятные торговые возможности посредством сочетания FVG, тенденций и ценовых моделей. Сила стратегии заключается в ее систематическом подходе и контроле рисков, но внимание должно быть уделено оптимизации параметров и адаптивности к рыночной среде.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("SMC FVG Entry Strategy with Retest", overlay=true)

// Parametreler
stopLossPercent = input(2, title="Stop Loss (%)") / 100
lookbackPeriod = input(50, title="Güçlü Direnç İçin Geriye Dönük Süre")
fvgLength = input.timeframe("60", title="FVG Zaman Dilimi")  // 1 saatlik zaman dilimi
maPeriod = input(20, title="MA Dönemi")  // Trend yönü için MA dönemi

// FVG'leri Hesapla
var float fvgLow = na
var float fvgHigh = na
var bool fvgFilled = false

// Seçilen zaman diliminde FVG'leri kontrol et
if (ta.change(time(fvgLength)))
    bull_fvg = low > high[2] and close[1] > high[2]
    bear_fvg = high < low[2] and close[1] < low[2]
    
    if (bull_fvg)
        fvgLow := low[2]
        fvgHigh := high
        fvgFilled := true
    else if (bear_fvg)
        fvgLow := low
        fvgHigh := high[2]
        fvgFilled := true

// Trend Yönü Kontrolü (MA kullanarak)
ma = ta.sma(close, maPeriod)
trendUp = close > ma
trendDown = close < ma

// Dönüş Mumu Kontrolü
bullishReversal = close > open and close[1] < open[1] and fvgFilled and close > fvgHigh
bearishReversal = close < open and close[1] > open[1] and fvgFilled and close < fvgLow

// İlk güçlü direnç noktası
resistanceLevel = ta.highest(high, lookbackPeriod)

// Giriş Koşulları
if (bullishReversal and trendUp)
    entryPrice = close
    stopLoss = entryPrice * (1 - stopLossPercent)
    takeProfit = resistanceLevel
    strategy.entry("Long", strategy.long)
    strategy.exit("TP", "Long", limit=takeProfit, stop=stopLoss)

if (bearishReversal and trendDown)
    entryPrice = close
    stopLoss = entryPrice * (1 + stopLossPercent)
    takeProfit = resistanceLevel
    strategy.entry("Short", strategy.short)
    strategy.exit("TP", "Short", limit=takeProfit, stop=stopLoss)

// FVG'leri Grafik Üzerinde Göster
// if (fvgFilled)
//     var box fvgBox = na
//     if (na(fvgBox))
//         fvgBox := box.new(left=bar_index[1], top=fvgHigh, bottom=fvgLow, right=bar_index, bgcolor=color.new(color.green, 90), border_color=color.green)
//     else
//         box.set_top(fvgBox, fvgHigh)
//         box.set_bottom(fvgBox, fvgLow)
//         box.set_left(fvgBox, bar_index[1])
//         box.set_right(fvgBox, bar_index)

// Direnç Noktasını Göster
plot(resistanceLevel, color=color.blue, title="Direnç Noktası", linewidth=2)
plot(ma, color=color.red, title="Hareketli Ortalama", linewidth=2)


Связанные

Больше