
A estratégia de troca de moeda de câmbio de RSI de câmbio de câmbio é uma estratégia de negociação quantitativa usada em criptomoedas. Combina o indicador de tecnologia de mercado RSI com o indicador ICHIMOKU para identificar sinais de câmbio de câmbio em momentos de flutuação de preços, para realizar baixas e altas.
A estratégia baseia-se principalmente nos seguintes indicadores e regras:
Índice ICHIMOKU
Indicador RSI
Regras de entrada
Entrada múltipla: a linha Tenkan atravessa a linha Kijun (o cruzamento do ouro) e o preço quebra a linha Senkou A&B, enquanto o RSI está acima de 50
Entrada de cabeça vazia: linha Tenkan abaixo da linha Kijun (cruzamento de morte) e preço abaixo da linha Senkou A&B, enquanto o RSI está abaixo de 50
Saída de regras
Cessar imediatamente o dano e sair do campo quando o sinal de entrada for contrário
A estratégia integra tendências de médio e longo prazo, liquidez de curto prazo e sobrecompra e sobrevenda para capturar oportunidades de reversão em situações de turbulência. Ao mesmo tempo, configura regras de parada de perdas para evitar grandes perdas.
1. Avaliação integrada de múltiplos indicadores para garantir uma alta precisão
A estratégia considera simultaneamente a tendência do ICHIMOKU e os julgamentos de resistência de suporte, a tendência de sobrecompra e sobrevenda do RSI, e a liquidez de fundos na direção da linha K, garantindo a confiabilidade do sinal.
2. Apropriado para situações turbulentas, com frequência de lucro
A estratégia, que permite capturar as oportunidades de reversão em situações de turbulência e de frequentes baixas e altas vendas, é baseada na volatilidade do mercado de criptomoedas.
3. Prevenção de acidentes de trânsito, riscos controláveis
A estratégia compreende as tendências de médio e longo prazo e as situações de curto prazo, evitando o risco de queda de queda, ao mesmo tempo em que configura o risco de evasão de perda.
1. Pode ter perdido parte do funcionamento
A estratégia baseia-se na inversão, com frequentes oscilações de capital de ataque quando ocorre um longo período de operação.
2. Uma única espécie, sem dispersão de risco
A estratégia de negociar apenas uma variedade não dispersou o risco sistêmico do mercado.
3. Cessação de danos em situações extremas
Em situações extremas, como saltos, explosões de potência, etc., a estratégia pode desencadear um stop loss e forçar a saída.
1. Aumentar as estratégias de stop loss e reduzir as perdas individuais
Pode-se configurar um stop loss móvel ou um stop loss em percentagem de saldo para bloquear o lucro e evitar que o lucro se torne zero.
2. Combinação de correlação de índices de ações para diversificar o risco de mercado
O risco sistêmico do mercado pode ser dispersado através da busca de oportunidades de negociação em variedades com forte correlação com o índice de ações.
3. Aumentar os filtros condicionais e reduzir as transações inválidas
Pode-se configurar a taxa de flutuação de preços, a variação do volume de transação e outros filtros, evitando sinais de inversão ineficazes e aumentando a probabilidade de lucro.
A estratégia de troca de moedas de RSI com o uso integrado do indicador ICHIMOKU e do indicador RSI para julgar o ponto de reversão da criptomoeda, é adequada para baixar e vender em situações de turbulência. Ao mesmo tempo, configura regras de stop loss para controlar o risco. A estratégia pode aumentar ainda mais a eficácia ao otimizar o mecanismo de stop loss, o risco de dispersão associado e o filtro de configuração de condições.
/*backtest
start: 2023-12-17 00:00:00
end: 2023-12-24 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © exlux99
//@version=4
strategy(title="Ichimoku + RSI Crypto trending strategy", overlay=true, initial_capital = 1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.1, pyramiding=1 )
UseHAcandles = input(true, title="Use Heikin Ashi Candles in Algo Calculations")
//
// === /INPUTS ===
// === BASE FUNCTIONS ===
haClose = UseHAcandles ? security(heikinashi(syminfo.tickerid), timeframe.period, close) : close
haOpen = UseHAcandles ? security(heikinashi(syminfo.tickerid), timeframe.period, open) : open
haHigh = UseHAcandles ? security(heikinashi(syminfo.tickerid), timeframe.period, high) : high
haLow = UseHAcandles ? security(heikinashi(syminfo.tickerid), timeframe.period, low) : low
//Inputs
ts_bars = input(20, minval=1, title="Tenkan-Sen Bars")
ks_bars = input(50, minval=1, title="Kijun-Sen Bars")
ssb_bars = input(120, minval=1, title="Senkou-Span B Bars")
cs_offset = input(30, minval=1, title="Chikou-Span Offset")
ss_offset = input(30, minval=1, title="Senkou-Span Offset")
long_entry = input(true, title="Long Entry")
short_entry = input(true, title="Short Entry")
//Volatility
//vollength = input(defval=1, title="VolLength")
//voltarget = input(defval=0., type=input.float, step=0.1, title="Volatility Target")
//Difference = abs((haClose - haOpen)/((haClose + haOpen)/2) * 100)
//MovingAverage = sma(Difference, vollength)
//highvolatility = MovingAverage > voltarget
////////////////////////////////////////////////////////////////////////////////
// BACKTESTING RANGE
// From Date Inputs
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2019, title = "From Year", minval = 1970)
// To Date Inputs
toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2021, title = "To Year", minval = 1970)
// Calculate start/end date and time condition
startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true
////////////////////////////////////////////////////////////////////////////////
middle(len) => avg(lowest(len), highest(len))
// Ichimoku Components
tenkan = middle(ts_bars)
kijun = middle(ks_bars)
senkouA = avg(tenkan, kijun)
senkouB = middle(ssb_bars)
//RSI
change = change(haClose)
gain = change >= 0 ? change : 0.0
loss = change < 0 ? (-1) * change : 0.0
avgGain = rma(gain, 14)
avgLoss = rma(loss, 14)
rs = avgGain / avgLoss
rsi = 100 - (100 / (1 + rs))
ss_high = max(senkouA[ss_offset-1], senkouB[ss_offset-1])
ss_low = min(senkouA[ss_offset-1], senkouB[ss_offset-1])
// Entry/Exit Signals
tk_cross_bull = tenkan > kijun
tk_cross_bear = tenkan < kijun
cs_cross_bull = mom(haClose, cs_offset-1) > 0
cs_cross_bear = mom(haClose, cs_offset-1) < 0
price_above_kumo = haClose > ss_high
price_below_kumo = haClose < ss_low
rsi_bullish = rsi > 50
rsi_bearish = rs < 50
bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and rsi_bullish //and highvolatility
bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and rsi_bearish //and highvolatility
strategy.entry("Long", strategy.long, when=bullish and long_entry and time_cond)
strategy.entry("Short", strategy.short, when=bearish and short_entry and time_cond)
strategy.close("Long", when=bearish and not short_entry and time_cond)
strategy.close("Short", when=bullish and not long_entry and time_cond)