
Эта стратегия основана на двойных показателях EMA для отслеживания тенденций. Она автоматически отслеживает рыночные тенденции, рассчитывая быстрые и медленные EMA, а также определяет золотые кресты и мертвые форки.
Ключевым показателем этой стратегии является двойная EMA. Она включает в себя быструю и медленную линии EMA. Длина линии EMA составляет 3 дня и является чувствительной к реакции. Длина линии EMA составляет 30 дней и является медленной к реакции.
Основные преимущества этой стратегии заключаются в том, что она позволяет автоматически идентифицировать рыночные тенденции и гибко корректировать позиции в соответствии с ними. В частности, основные преимущества:
Комбинация чувствительности быстрого EMA и стабильности медленного EMA позволяет точно уловить переломные моменты тренда и фильтровать шум, чтобы предотвратить ложные сигналы.
Используя двойные EMA-кризисные сигналы, можно скорректировать позиции только при значительных изменениях тренда, не слишком часто торгуя.
Логика стратегии проста и понятна, легко понятна и изменяется, а также удобна для количественной оптимизации обратной связи.
Высокая эффективность использования капитала, большую часть времени поддерживая позиции, следя за тенденциями.
Двойные показатели EMA относятся к стратегии отслеживания тенденций и не могут предсказать или избежать риска крупных потрясений или внезапных событий. Метод управления риском заключается в соответствующем сокращении времени позиции и своевременном прекращении убытков.
Показатели EMA чувствительны к параметрам, неправильная настройка параметров быстрой и медленной линии может привести к плохой эффективности стратегии. Оптимальные параметры можно найти с помощью методов оптимизации обратной связи системы.
Двойные показатели EMA могут приводить к ложным сигналам при некоторых задержках. Можно рассмотреть возможность введения других вспомогательных показателей для фильтрации сигналов на основе EMA.
Двойная стратегия EMA относится к стратегии отслеживания и не умеет прогнозировать большие поворотные точки. Можно рассмотреть вспомогательные средства суждения, такие как введение K-линейного формата в важных технологических местах.
Эта стратегия может быть оптимизирована в следующих аспектах:
Оптимизация параметров EMA для быстрого и медленного направления, чтобы найти оптимальную комбинацию параметров.
Добавление других комбинаций показателей, построение многофакторной модели, повышение точности сигнала. Например, введение показателей BOLL-ведущих и т. д.
Добавление стратегии стоп-лосса, контроль риска в отдельных сделках.
Параметры разных сортов не обязательно одинаковы, можно рассматривать как факторное разложение, чтобы найти наиболее подходящие параметры для каждого вида.
Можно попробовать методы машинного обучения для гиперпараметрической оптимизации с помощью драйвера времени.
Изучение таких способов, как идентификация K-линий в ключевых технологических местах, чтобы попытаться уловить преобразования более крупного уровня.
В целом, эта стратегия является простой и практичной стратегией для отслеживания тенденций двойной EMA. Она позволяет автоматически корректировать позиции за счет быстрого и медленного перекрестного определения рыночных этапов EMA. Логика стратегии проста и понятна, ее легко реализовать в количественном отношении.
/*backtest
start: 2023-02-19 00:00:00
end: 2024-02-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("EMA Crossover Strategy with Target", shorttitle="EMACross", overlay=true)
// Define input parameters
fastLength = input(3, title="Fast EMA Length")
slowLength = input(30, title="Slow EMA Length")
profitPercentage = input(100.0, title="Profit Percentage")
// Calculate EMAs
fastEMA = ta.ema(close, fastLength)
slowEMA = ta.ema(close, slowLength)
// Plot EMAs on the chart
plot(fastEMA, color=color.blue, title="Fast EMA")
plot(slowEMA, color=color.red, title="Slow EMA")
// Buy condition: 3EMA crosses above 30EMA
buyCondition = ta.crossover(fastEMA, slowEMA)
// Sell condition: 3EMA crosses below 30EMA or profit target is reached
sellCondition = ta.crossunder(fastEMA, slowEMA) or close >= (strategy.position_avg_price * (1 + profitPercentage / 100))
// Target condition: 50 points profit
//targetCondition = close >= (strategy.position_avg_price + 50)
// Execute orders
// strategy.entry("Buy", strategy.long, when=buyCondition)
// strategy.close("Buy", when=sellCondition )
if (buyCondition)
strategy.entry("Buy", strategy.long)
if (sellCondition)
strategy.close("Buy")
// // Execute sell orders
// strategy.entry("Sell", strategy.short, when=sellCondition)
// strategy.close("Sell", when=buyCondition)
// Plot buy and sell signals on the chart
plotshape(series=buyCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar)
plotshape(series=sellCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)