Эта стратегия является всеобъемлющей системой отслеживания трендов, которая сочетает в себе множество технических индикаторов и методов анализа импульса. Ядро стратегии использует скользящие средние кроссоверы, подтверждение тренда и индикаторы импульса в сочетании с контролем волатильности для управления рисками. Стратегия показывает хорошую адаптивность на рынках с четкими средне- и долгосрочными тенденциями.
Стратегия использует многоуровневый механизм подтверждения сигналов, включающий следующие ключевые элементы:
Всеобъемлющими условиями торговли являются: Долгие условия: EMA9 пересекает EMA21, линия MACD выше линии сигнала и положительная, RSI между 40-70, цена выше EMA9 Короткие условия: EMA9 пересекается ниже EMA21, линия MACD ниже линии сигнала и отрицательна, RSI между 30-60, цена ниже EMA9
Эта стратегия создает относительно полную систему торговли, следующую за трендом, путем сочетания нескольких технических индикаторов. Основные преимущества заключаются в надежности сигнала и рациональном контроле рисков, хотя она сталкивается с проблемами с задержкой и оптимизацией параметров. Благодаря предложенным направлениям оптимизации стратегия имеет потенциал для улучшения производительности в живой торговле. Рекомендуется провести тщательное тестирование исторических данных и корректировать параметры в соответствии с конкретными характеристиками рынка перед реализацией.
/*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("Estratégia Cripto - 1D", shorttitle="Estratégia Cripto", overlay=true) // Definição das Médias Móveis Exponenciais (EMA) ema9 = ta.ema(close, 9) ema21 = ta.ema(close, 21) // Definição do MACD [macdLine, signalLine, _] = ta.macd(close, 12, 26, 9) // Definição do RSI rsi = ta.rsi(close, 14) // Volume médio volMedio = ta.sma(volume, 14) // Definição das Bollinger Bands basis = ta.sma(close, 20) dev = ta.stdev(close, 20) upperBand = basis + 2 * dev lowerBand = basis - 2 * dev // Condições de Compra (Long) longCondition = (ema9 > ema21) and (macdLine > signalLine) and (macdLine > 0) and (volume > volMedio) and (rsi > 40 and rsi < 70) and (close > ema9) if (longCondition) strategy.entry("Compra", strategy.long) // Condições de Venda (Short) shortCondition = (ema9 < ema21) and (macdLine < signalLine) and (macdLine < 0) and (volume > volMedio) and (rsi < 60 and rsi > 30) and (close < ema9) if (shortCondition) strategy.entry("Venda", strategy.short) // Stop Loss e Take Profit strategy.exit("Take Profit/Stop Loss", from_entry="Compra", loss=200, profit=400) strategy.exit("Take Profit/Stop Loss", from_entry="Venda", loss=200, profit=400) // Plotagem das Médias Móveis e Bollinger Bands plot(ema9, color=color.green, title="EMA 9") plot(ema21, color=color.red, title="EMA 21") plot(upperBand, color=color.blue, title="Upper Band") plot(lowerBand, color=color.blue, title="Lower Band")