
Стратегия объединяет три технических показателя: относительно сильный и слабый индекс (RSI), средний ориентировочный индекс (ADX) и график первой равновесия (Ichimoku Cloud). Основная идея стратегии заключается в том, чтобы использовать RSI для определения перепродажи на рынке, ADX для определения силы тренда, первая равновесная карта для определения направления тренда и в сочетании с перекрестными сигналами движущихся средних линий, чтобы открыть позицию и сделать больше или меньше, когда соответствуют определенным условиям.
Стратегия, инновационно объединяющая три технических показателя RSI, ADX и First Balance Graph, создает многофакторную стратегию количественной торговли, отслеживающую тенденции. Стратегия имеет определенные преимущества в отслеживании тенденций и управлении рисками, но в то же время имеет такие риски, как оптимизация параметров, рыночный риск и стоимость торговли. В будущем стратегия может быть оптимизирована для повышения ее стабильности и прибыльности с помощью оптимизации параметров, остановки убытков, управления позициями хранения и многоциклического многообразия приложений.
/*backtest
start: 2023-05-11 00:00:00
end: 2024-05-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Stratejim RSI, ADX ve Ichimoku ile", overlay=true, margin_long=100, margin_short=100)
// ADX, RSI ve Ichimoku tanımları
[diPlus, diMinus, adx] = ta.dmi(14, 14)
rsiPeriod = 14
rsi = ta.rsi(close, rsiPeriod)
tenkanPeriod = 9
kijunPeriod = 26
senkouSpanBPeriod = 52
displacement = 26
tenkan = ta.sma((high + low) / 2, tenkanPeriod)
kijun = ta.sma((high + low) / 2, kijunPeriod)
senkouSpanA = (tenkan + kijun) / 2
senkouSpanB = ta.sma((high + low) / 2, senkouSpanBPeriod)
// Ichimoku Bulutu koşulları
priceAboveCloud = close > ta.valuewhen(bar_index, math.max(senkouSpanA, senkouSpanB), displacement)
priceBelowCloud = close < ta.valuewhen(bar_index, math.min(senkouSpanA, senkouSpanB), displacement)
// Uzun pozisyon için koşullar
longSmaCondition = ta.crossover(ta.sma(close, 14), ta.sma(close, 28))
longAdxCondition = adx > 20
longRsiCondition = rsi < ta.sma(rsi, rsiPeriod)
if (longSmaCondition and longAdxCondition and not longRsiCondition and priceAboveCloud)
strategy.entry("My Long Entry Id", strategy.long)
// Kısa pozisyon için koşullar
shortSmaCondition = ta.crossunder(ta.sma(close, 14), ta.sma(close, 28))
shortAdxCondition = adx > 20
shortRsiCondition = rsi > ta.sma(rsi, rsiPeriod)
if (shortSmaCondition and shortAdxCondition and not shortRsiCondition and priceBelowCloud)
strategy.entry("My Short Entry Id", strategy.short)