
Esta estratégia baseia-se no preço de fechamento do dia anterior e no indicador ATR para definir o preço de abertura e o preço de parada de uma posição a mais de zero, permitindo o acompanhamento da tendência. Quando o preço quebra o preço de abertura da posição, a posição é mais baixa, parada ou limpa após a parada.
Esta estratégia usa o preço de entrada e o preço de parada para calcular o preço de entrada e o preço de parada usando o preço de fechamento, o preço máximo e o preço mínimo do dia anterior e o indicador ATR. A fórmula específica para calcular o preço de entrada e o preço de parada é a seguinte:
Preço de abertura de posição múltipla TPup = preço de fechamento do dia anterior + ATR* 0.8 Preço de abertura de posição em branco TPdown = Preço de fechamento do dia anterior - ATR* 0.8
Slup de Stop Losses Múltiplos = Preço de fechamento do dia anterior + ATR* 0.2 Preço de parada em aberto sldown = Preço de fechamento do dia anterior - ATR* 0.2
Multi-Head Stop Price Profit Levelup = Preço mínimo do dia anterior + ATR* 1.7
Preço de parada em branco nível de ganho = preço mais alto do dia anterior - ATR* 1.7
Quando o preço quebra o preço de abertura de posição TPup, faça mais de acordo com o número de 10; Quando o preço quebra o preço de abertura de posição TPdown, faça a vaga de acordo com o número de 10 . Depois, configure o stop loss e o stop stop, o preço toca o preço de parada de perda e limpa a posição.
As principais vantagens desta estratégia são:
O ATR é usado para definir preços de abertura e de parada dinâmicos, que podem ser ajustados de acordo com a volatilidade do mercado, tornando a negociação mais adequada ao ambiente de mercado.
A utilização do preço de fechamento do dia anterior para determinar a direção e, em combinação com o indicador ATR, determinar o preço de negociação específico, evitando ser enganado pelo preço em tempo real com muito barulho.
Ao mesmo tempo, os mecanismos de stop loss e stop-loss podem ser usados para controlar o risco de uma única transação.
Os principais riscos desta estratégia são:
Os preços estabelecidos pelo indicador ATR podem ser demasiado idealizados e não refletir verdadeiramente a situação do mercado, resultando em frequentes paradas. Pode-se ajustar adequadamente os parâmetros ATR ou aumentar a amplitude de paragem.
O preço de fechamento do dia anterior não pode determinar a tendência futura. Se ocorrer uma reversão drástica, a escolha da direção de negociação será equivocada. Pode-se considerar a confirmação da tendência em combinação com outros indicadores.
A posição de travamento e travamento pode ser manipulada, mas não pode ser realmente travada. Pode-se configurar o travamento por lotes de componentes para evitar que seja travado.
A estratégia pode ser melhorada em alguns aspectos:
Optimizar os parâmetros do ATR para que os preços de transação sejam mais adequados à volatilidade do mercado.
Aumentar os mecanismos de discernimento de tendências, evitando a inversão de mercado.
Ajustar a amplitude de suspensão para reduzir a probabilidade de a vantagem de suspensão ser acionada, mantendo a lucratividade.
Configure o bloqueio e o bloqueio do lote de componentes para reduzir a probabilidade de bloqueio e perda.
Aumentar o mecanismo de gerenciamento de posições para aumentar as posições em fase de tendência.
Esta estratégia baseia-se no preço de negociação do dia anterior e na dinâmica do indicador ATR, permitindo um acompanhamento efetivo da tendência. Ao mesmo tempo, configura um mecanismo de stop loss e stop loss para controlar o risco de negociação individual. As direções de otimização incluem otimização de parâmetros, aumento do mecanismo de julgamento, ajuste de stop loss e gerenciamento de posição.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("PC with ATR Strategy (by Zhipengcfel)", shorttitle="PC_ATR", pyramiding=1, overlay=true)
// Zhipengcfel's Previous day's close with ATR Strategy
//
// Version 1.0
// @copyright Idea by Zhipengcfel on June 29, 2017.
//Previous day's close plus ATR strategy.
//Buy (if breaking PC+ATR*0.8) or sell (if breaking PC-0.8*ATR).
//This is just a demo vision and can not be used for real auto trading
///////////// ATR value
ATRlength = input(14, minval=1, title="lookback length of ATR")
//ATR = atr(ATRlength)
ATR = request.security(syminfo.tickerid, 'D', atr(ATRlength))
///////////// Entry levels and target levels
entr = input(0.8, minval=0.1, step = 0.05, title="Entry level for ATR")
tplevel = input(1.7, minval=0.1, step = 0.05, title="Exit level for ATR")
yesterday = request.security(syminfo.tickerid, 'D', close[1])
dl = request.security(syminfo.tickerid, 'D', low[1])
dh = request.security(syminfo.tickerid, 'D', high[1])
TPup = yesterday+entr*ATR
TPdown = yesterday-entr*ATR
profitlevelup = dl+tplevel*ATR
profitleveldown = dh-tplevel*ATR
///////////// Stop loss level
sl = input( 0.2 ,minval=0.01, step = 0.05, title="Stop loss level for ATR") //82 for 2, 83 for 3 and more positions
slup = yesterday+sl*ATR
sldown = yesterday-sl*ATR
///////////// Starting year to backtest
yer = input( 2014 , title="Backtest Starting year")
///////////// strategy: PC + ATR
if (close > TPup) and (close < profitlevelup)
strategy.entry("LONG", strategy.long, 10, comment="Buy", when = year > yer, oca_name="My oca")
strategy.exit("Stopped", "LONG", stop = slup, limit= profitlevelup, oca_name="My oca")
if (close < TPdown) and (close > profitleveldown)
strategy.entry("SHORT", strategy.short, 10, comment="Sell", when = year > yer, oca_name="My oca")
strategy.exit("Stopped", "SHORT", stop = sldown, limit= profitleveldown, oca_name="My oca")