Esta estratégia é baseada no princípio da tendência seguinte. Ele usa o indicador SAR Parabólico para determinar a direção da tendência do mercado e combina o indicador barcolor para visualizar o estado de touro / urso dos preços.
A estratégia usa principalmente o indicador SAR parabólico para julgar a direção da tendência do mercado. O SAR parabólico, também conhecido como indicador parabólico de parada e inversão, consiste em dois parâmetros: Step, que representa o passo do movimento do ponto SAR, e Max, que representa o passo máximo permitido para os pontos SAR. Quando o mercado está em uma tendência, os pontos SAR ficarão perto dos preços e se moverão para cima ou para baixo continuamente junto com a tendência. Quando a tendência se inverte, os pontos SAR cruzarão os preços e aparecerão do outro lado. Portanto, comparando os pontos SAR com preços altos / baixos, a direção da tendência atual pode ser determinada.
Especificamente, quando os pontos SAR estão abaixo do preço mais baixo, isso indica uma tendência de alta, e a estratégia vai longo. Quando os pontos SAR cruzam acima do preço mais alto, isso significa uma reversão de tendência, e a estratégia fechará posições longas. Por outro lado, quando os pontos SAR estão acima do preço mais alto, isso sinaliza uma tendência de queda, e a estratégia vai curto. Quando os pontos SAR cruzam abaixo do preço mais baixo, isso representa uma reversão, e a estratégia fechará posições curtas.
Para determinar visualmente a condição da tendência atual de forma mais intuitiva, a estratégia também usa o indicador de barcolor para colorir as barras.
A maior vantagem desta estratégia consiste em poder captar com precisão as tendências do mercado e acompanhar as tendências para o comércio, evitando interferências de ruídos frequentes do mercado.
Usando o SAR Parabólico para determinar tendências, o design dos pontos SAR é engenhoso e pode capturar rapidamente e precisamente inversões de tendência.
Adotar o indicador de barcolor para exibir visualmente o estado atual de touro/urso de forma intuitiva.
Os sinais comerciais provêm da tendência em si em vez de outros fatores, evitando ser enganados por flutuações de preços a curto prazo.
Usar o rastreamento de tendências impede a perda, parar a tempo sem ser muito sensível, evitar ser pego em armadilhas.
Manter uma orientação comercial consistente, evitar trocas reversas desnecessárias, sendo benéfico para a simplicidade.
As regras de negociação são simples e claras, fáceis de compreender e implementar, adequadas para aprendizagem de iniciantes.
Os maiores riscos desta estratégia são:
Incapaz de determinar pontos de entrada e saída específicos, provavelmente perdendo oportunidades de tendência iniciais e finais.
Parar de negociar e manter posições durante a consolidação, incapaz de obter lucro ou parar de perder, com o risco de ser apanhado.
Incapaz de limitar a relação risco/recompensa de cada transação, a perda de uma única transação pode ser demasiado grande.
Só fazendo transacções unilaterais, só capazes de capturar tendências ascendentes ou descendentes.
Não considerando a análise de tendência maior, comporta o risco de negociação contra a tendência principal.
Para fazer face a estes riscos, podem ser realizadas otimizações nos seguintes aspectos:
Combinar outros indicadores para determinar pontos de entrada e saída específicos.
Adicionar indicadores de descoberta de tendências para evitar a abertura de posições durante a consolidação.
Estabelecer regras de gestão de risco para limitar as perdas por transação.
Otimizar a lógica de comutação longa/curta para captar mais oportunidades de negociação.
Adicionar análise de vários prazos para determinar a direção da tendência principal.
Esta estratégia pode ser melhorada nos seguintes aspectos:
Otimizar os parâmetros SAR parabólicos para melhor adaptá-los a diferentes produtos e prazos.
Adicionar filtros como médias móveis para filtrar pontos de entrada.
Incorporar estratégias de ruptura para entrar em uma tendência logo após o início da tendência.
Otimizar as estratégias de stop loss para evitar ser demasiado sensível ou demasiado insensível.
Adicionar estratégias de lucro para tirar lucro ativamente quando atingir um certo nível.
Melhorar as estratégias de gestão de fundos para melhorar os rendimentos ajustados ao risco.
Optimizações de vários prazos para garantir o alinhamento das principais tendências com a direcção do comércio.
Introduzir aprendizado de máquina, etc., para otimizar dinamicamente os parâmetros.
Esta estratégia determina a direção da tendência com o indicador Parabolic SAR e segue a tendência imediatamente após o início. A vantagem é que os sinais de negociação vêm da própria tendência, menos suscetíveis aos ruídos do mercado. Mas também tem fraquezas como a incapacidade de limitar os riscos por negociação e pontos de entrada ausentes. As otimizações futuras incluem a definição de stop loss / take profit, ajuste de parâmetros, adição de filtros etc. para melhorar o desempenho da estratégia em backtests e negociação ao vivo.
/*backtest start: 2023-10-06 00:00:00 end: 2023-11-05 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Trend Trader Strategy (Trend Code)", shorttitle="Trend Trader Strategy (Trend Code)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) //Inputs TrendCode = input(5, title = "Trend Code") //////////////////////////////////////////////////////////////////////////////// // 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 = 1, title = "To Day", minval = 1, maxval = 31) toMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12) toYear = input(defval = 2020, 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 //////////////////////////////////////////////////////////////////////////////// //Parabolic SAR psar = sar(0.02, 0.02, TrendCode * 0.005) //Plot PSAR plot(psar, title="PSAR", color = color.teal , trackprice=true) //Barcolor barcolor(close > psar ? color.green : color.red, title = "Bar Color") if (psar >= high and time_cond) strategy.entry("long", strategy.long, stop=psar, comment="long") else strategy.cancel("long") if (psar <= low and time_cond) strategy.entry("short", strategy.short, stop=psar, comment="short") else strategy.cancel("short") if (not time_cond) strategy.close_all()