Эта стратегия использует индикатор MACD для оценки рыночных тенденций и выявления потенциальных торговых точек, одновременно комбинируя индикатор RSI для подтверждения условий перекупа / перепродажи. Торговые сигналы генерируются только тогда, когда MACD дает сигнал покупки / продажи, а RSI одновременно подтверждает, что рынок перепродан / перекуплен. Это может эффективно отфильтровать ложные сигналы и улучшить стабильность стратегии.
Индикатор MACD состоит из разницы между быстрой EMA и медленной EMA, отражающей разницу между краткосрочными и долгосрочными средними ценовыми тенденциями.
Когда быстрая линия пересекает медленную линию, это золотистый крестный сигнал, указывающий на восходящий тренд.
Индикатор RSI отражает условия перекупа/перепродажи на рынке.
RSI ниже 30 указывает на то, что актив был перепродан, поскольку покупатели превзошли продавцов в течение длительного периода.
RSI выше 70 указывает на то, что АСТЕТ был СОПЛЕНЕН, поскольку давление продажи превысило давление покупки в течение отслеживаемой временной линии.
Значения ниже 30 показывают условия перепродажи, а значения выше 70 показывают условия перекупки.
Эта стратегия использует RSI для фильтрации сигналов, генерируя фактические торговые сигналы только тогда, когда MACD дает сигнал, а RSI одновременно подтверждает крайности перекупа / перепродажи.
В частности, когда MACD генерирует золотой крест, если RSI <=34 в то же время, подтверждая перепроданный рынок, генерируется сигнал покупки.
Этот механизм двойного подтверждения может отфильтровать многие ненадежные торговые сигналы, тем самым повышая стабильность и надежность стратегии.
Эта стратегия объединяет индикаторы MACD и RSI для двойного подтверждения, что может эффективно уменьшить помехи от ложных сигналов и отфильтровать некоторые ненадежные торговые сигналы, тем самым повышая надежность и стабильность сигнала.
Как индикатор цены и объема, MACD может четко определять восходящие и нисходящие тенденции на рынке. В сочетании с суждением RSI о перекупе/перепродаже он может точно фиксировать важные точки переворота на рынке. Сигналы входа и выхода ясны.
Параметры компонентов этой стратегии MACD и RSI могут быть оптимизированы и скорректированы в соответствии с различными циклами и торговыми инструментами.
MACD, RSI и другие индикаторы, используемые в этой стратегии, являются очень типичными и широко используемыми техническими индикаторами, которые легко понять.
Эта стратегия использует относительно консервативный подход двойного подтверждения, который, отфильтровывая ложные сигналы, может привести к упущенным торговым возможностям, которые могли бы привести к прибыли на основе одного индикатора.
В случае крайней волатильности рынка как индикаторы MACD, так и RSI могут отставать в вынесении суждений, что приводит к неправильным торговым сигналам, генерируемым стратегией, и понесенным убыткам.
Результативность этой стратегии во многом зависит от качества MACD, RSI и других параметров. Неправильная конфигурация параметров может легко привести к обратным торговым сигналам.
Правила стоп-лосса, основанные на цене или индикаторе, могут быть реализованы для выхода из позиций с заранее определенным порогом допустимых потерь, эффективно ограничивая потери на отдельных сделках.
Постоянная оптимизация ключевых параметров, таких как периоды быстрой/медленной линии MACD и пороги перекупа/перепродажи по индексу рентабельности, чтобы соответствовать изменяющимся структурам цикла и особенностям различных торговых инструментов.
Выполните обратные тесты по индексам акций, криптовалютам, валютным парам, сырьевым товарам и другим активам, чтобы выяснить, какой рынок лучше всего соответствует характеристикам стратегии.
Помимо компонентов MACD и RSI можно добавлять такие индикаторы, как стохастик, OBV, CCI и т. д. для большей точности подтверждения с помощью многомерного подхода фильтрации сигналов.
Эта стратегия определяет рыночные тенденции и торговые сигналы на основе индикатора MACD, в то время как RSI подтверждает условия перекупки / перепродажи для фильтрации ложных сигналов.
Производительность может быть дополнительно улучшена с помощью методов оптимизации, остановки потерь, многопроходного подтверждения и т. Д. Благодаря простой логике и хорошей стабильности, он служит хорошей стартовой стратегией для начинающих квантов для практики и оптимизации.
/*backtest start: 2023-11-17 00:00:00 end: 2023-12-17 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy(default_qty_type = strategy.percent_of_equity, default_qty_value = 25, pyramiding = 10, title="MACD crossover while RSI Oversold/Overbought", overlay=true, shorttitle="MACD Cross + RSI Oversold Overbought", initial_capital = 1000) //MACD Settings fastMA = input(title="Fast moving average", defval = 12, minval = 7) //7 16 slowMA = input(title="Slow moving average", defval = 26, minval = 7) //24 26 signalLength = input(9,minval=1) //9 6 //RSI settings RSIOverSold = input(34 ,minval=1) //26 RSIOverBought = input(75 ,minval=1) //77 src = close, len = input(14, minval=1, title="Length") up = rma(max(change(src), 0), len) down = rma(-min(change(src), 0), len) rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down)) wasOversold = rsi[0] <= RSIOverSold or rsi[1] <= RSIOverSold or rsi[2] <= RSIOverSold or rsi[3] <= RSIOverSold or rsi[4] <= RSIOverSold or rsi[5] <= RSIOverSold wasOverbought = rsi[0] >= RSIOverBought or rsi[1] >= RSIOverBought or rsi[2] >= RSIOverBought or rsi[3] >= RSIOverBought or rsi[4] >= RSIOverBought or rsi[5] >= RSIOverBought [currMacd,_,_] = macd(close[0], fastMA, slowMA, signalLength) [prevMacd,_,_] = macd(close[1], fastMA, slowMA, signalLength) signal = ema(currMacd, signalLength) crossoverBear = cross(currMacd, signal) and currMacd < signal ? avg(currMacd, signal) : na crossoverBull = cross(currMacd, signal) and currMacd > signal ? avg(currMacd, signal) : na plotshape(crossoverBear and wasOverbought , title='MACD-BEAR', style=shape.triangledown, text='overbought', location=location.abovebar, color=orange, textcolor=orange, size=size.tiny) plotshape(crossoverBull and wasOversold, title='MACD-BULL', style=shape.triangleup, text='oversold', location=location.belowbar, color=lime, textcolor=lime, size=size.tiny) // Configure backtest start date with inputs startDate = input(title="Start Date", defval=8, minval=1, maxval=31) startMonth = input(title="Start Month", defval=3, minval=1, maxval=12) startYear = input(title="Start Year", defval=2021, minval=1800, maxval=2100) afterStartDate = (time >= timestamp(syminfo.timezone, startYear, startMonth, startDate, 0, 0)) if (afterStartDate==true) posSize = abs(strategy.position_size) strategy.order("long", strategy.long, when = crossoverBull and wasOversold) strategy.order("long", long=false, qty=posSize/3, when = crossoverBear and wasOverbought)