
A estratégia utiliza a linha de equilíbrio inicial para a negociação de ações durante o dia e é uma estratégia de negociação de curta distância. Utiliza a combinação de linha de equilíbrio inicial de conversão, linha de referência e linha de liderança para julgar sinais de compra e venda e é auxiliada pela linha de SAR para o rastreamento de perdas, para obter proteção dupla.
A linha de equilíbrio de primeira vista é composta por uma linha de conversão, uma linha de referência, uma linha de conversão anterior e uma linha de conversão anterior. A linha de conversão é a média entre o preço de fechamento do dia e o preço máximo dos últimos 9 dias, refletindo a equilíbrio do preço da ação no período mais recente. A linha de referência é a média entre o preço mínimo dos últimos 26 dias, representando a equilíbrio do preço a médio e longo prazo.
Quando o preço de fechamento quebra a linha de base abaixo e está acima da linha 2 anterior, gera um sinal de compra. Quando o preço de fechamento cai acima da linha de base e está abaixo da linha 1 anterior, gera um sinal de venda. A linha SAR de paralelo é usada para rastrear o stop loss e emite um sinal de stop loss quando o preço está abaixo da SAR.
A estratégia utiliza uma combinação de linhas de equilíbrio para determinar a tendência futura do preço das ações e a continuidade da tendência atual. É uma estratégia típica de acompanhamento de tendências.
As linhas de equilíbrio contêm informações sobre preços de diferentes períodos e podem refletir mudanças de tendência com antecedência, aumentando a precisão com o uso de julgamentos combinados. Em comparação com um único indicador, pode determinar com mais precisão os pontos de compra e venda.
A SAR permite a flexibilidade de acompanhar a operação das ações e fazer um stop loss. Combinado com a linha de equilíbrio, pode parar os perdas em tempo hábil após o lucro, evitando a expansão dos perdas.
A estratégia tem poucos parâmetros, não depende de indicadores técnicos complexos, como a curva de adequação, é simples, prática e fácil de implementar. O valor padrão dos parâmetros pode ser bastante eficaz.
A estratégia de negociação de curta distância consiste em usar a variação do preço do dia para determinar os pontos de compra e venda.
Seguir a tendência de compra e venda traz um retorno mais alto. É necessário definir um ponto de parada razoável para controlar os prejuízos individuais.
Em situações de tremores, os sinais gerados pela linha de equilíbrio podem ser frequentes e prejudiciais para o lucro. Os parâmetros podem ser adequadamente ajustados, filtrando alguns sinais.
Os parâmetros simples são fáceis de otimizar demais, e os efeitos em disco rígido podem ser inadequados. Testes de estabilidade devem ser realizados para evitar o excesso de ajuste.
O efeito está relacionado com a escolha do acionista, deve-se escolher ações de tendência óbvia para negociar, para que a estratégia tenha o máximo de efeito.
Pode ser combinado com outros indicadores como a média móvel para filtrar alguns sinais de incerteza e evitar transações virtuais.
Os parâmetros do SAR podem ser ajustados dinamicamente de acordo com a volatilidade do mercado, tornando o stop loss mais flexível.
Pode-se melhorar a eficácia da estratégia por meio de otimização mais sistemática e teste de combinação para encontrar melhores combinações de parâmetros.
Pode ser adaptado de forma dinâmica estratégias de posição e posições de acordo com o cenário de mercado, tais como grandes movimentos de mercado, controlar o risco.
A estratégia usa o sinal de compra e venda da linha de equilíbrio, em conjunto com a linha de paralelo SAR para realizar o rastreamento de perdas, é uma estratégia de negociação de linha curta mais simples e prática. Utiliza efetivamente a função da linha de equilíbrio para prever tendências futuras, fazendo operações de compra e venda em rupturas. Ao mesmo tempo, o mecanismo de parada evita o aumento de perdas.
/*backtest
start: 2023-01-01 00:00:00
end: 2023-01-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
//
// Based on the trading strategy described at
// http://stockcharts.com/school/doku.php?id=chart_school:trading_strategies:ichimoku_cloud
//
// See Also:
// - Backtesting and forwardtesting (of TradingView Strategies) <https://www.tradingview.com/wiki/Strategies#Backtesting_and_forwardtesting>
// - 9 Mistakes Quants Make that Cause Backtests to Lie <https://blog.quantopian.com/9-mistakes-quants-make-that-cause-backtests-to-lie-by-tucker-balch-ph-d/>
// - When Backtests Meet Reality <http://financial-hacker.com/Backtest.pdf>
// - Why MT4 backtesting does not work <http://www.stevehopwoodforex.com/phpBB3/viewtopic.php?f=28&t=4020>
//
//
// -----------------------------------------------------------------------------
// Copyright 2018 sherwind
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// The GNU General Public License can be found here
// <http://www.gnu.org/licenses/>.
//
// -----------------------------------------------------------------------------
//
strategy(title="Ichimoku Cloud Strategy", shorttitle="Ichimoku Strategy", overlay=true, pyramiding=3)
conversionPeriods = input(9, minval=1, title="Conversion Line Periods"),
basePeriods = input(26, minval=1, title="Base Line Periods")
laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods"),
displacement = input(26, minval=1, title="Displacement")
usePSARTrailStop = input(true, title="Use Parabolic SAR for Trailing Stop")
psarStart = input(0.02, title="Parabolic SAR Start")
psarIncrement = input(0.02, title="Parabolic SAR Increment")
psarMaximum = input(0.2, title="Parabolic SAR Maximum")
donchian(len) => avg(lowest(len), highest(len))
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)
leadLineDisp1 = leadLine1[displacement]
leadLineDisp2 = leadLine2[displacement]
psar = sar(psarStart, psarIncrement, psarMaximum)
// BUY Signal:
// close > leading span b and
// leading span a > leading span b and
// close crosses over base line and
// close > parabolic sar
buySignal = close > leadLineDisp2 and
leadLineDisp1 > leadLineDisp2 and
crossover(close, baseLine) and
(usePSARTrailStop ? close > psar : not usePSARTrailStop)
// Sell Signal:
// close < leading span a and
// leading span a < leading span b and
// close crosses under base line and
// close < psar
sellSignal = close < leadLineDisp1 and
leadLineDisp1 < leadLineDisp2 and
crossunder(close, baseLine) and
(usePSARTrailStop ? close < psar : not usePSARTrailStop)
hasLong = strategy.position_size > 0
hasShort = strategy.position_size < 0
strategy.entry("ichimoku-long", strategy.long, when = buySignal)
strategy.entry("ichimoku-short", strategy.short, when = sellSignal)
strategy.exit("trailstop-long", "ichimoku-long", stop = psar, when = hasLong and usePSARTrailStop)
strategy.exit("trailstop-short", "ichimoku-short", stop = psar, when = hasShort and usePSARTrailStop)