
A estratégia de duplo salto é uma estratégia quantitativa usada para a negociação de Bitcoin e ouro em linha curta. Ela combina o uso de médias móveis, bandas de Bryn e stop loss ATR para identificar sinais de ruptura e gerenciar o risco.
A estratégia de duplo salto alto usa o cruzamento de EMA rápido e EMA lento para determinar a direção da tendência. Quando a EMA rápida sobe, ela gera um sinal de compra; quando a EMA rápida desce, ela gera um sinal de venda.
Especificamente, ao julgar um sinal de compra, é necessário atender as seguintes duas condições: 1) o EMA rápido atravessa o EMA lento; 2) o preço de fechamento é próximo ou inferior ao Brin com o caminho ou o meio caminho. O julgamento de um sinal de venda é semelhante, requerendo o EMA rápido para atravessar o EMA lento e o Brin com o caminho ou o meio caminho.
Além disso, a estratégia de saltos duplos também usa o indicador ATR para calcular o stop dinâmico para controlar o risco de uma única transação. A posição de parada específica é o mínimo dos dois pontos mais recentes da linha K, menos o N vezes o ATR.
A estratégia de saltos duplos pode ser otimizada de várias maneiras:
A estratégia de saltos duplos utiliza simultaneamente o acompanhamento de tendências e a filtragem de ruptura para identificar oportunidades de curto prazo de forma eficaz. Combinado com o risco de gestão de stop loss dinâmico, é ideal para a negociação de curto prazo de moedas digitais e variedades de metais preciosos com maior volatilidade.
/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © singhak8757
//@version=5
strategy("Bitcoin and Gold 5min Scalping Strategy2.0", overlay=true)
// Input parameters
fastLength = input(5, title="Fast EMA Length")
slowLength = input(13, title="Slow EMA Length")
bollingerLength = input(20, title="Bollinger Band Length")
bollingerMultiplier = input(2, title="Bollinger Band Multiplier")
stopLossMultiplier = input(1, title="Stop Loss Multiplier")
// Calculate EMAs
fastEMA = ta.ema(close, fastLength)
slowEMA = ta.ema(close, slowLength)
// Calculate Bollinger Bands
basis = ta.sma(close, bollingerLength)
upperBand = basis + bollingerMultiplier * ta.stdev(close, bollingerLength)
lowerBand = basis - bollingerMultiplier * ta.stdev(close, bollingerLength)
// Buy condition
buyCondition = ta.crossover(fastEMA, slowEMA) and (close <= upperBand or close <= basis)
// Sell condition
sellCondition = ta.crossunder(fastEMA, slowEMA) and (close >= lowerBand or close >= basis)
// Calculate stop loss level
stopLossLevel = ta.lowest(low, 2)[1] - stopLossMultiplier * ta.atr(14)
// Plot EMAs
plot(fastEMA, color=color.rgb(0, 156, 21), title="Fast EMA")
plot(slowEMA, color=color.rgb(255, 0, 0), title="Slow EMA")
// Plot Bollinger Bands
plot(upperBand, color=color.new(#000000, 0), title="Upper Bollinger Band")
plot(lowerBand, color=color.new(#1b007e, 0), title="Lower Bollinger Band")
// Plot Buy and Sell signals
plotshape(series=buyCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar)
plotshape(series=sellCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)
// Plot Stop Loss level
plot(stopLossLevel, color=color.orange, title="Stop Loss Level")
// Strategy logic
strategy.entry("Buy", strategy.long, when = buyCondition)
strategy.exit("Stop Loss/Close", from_entry="Buy", loss=stopLossLevel)
strategy.close("Sell", when = sellCondition)