
O rastreamento inteligente de escaneamento de pontos baixos é uma estratégia de negociação de Forex não retrógrada. Ele usa o scanner de pontos baixos para encontrar o ponto mais baixo e combinar o Hull Moving Average para avaliar os sinais de negociação, o que permite uma alta taxa de vitória.
A estratégia usa primeiro um scanner de ponto baixo para encontrar o ponto mais baixo. O scanner de ponto baixo calcula o valor do RSI com base no preço e no volume de transações, e depois compara com a sua curva WMA para determinar se o valor do RSI está abaixo do WMA.
Em seguida, a estratégia usa a média móvel de Hull para determinar os sinais de negociação. Ela calcula o Hull MA de dois períodos diferentes, fazendo mais quando o Hull MA de período curto atravessa o Hull MA de período longo e fazendo vazio quando o Hull MA de período longo atravessa.
Finalmente, a estratégia combina a varredura do ponto mais baixo com o sinal do Hull MA, emitindo o sinal de negociação do Hull MA somente quando o varredor do ponto mais baixo dá o sinal do ponto mais baixo, formando uma estratégia de entrada.
Assim, ao identificar os mínimos do mercado e acompanhar a tendência, pode-se efetivamente evitar o momento errado de entrada e aumentar a taxa de vitória do sistema de negociação.
Os principais benefícios do rastreamento inteligente por varredura de pontos baixos são:
Usando um scanner de baixa, é possível identificar com precisão os pontos mais baixos do mercado, evitando o impacto da compra nos pontos mais altos.
O Hull MA é um bom indicador de tendências, que pode ser usado para capturar as tendências.
A combinação de uma varredura de ponto baixo e uma verificação mútua do Hull MA permite filtrar uma grande quantidade de ruído e reduzir os falsos sinais.
O mecanismo de parada de perdas progressivas permite o bloqueio máximo de lucros e evita a devolução.
A estratégia não é retroativa, é orientada por indicadores, não manipula dados históricos, é realista e confiável.
A estratégia tem os seguintes riscos:
O scanner de mínimos pode omitir alguns mínimos, resultando em oportunidades de negociação perdidas. Os parâmetros podem ser ajustados de forma apropriada para expandir o escaneamento.
Pode ocorrer uma reversão drástica, causando o bloqueio de perdas. A largura de bloqueio de perdas pode ser adequadamente relaxada e o tamanho da posição razoavelmente controlado.
A configuração inadequada dos parâmetros pode resultar em excesso ou insuficiência de sinais de negociação. Deve ser repetidamente otimizado para encontrar a melhor combinação de parâmetros.
Esta estratégia só é válida para variedades de Forex que apresentam uma tendência e não é adequada para negociações em mercados de liquidação ou de turbulência.
A estratégia pode ser otimizada em:
Otimizar os parâmetros do scanner de ponto baixo para que ele possa identificar o ponto mais baixo com mais precisão.
Optimizar os parâmetros do Hull MA para que ele possa acompanhar as tendências com mais precisão.
Adicionar filtros de outros indicadores, como MACD, KDJ, etc. para melhorar a confiabilidade do sinal.
Aumentar os resultados de previsão de modelos de aprendizagem de máquina, auxiliando a avaliação de sinais de negociação.
Otimização do mecanismo de suspensão de perdas, permitindo que ele se adapte dinamicamente à volatilidade do mercado.
Otimizar as estratégias de gerenciamento de posições, permitindo que o sistema ajuste as posições de forma dinâmica de acordo com as regras de gerenciamento de fundos.
A estratégia de rastreamento inteligente de escaneamento de pontos baixos é uma estratégia de negociação de Forex não retrógrada de alta taxa de vitória. Ela é capaz de identificar com precisão os pontos mais baixos do mercado, entrar em ação quando a tendência é clara e usar um stop loss progressivo para bloquear os lucros.
/*backtest
start: 2023-10-24 00:00:00
end: 2023-10-25 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// © theCrypster 2020
//@version=4
// strategy(title = "Low Scanner Forex strategy", overlay = false, pyramiding=1,initial_capital = 1000, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0)
strat_dir_input = input(title="Strategy Direction", defval="long", options=["long", "short", "all"])
strat_dir_value = strat_dir_input == "long" ? strategy.direction.long : strat_dir_input == "short" ? strategy.direction.short : strategy.direction.all
strategy.risk.allow_entry_in(strat_dir_value)
leng=1
p1=close[1]
min=input(1440)
len55 = timeframe.isintraday and timeframe.multiplier >= 1 ?
min / timeframe.multiplier * 7 :
timeframe.isintraday and timeframe.multiplier < 60 ?
60 / timeframe.multiplier * 24 * 7 : 7
//taken from https://www.tradingview.com/script/Ql1FjjfX-security-free-MTF-example-JD/
tf3 = input("W", type=input.resolution)
ti = change( time(tf3) ) != 0
T_c = fixnan( ti ? close : na )
vrsi = rsi(cum(change(T_c) * volume), leng)
pp=wma(vrsi,len55)
d=(vrsi[1]-pp[1])
min1 =input(60)
len100 = timeframe.isintraday and timeframe.multiplier >= 1 ?
min1 / timeframe.multiplier * 7 :
timeframe.isintraday and timeframe.multiplier < 60 ?
60 / timeframe.multiplier * 24 * 7 : 7
x=ema(d,len100)
//
zx=x/-1
col=zx > 0? color.lime : color.orange
plot(zx,color=col,linewidth=1)
//
tf10 = input("W", title = "Timeframe", type = input.resolution, options = ["1", "5", "15", "30", "60","120", "240","360","720", "D", "W"])
length = input(24, title = "Period", type = input.integer)
shift = input(1, title = "Shift", type = input.integer)
hma(_src, _length)=>
wma((2 * wma(_src, _length / 2)) - wma(_src, _length), round(sqrt(_length)))
hma3(_src, _length)=>
p = length/2
wma(wma(close,p/3)*3 - wma(close,p/2) - wma(close,p),p)
a = security(syminfo.tickerid, tf10, hma(close, length))
b =security(syminfo.tickerid, tf10, hma3(close[1], length)[shift])
//plot(a,color=color.gray)
//plot(b,color=color.yellow)
close_price = close[0]
len = input(25)
linear_reg = linreg(close_price, len, 0)
//plot(linear_reg, color=color.blue, title="LR", linewidth=3)
buy=crossover(linear_reg, b)
sell=crossunder(linear_reg, b)
//
// Time period input
testStartYear = input(2016, "BACKTEST START YEAR", minval = 1980, maxval = 2222)
testStartMonth = input(06, "BACKTEST START MONTH", minval = 1, maxval = 12)
testStartDay = input(01, "BACKTEST START DAY", minval = 1, maxval = 31)
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testStopYear = input(2222, "BACKTEST STOP YEAR", minval=1980, maxval = 2222)
testStopMonth = input(12, "BACKTEST STOP MONTH", minval=1, maxval=12)
testStopDay = input(31, "BACKTEST STOP DAY", minval=1, maxval=31)
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriod = time >= testPeriodStart and time <= testPeriodStop ? true : false
l = crossover(zx,0) or buy
if l and testPeriod
strategy.entry("buy", strategy.long)
per(pcnt) =>
strategy.position_size != 0 ? round(pcnt / 100 * strategy.position_avg_price / syminfo.mintick) : float(na)
stoploss=input(title=" stop loss", defval=25, minval=0.01)
los = per(stoploss)
q1=input(title=" qty_percent1", defval=25, minval=1)
q2=input(title=" qty_percent2", defval=25, minval=1)
q3=input(title=" qty_percent3", defval=25, minval=1)
tp1=input(title=" Take profit1", defval=0.5, minval=0.01)
tp2=input(title=" Take profit2", defval=1, minval=0.01)
tp3=input(title=" Take profit3", defval=1.5, minval=0.01)
tp4=input(title=" Take profit4", defval=2, minval=0.01)
strategy.exit("x1", qty_percent = q1, profit = per(tp1), loss = los)
strategy.exit("x2", qty_percent = q2, profit = per(tp2), loss = los)
strategy.exit("x3", qty_percent = q3, profit = per(tp3), loss = los)
strategy.exit("x4", profit = per(tp4), loss = los)