Esta estratégia combina o índice de força relativa (RSI) e os indicadores técnicos da média móvel exponencial (EMA) para implementar uma estratégia quantitativa de negociação baseada na tendência.
sinal de entrada longo:
Quando ambos os critérios são cumpridos, é introduzida uma posição longa.
A perda máxima para cada negociação é limitada a 3% do valor total da conta.
O valor da posição deve ser calculado de acordo com o método de classificação da posição.
Isto controla efetivamente o risco por comércio.
Sinais de saída principais:
Quando ocorre qualquer um dos sinais, a posição é fechada.
A estratégia combina as vantagens da tendência seguindo e a reversão média. A EMA determina a tendência geral, em seguida, os sinais de entrada acontecem em zonas de reversão potencial, beneficiando-se tanto da tendência quanto das reversões para estabilidade. Os parâmetros do RSI também podem ser otimizados para diferentes mercados, tornando a estratégia robusta.
A perda máxima fixa por transacção protege o capital através do controlo direto do nível de risco comercial.
A estratégia funciona bem em mercados com tendências óbvias. Em ambientes complexos e voláteis, o uso da EMA para a tendência pode ter limitações.
A colocação de stop loss é crítica para a PnL, necessitando de testes cuidadosos para diferentes mercados. Se muito larga, a perda única pode se expandir; se muito apertada, o ruído pode desencadear paradas indesejadas.
Testar diferentes parâmetros do RSI para se adequar a mais mercados. Encontrar proporções ótimas de tamanho do comércio. Adicionar outros indicadores técnicos para construir sistemas de entrada / saída mais robustos. Todas essas opções valem a pena explorar.
A estratégia integra os pontos fortes das estratégias de reversão de tendência e média. A entrada ocorre em reversão potencial enquanto se identifica a tendência maior. A otimização do RSI o adapta a mais regimes de mercado. O nível de risco comercial fixo mantém a operação estável no médio a longo prazo. Outras melhorias são possíveis através de ajustes e testes de robustez usando diferentes mercados e estilos.
/*backtest start: 2023-10-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Stratégie RSI et EMA avec Gestion du Risque", overlay=true) // Paramètres de la stratégie rsiLength = input(14, "Longueur du RSI") rsiOverbought = input(70, "Niveau de Surachat RSI") rsiOversold = input(30, "Niveau de Survente RSI") // Calcul du RSI rsiValue = rsi(close, rsiLength) // Paramètres des EMA ema20 = ema(close, 20) ema50 = ema(close, 50) ema200 = ema(close, 200) // Paramètre du risque par trade riskPerTrade = input(0.03, "Risque par Trade (3%)") // Distance du stop-loss en pips (à ajuster selon votre stratégie) stopLossPips = input(1, "Distance du Stop-Loss en pips") // Calcul de la taille de position et du stop-loss calculatePositionSize(entryPrice, stopLossPips) => stopLossPrice = entryPrice - stopLossPips * syminfo.mintick riskPerTradeValue = strategy.equity * riskPerTrade positionSize = riskPerTradeValue / (entryPrice - stopLossPrice) positionSize // Conditions d'entrée longCondition = (rsiValue < rsiOversold) and (close > ema20 or close > ema50 or close > ema200) if longCondition strategy.entry("Long", strategy.long, qty=1) // Conditions de sortie exitCondition = (rsiValue > rsiOverbought) or (close < ema20 or close < ema50 or close < ema200) if exitCondition strategy.close("Long") // Affichage des EMA et RSI sur le graphique plot(ema20, color=color.red) plot(ema50, color=color.green) plot(ema200, color=color.blue) hline(rsiOverbought, "Niveau de Surachat RSI", color=color.red) hline(rsiOversold, "Niveau de Survente RSI", color=color.blue) plot(rsiValue, "RSI", color=color.purple)