
Esta estratégia baseia-se em indicadores técnicos para avaliar a tendência do mercado, e é uma estratégia de negociação de linha curta quando ocorre um fechamento negativo de uma linha K de raiz N consecutiva.
Esta estratégia usa a variável nCounter para calcular o número de tomadas consecutivas. Quando o preço de fechamento é menor que o preço de abertura, o valor de nCounter é aumentado; quando o preço de fechamento é maior que o preço de abertura, o nCounter é redefinido para 0.
Quando o sinal é exibido, se não houver uma posição atual, a posição é fechada; se já houver uma posição fechada, a posição continua. Após a abertura da posição, use o posprice para registrar o preço de abertura. Usando o preço de abertura como base, configure as condições de parada e parada: se o preço atingir o ponto de parada ((preço de abertura da posição + parâmetro de entrada takeprofit), a posição é neutralizada e reposta; se o preço atingir o ponto de parada ((preço de abertura da posição - parâmetro de entrada stop), a posição é neutralizada e reposta.
As principais vantagens desta estratégia são:
Os principais riscos desta estratégia são:
A estratégia pode ser melhorada em alguns aspectos:
Aumentar a filtragem de tendências, evitando que os ajustes de curto prazo que ocorrem em mercados imprecisos sejam mal interpretados. Por exemplo, indicadores como a linha média combinada julgam a tendência geral.
O aumento da quantidade de comprovação, por exemplo, aumenta a quantidade de transações para melhor confirmar a reversão da tendência.
Otimizar as estratégias de stop loss, tais como o uso de stop loss de derivação, stop loss proporcional, etc., para tornar o stop loss mais inteligente.
Otimizando os parâmetros usando métodos de aprendizagem de máquina, os valores de nLength podem ser ajustados de acordo com as mudanças de mercado em tempo real.
Esta estratégia baseia-se na relação de tamanho entre o preço de fechamento e o preço de abertura para julgar a tendência de curto prazo, gerando um sinal de negociação quando detecta um fechamento contínuo da linha N-root K. A estratégia é simples e intuitiva, os parâmetros são ajustáveis, com um mecanismo de stop-loss, que pode filtrar parte do ruído das negociações. Mas também existe um certo risco de falso sinal, e recomenda-se a otimização em combinação com outros indicadores de onda de queda.
/*backtest
start: 2023-12-18 00:00:00
end: 2023-12-25 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 05/02/2020
// Evaluates for n number of consecutive lower closes. Returns a value
// of 1 when the condition is true or 0 when false.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="N Bars Down", shorttitle="NBD Backtest", overlay = false)
nLength = input(4, minval=1)
input_takeprofit = input(20, title="Take Profit pip", step=0.01)
input_stoploss = input(10, title="Stop Loss pip", step=0.01)
nCounter = 0
nCounter := iff(close[1] <= open[1], nz(nCounter[1],0)+1,
iff(close[1] > open[1], 0, nCounter))
C2 = iff(nCounter >= nLength, 1, 0)
posprice = 0.0
pos = 0
barcolor(nz(pos[1], 0) == -1 ? color.red: nz(pos[1], 0) == 1 ? color.green : color.blue )
posprice := iff(C2== 1, close, nz(posprice[1], 0))
pos := iff(posprice > 0, -1, 0)
if (pos == 0)
strategy.close_all()
if (pos == -1)
strategy.entry("Short", strategy.short)
posprice := iff(low <= posprice - input_takeprofit and posprice > 0, 0 , nz(posprice, 0))
posprice := iff(high >= posprice + input_stoploss and posprice > 0, 0 , nz(posprice, 0))
plot(C2, title='NBD', color=color.red)