Эта стратегия сочетает в себе сигналы перекрестного действия фаз с многопериодными экспоненциальными скользящими средними для захвата возможностей покупки и продажи на рынке. Она использует перекрестное действие ведущей фазы и отстающей фазы для генерации торговых сигналов, включая 13, 26, 50, 100 и 200-периодные EMA для подтверждения тренда, предоставляя комплексное решение для следования тренду и краткосрочной торговли.
Основная логика состоит из двух основных компонентов: Системы фазового перекрестка и Системы подтверждения тренда EMA. Система фазового перекрестка использует простую скользящую среднюю (SMA) с замещением вверх в качестве ведущей фазы и экспоненциальную скользящую среднюю (EMA) с замещением вниз в качестве отстающей фазы. Сигналы покупки генерируются, когда ведущая фаза пересекает верхнюю фазу отставания, и сигналы продажи, когда она пересекает ниже. Система подтверждения тренда EMA использует экспоненциальные скользящие средние нескольких периодов (13/26/50/100/200) для подтверждения общих рыночных тенденций, причем 13 и 26-периодные перекрестки EMA служат вторичными торговыми сигналами.
Эта стратегия создает всеобъемлющую тенденцию после торговой системы путем сочетания систем фазового перекрестного и многопериодного EMA. Она имеет четкие сигналы, точное улавливание тренда и разумный контроль рисков, а также имеет определенные риски задержки и ложных сигналов. Стабильность и надежность стратегии могут быть дополнительно повышены с помощью оптимизации, таких как добавление фильтров волатильности и подтверждение объема. Она подходит для применения на рынках с четким трендом, и трейдерам необходимо корректировать параметры на основе специфических характеристик рынка и индивидуальных предпочтений риска.
/*backtest start: 2019-12-23 08:00:00 end: 2025-01-08 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Phase Cross Strategy with Zone", overlay=true) // Inputs length = input.int(20, title="Smoothing Length") source = input(close, title="Source") offset = input.float(0.5, title="Offset Amount", minval=0.0) // Offset for spacing // Simulating "Phases" with Smoothed Oscillators lead_phase = ta.sma(source, length) + offset // Leading phase with offset lag_phase = ta.ema(source, length) - offset // Lagging phase with offset // Signal Logic buySignal = ta.crossover(lead_phase, lag_phase) sellSignal = ta.crossunder(lead_phase, lag_phase) // Plot Phases (as `plot` objects for `fill`) lead_plot = plot(lead_phase, color=color.green, title="Leading Phase", linewidth=1) lag_plot = plot(lag_phase, color=color.red, title="Lagging Phase", linewidth=1) // Fill Zone Between Phases fill_color = lead_phase > lag_phase ? color.new(color.green, 90) : color.new(color.red, 90) fill(plot1=lead_plot, plot2=lag_plot, color=fill_color, title="Phase Zone") // Plot Buy and Sell Signals plotshape(buySignal, style=shape.labelup, location=location.belowbar, color=color.new(color.green, 0), title="Buy Signal", size=size.small) plotshape(sellSignal, style=shape.labeldown, location=location.abovebar, color=color.new(color.red, 0), title="Sell Signal", size=size.small) // Strategy Entry and Exit if buySignal strategy.entry("Buy", strategy.long) if sellSignal strategy.close("Buy") //indicator("EMA 13, 26, 50, 100, and 200 with Crossover, Value Zone, and Special Candles", overlay=true) // Define the EMAs ema13 = ta.ema(close, 13) ema26 = ta.ema(close, 26) ema50 = ta.ema(close, 50) ema100 = ta.ema(close, 100) ema200 = ta.ema(close, 200) // Plot the EMAs plot(ema13, color=color.blue, linewidth=2, title="EMA 13") plot(ema26, color=color.red, linewidth=2, title="EMA 26") plot(ema50, color=color.orange, linewidth=2, title="EMA 50") plot(ema100, color=color.green, linewidth=2, title="EMA 100") plot(ema200, color=color.purple, linewidth=2, title="EMA 200") // Crossover conditions uptrend = ta.crossover(ema13, ema26) // EMA 13 crosses above EMA 26 (buy) downtrend = ta.crossunder(ema13, ema26) // EMA 13 crosses below EMA 26 (sell) // Plot buy/sell arrows plotshape(series=uptrend, location=location.belowbar, color=color.green, style=shape.labelup, size=size.small, title="Buy Signal") plotshape(series=downtrend, location=location.abovebar, color=color.red, style=shape.labeldown, size=size.small, title="Sell Signal")