Эта стратегия основана на прорывных сигналах ключевых точек Камариллы, в сочетании с индикатором обратного движения RSI в качестве возможности низкого поглощения, формируя продвинутую стратегию низкого поглощения обратного движения. Когда цена проходит через ключевую точку Камариллы, генерируется торговый сигнал. Низкий RSI далее подтверждает возможность падения. Это относится к стратегии переменного движения.
Основной сигнал стратегии исходит из ключевых точек Camarilla. Ключевые точки Camarilla рассчитываются на основе ценового диапазона предыдущего дня и делятся на ключевые точки S1 - S5 и R1 - R5. Сигнал покупки генерируется, когда цена прорывается вверх от ключевой точки S1, и сигнал продажи генерируется, когда цена прорывается вниз от ключевой точки R1. Кроме того, индикатор RSI используется для определения того, находится ли он в состоянии перепродажи, чтобы улучшить уровень успеха входа.
В частности, стратегия сначала рассчитывает ключевые точки Камариллы, основываясь на вчерашней самой высокой цене, самой низкой цене и цене закрытия. Затем она оценивает, проходит ли цена закрытия через ключевую точку, чтобы генерировать торговые сигналы. В то же время она определяет, находится ли индикатор RSI в низкой позиции. Ниже 30 считается перепроданным. Только когда цена закрытия проходит через ключевую точку, а RSI ниже 30, будет генерирован реальный торговый сигнал. Сигнал покупки - это прорыв вверх по ключевой точке S1, а сигнал продажи - это прорыв вниз по ключевой точке R1.
Например, если вчера цена колебалась между 10-11, сегодняшняя цена закрытия проходит через 11,05 (основная точка S1), и в то же время индикатор RSI показывает 20, генерируется сигнал покупки. Если сегодняшняя цена закрытия проходит через 10,95 (основная точка R1), и RSI показывает 20, генерируется сигнал продажи. Поэтому эта стратегия сочетает в себе преимущества сигналов прорыва и сигналов перепродажи.
Наибольшее преимущество этой стратегии заключается в определении возможностей перепродажи и реверсии. Пункты поворота Camarilla сами по себе будут улавливать важные точки поддержки и сопротивления цен. В сочетании с индикатором RSI для определения времени реверсии он может точно определить дно и избежать погони за подъемами и падением. Это относится к более продвинутой стратегии прорыва.
В отличие от традиционных технических индикаторов, которые требуют настройки параметров, стратегия наследует преимущества анализа поворотных точек и является более гибкой. Кроме того, возможности отмены довольно ясны и не будут появляться частые ложные сигналы.
Самый большой риск этой стратегии заключается в том, что цены могут иметь ложные прорывы. Хотя индикатор RSI используется для подтверждения состояния перепроданности, цена все равно может перевернуться после прорыва через поворотную точку. Это приведет к тому, что будет достигнут стоп-лосс.
Еще один риск заключается в том, что индикатор RSI потерпит неудачу. Даже если произойдет падение, если RSI не опустится ниже 30, не будет сформирован никакой торговый сигнал, и возможности для отмены будут упущены. Чтобы устранить этот риск, параметры RSI можно оптимизировать соответственно.
Следующие аспекты стратегии могут быть оптимизированы:
Оптимизируйте параметры RSI, тестируйте различные перепроданные линии, лучше 30 или 20?
Добавить другие индикаторы для комбинации. Например, индикатор KDJ может дополнительно подтвердить надежность обратного сигнала.
Вы можете использовать только S1 и R1 чтобы уменьшить вероятность ложных прорывов.
Оптимизируйте стратегии стоп-лосса. Вы можете установить стоп-лосс на основе индикаторов ATR или отслеживать точки прорыва в качестве стоп-лосса.
Проверка различных типов контрактов. Применимость к различным типам продуктов, таких как фондовый индекс, иностранная валюта, сырьевые товары. Параметры необходимо корректировать.
Эта стратегия принадлежит к передовой стратегии прорыва отмены импульса. Она оценивает сигналы прорыва с помощью ключевых точек Камариллы и определяет статус перепродажи с помощью индикаторов RSI. Преимущество стратегии заключается в выявлении возможностей для отмены.
/*backtest start: 2023-11-06 00:00:00 end: 2023-12-06 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 07/05/2020 // Pivot point studies highlight prices considered to be a likely turning point // when looking at values from a previous period, whether it be daily, weekly, // quarterly or annual. Each pivot point study has its own characteristics on // how these points are calculated. // // Red color = Sell // Green color = Buy // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="Camarilla Pivot Points Backtest", shorttitle="CPP", overlay = true) res = input(title="Resolution", type=input.resolution, defval="D") SellFrom = input(title="Sell from ", defval="R1", options=["R1", "R2", "R3", "R4", "R5"]) BuyFrom = input(title="Buu from ", defval="S1", options=["S1", "S2", "S3", "S4", "S5"]) reverse = input(false, title="Trade reverse") xHigh = security(syminfo.tickerid,res, high) xLow = security(syminfo.tickerid,res, low) xClose = security(syminfo.tickerid,res, close) xXLC3 = (xHigh+xLow+xClose) / 3 xRange = xHigh-xLow S1 = xClose - xRange * (1.1 / 12) S2 = xClose - xRange * (1.1 / 6) S3 = xClose - xRange * (1.1 / 4) S4 = xClose - xRange * (1.1 / 2) R1 = xClose + xRange * (1.1 / 12) R2 = xClose + xRange * (1.1 / 6) R3 = xClose + xRange * (1.1 / 4) R4 = xClose + xRange * (1.1 / 2) R5 = (xHigh/xLow) * xClose S5 = xClose - (R5 - xClose) pos = 0 S = iff(BuyFrom == "S1", S1, iff(BuyFrom == "S2", S2, iff(BuyFrom == "S3", S3, iff(BuyFrom == "S4", S4, iff(BuyFrom == "S5", S5, 0))))) B = iff(SellFrom == "R1", R1, iff(SellFrom == "R2", R2, iff(SellFrom == "R3", R3, iff(SellFrom == "R4", R4, iff(SellFrom == "R5", R5, 0))))) pos := iff(close > B, 1, iff(close < S, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1 , 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) if (possig == 0) strategy.close_all() barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )