На основе стратегии пересечения MACD и RSI


Дата создания: 2024-01-23 15:26:08 Последнее изменение: 2024-01-23 15:26:08
Копировать: 1 Количество просмотров: 848
1
Подписаться
1617
Подписчики

На основе стратегии пересечения MACD и RSI

Обзор

Стратегия генерирует торговые сигналы, рассчитывая перекрестные показатели MACD и RSI. Когда RSI перекупает и перепродает, в случае возникновения MACD-форекса, генерируется сигнал покупки и продажи. Стратегия объединяет преимущества двух различных типов индикаторов, учитывая как тенденции цен, так и перекуп, что повышает эффективность стратегии.

Стратегический принцип

Эта стратегия использует комбинацию MACD и RSI для создания торговых сигналов. MACD используется для определения ценовых тенденций и динамики, а RSI - для определения перепродажи.

Сначала стратегия рассчитывает MACD на средне-быстрый и средне-быстрый и сигнальные линии. Быстрая линия больше, чем медленная линия, создает золотой форк, а быстрая линия меньше, чем медленная линия, создает мертвый форк. Это означает, что тенденция и динамика цены меняются.

В то же время, стратегия рассчитывает RSI и устанавливает линию перекупа и линию перепродажи. Когда RSI ниже линии перепродажи, это означает перепродажу, а когда RSI выше линии перекупа, это означает перекуп.

В случае перекупа и перепродажи по RSI, стратегия создает сигнал покупки при перекупе MACD и сигнал продажи при перекупе MACD. То есть, используя чувствительность индикатора MACD для захвата поворотных точек во время изменения ценовой тенденции.

Анализ преимуществ

Стратегия, которая сочетает в себе преимущества MACD и RSI, может повысить эффективность стратегии.

  1. Индекс MACD чувствителен к ценовым изменениям, а RSI учитывает перекуп и перепродажу, и они дополняют друг друга.

  2. В сочетании с этими двумя показателями можно отфильтровать некоторые шумные торговые сигналы и уменьшить количество ненужных сделок.

  3. MACD - средняя величина разницы цены, RSI - величина изменения цены, оба метода могут быть взаимно проверены.

  4. Реакционная цена MACD меняется быстро, реакционная цена RSI отклоняется от более заметного, комбинационный эффект хорош.

Риски и решения

В этой стратегии есть определенные риски, о которых следует помнить:

  1. MACD и RSI подвержены воздействию внезапных событий, которые могут привести к ошибочным сигналам.

  2. Одиночные акции могут быть неэффективными, можно рассмотреть использование индекса или комбинации.

  3. Для подачи сигнала необходимо одновременно удовлетворить условиям MACD-креста и RSI-перекупа и перепродажи. Возможно, будет пропущены некоторые возможности. Можно соответствующим образом снизить требования к параметрам RSI.

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

Эта стратегия также может быть оптимизирована в следующих аспектах:

  1. Оптимизация параметров MACD и RSI, чтобы они соответствовали характеристикам разных сортов.

  2. Увеличение стратегии остановки убытков, своевременная остановка убытков при достижении определенной доли.

  3. В сочетании с другими показателями, такими как Brin Belt, KDJ и т. д., устанавливаются более строгие условия для торговых сигналов.

  4. Запуск стратегии на высокочастотных данных с использованием быстрого и медленного характера MACD для повышения эффективности стратегии.

  5. В зависимости от результатов обратного измерения, корректируйте линию RSI, чтобы найти оптимальную комбинацию параметров.

Подвести итог

Эта MACD и RSI кросс-стратегия, в сочетании с отслеживанием тенденции и суждением о перепродаже, может эффективно получить ценовые поворотные точки и усилить эффективность стратегии. Но также существует определенное ограничение, все еще необходимо постоянно тестировать и оптимизировать в соответствии с рыночными тенденциями, чтобы полностью использовать эффективность стратегии.

Исходный код стратегии
/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// © sabirt
strategy(title='MACD and RSI', overlay=true, shorttitle='MACD&RSI')
//MACD Settings
fastMA = input.int(title='Fast moving average', defval=12, minval=1)
slowMA = input.int(title='Slow moving average', defval=26, minval=1)
signalLength = input.int(9, minval=1)

//RSI settings
RSIOverSold = input.int(35, minval=1)
RSIOverBought = input.int(80, minval=1)
src = close
len = input.int(14, minval=1, title='Length')
up = ta.rma(math.max(ta.change(src), 0), len)
down = ta.rma(-math.min(ta.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, _, _] = ta.macd(close[0], fastMA, slowMA, signalLength)
[prevMacd, _, _] = ta.macd(close[1], fastMA, slowMA, signalLength)
signal = ta.ema(currMacd, signalLength)

avg_1 = math.avg(currMacd, signal)
crossoverBear = ta.cross(currMacd, signal) and currMacd < signal ? avg_1 : na
avg_2 = math.avg(currMacd, signal)
crossoverBull = ta.cross(currMacd, signal) and currMacd > signal ? avg_2 : na

strategy.entry('buy', strategy.long, when=crossoverBull and wasOversold)
strategy.close('buy', when=crossoverBear and wasOverbought)