A estratégia Scalping Dips in Bull Market é uma estratégia que segue a tendência. Ela compra a queda durante os mercados de touros, estabelece um stop loss amplo para bloquear lucros ao sair de posições. Esta estratégia é adequada para mercados de touros e pode gerar retornos excessivos.
Esta estratégia primeiro calcula a mudança percentual do preço durante um período de retrospectiva. Quando o preço cai mais do que a porcentagem de callback pré-definida, um sinal de compra é acionado. Ao mesmo tempo, a linha média móvel precisa estar acima do preço de fechamento como confirmação da tendência de alta.
Após a entrada de uma posição, os preços de stop loss e take profit são definidos. A porcentagem de stop loss é grande para garantir fundos suficientes; a porcentagem de take profit é pequena para a rápida captação de lucro. Quando o stop loss ou take profit é ativado, a posição será fechada.
As vantagens desta estratégia são as seguintes:
Há também alguns riscos com esta estratégia:
Contramedidas: controlar rigorosamente o tamanho da posição, ajustar a percentagem de stop loss, reduzir adequadamente a taxa de saída do lucro para mitigar os riscos.
A estratégia pode ser otimizada nos seguintes aspectos:
A estratégia Scalping Dips in Bull Market bloqueia retornos excessivos usando um stop loss largo. Ele capitaliza na compra de callback dips em tendências de mercado de touros para oportunidades de lucro. Parâmetros de ajuste fino e controles de risco podem produzir bons retornos constantes.
/*backtest start: 2023-12-30 00:00:00 end: 2024-01-29 00:00:00 period: 1h basePeriod: 15m 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/ // © Coinrule //@version=3 strategy(shorttitle='Scalping Dips On Trend',title='Scalping Dips On Trend (by Coinrule)', overlay=true, initial_capital = 1000, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1) //Backtest dates fromMonth = input(defval = 1, title = "From Month") fromDay = input(defval = 10, title = "From Day") fromYear = input(defval = 2020, title = "From Year") thruMonth = input(defval = 1, title = "Thru Month") thruDay = input(defval = 1, title = "Thru Day") thruYear = input(defval = 2112, title = "Thru Year") showDate = input(defval = true, title = "Show Date Range") start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window window() => true inp_lkb = input(1, title='Lookback Period') perc_change(lkb) => overall_change = ((close[0] - close[lkb]) / close[lkb]) * 100 // Call the function overall = perc_change(inp_lkb) //MA inputs and calculations MA=input(50, title='Moving Average') MAsignal = sma(close, MA) //Entry dip= -(input(2)) strategy.entry(id="long", long = true, when = overall< dip and MAsignal > close and window()) //Exit Stop_loss= ((input (10))/100) Take_profit= ((input (3))/100) longStopPrice = strategy.position_avg_price * (1 - Stop_loss) longTakeProfit = strategy.position_avg_price * (1 + Take_profit) strategy.close("long", when = close < longStopPrice or close > longTakeProfit and window())