Esta estratégia utiliza o indicador Supertrend para determinar os pontos de entrada, indo longo ou curto quando o indicador se inverte.
A estratégia utiliza o indicador de Supertrend para identificar a direção da tendência. A Supertrend é baseada no Real Intervalo Médio e em um fator multiplicador. Quando o preço sobe acima da faixa superior, ele sinaliza uma condição de sobrecompra e quando o preço cai abaixo da faixa inferior, ele sinaliza uma condição de sobrevenda. Portanto, a estratégia detecta reversões na direção da Supertrend para determinar entradas.
Especificamente, quando a mudança na Supertrend é menor que 0, indica que o indicador se inverteu de cima para baixo, gerando um sinal longo. Quando a mudança na Supertrend é maior que 0, o indicador se invertiu de baixo para cima, gerando um sinal curto. Ao receber sinais longos ou curtos, o preço de entrada é registrado e as ordens são colocadas.
A estratégia também define três ordens de lucro a 2%, 5% e 10% do preço de entrada, para bloquear lucros-alvo fixos. As proporções dessas ordens são definidas em 25%, 50% e 25% respectivamente. Após os sinais de entrada, essas ordens de lucro são colocadas simultaneamente para capturar ganhos em diferentes níveis.
A estratégia apresenta as seguintes vantagens:
O uso de Supertrend para entradas capta efetivamente pontos de reversão da tendência para compras/cortes precisas.
As proporções múltiplas de lucro permitem o bloqueio dos ganhos em diferentes níveis, reduzindo os desembolsos.
Os objectivos de lucro conservadores de 2%, 5% e 10% evitam uma excesso de lucros que conduza a perdas maiores.
Lógica simples e clara, fácil de entender e modificar, adequada para iniciantes.
A estratégia apresenta também alguns riscos:
Os parâmetros de Supertrend incorretos podem causar falta de sinais de reversão, levando a entradas imprecisas.
Os níveis de lucro conservadores podem perder oportunidades para gerar lucros adicionais.
As brechas e os movimentos de limite podem desencadear paradas antes do ajuste da Supertrend.
Não haver condição de stop loss significa potencial de perda ilimitado.
Algumas maneiras de otimizar a estratégia:
Teste diferentes parâmetros de Supertrend para melhorar a sensibilidade.
Adicionar stop loss para limitar a perda máxima.
Ajustar os rácios de lucro e quantidades com base no símbolo e no prazo.
Adicionar filtros para evitar negociações excessivas em mercados de intervalo.
Otimizar a utilização do capital ajustando o tamanho das transações por defeito para reduzir o risco por transação.
A estratégia é simples e prática em geral. Ela usa Supertrend para entradas e múltiplas ordens de take profit para bloquear ganhos, controlando efetivamente o risco. Mas há espaço para melhorias como adicionar paradas, otimizar parâmetros etc., o que fornece direções de aprimoramento futuro. Em resumo, esta estratégia é adequada para iniciantes aprenderem e praticarem negociação algorítmica.
/*backtest start: 2023-01-01 00:00:00 end: 2024-01-07 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy( "Supertrend with TP", overlay=true ) // Supertrend Settings atrPeriod = input(10, "ATR Length") factor = input.float(3.0, "Factor", step = 0.01) // TP's tp1Open = input.bool(true, "TP1") tp1 = input.float(2.0, "TP Level (%)", step = 0.1) / 100 tp1Amount = input.int(25, "Amount (%)", step = 1) tp2Open = input.bool(true, "TP2") tp2 = input.float(5.0, "TP Level (%)", step = 0.1) / 100 tp2Amount = input.int(50, "Amount (%)", step = 1) tp3Open = input.bool(true, "TP3") tp3 = input.float(10.0, "TP Level (%)", step = 0.1) / 100 tp3Amount = input.int(25, "Amount (%)", step = 1) [_, direction] = ta.supertrend(factor, atrPeriod) entryPrice = 0.0 entryPrice := entryPrice[1] if ta.change(direction) < 0 strategy.entry("Long", strategy.long) entryPrice := close if ta.change(direction) > 0 strategy.entry("Short", strategy.short) entryPrice := close if (tp1Open) strategy.exit ("TP1", from_entry="Long", limit=entryPrice * (1 + tp1), qty_percent=tp1Amount) strategy.exit ("TP1", from_entry="Short", limit=entryPrice * (1 - tp1), qty_percent=tp1Amount) if (tp2Open) strategy.exit ("TP2", from_entry="Long", limit=entryPrice * (1 + tp2), qty_percent=tp2Amount) strategy.exit ("TP2", from_entry="Short", limit=entryPrice * (1 - tp2), qty_percent=tp2Amount) if (tp3Open) strategy.exit ("TP3", from_entry="Long", limit=entryPrice * (1 + tp3), qty_percent=tp3Amount) strategy.exit ("TP3", from_entry="Short", limit=entryPrice * (1 - tp3), qty_percent=tp3Amount)