La stratégie Scalping Dips in Bull Market est une stratégie de suivi de tendance. Elle achète la baisse pendant les marchés haussiers, fixe un large stop loss pour verrouiller les bénéfices lors de la sortie des positions. Cette stratégie convient aux marchés haussiers et peut générer des rendements excédentaires.
Cette stratégie calcule d'abord la variation en pourcentage du prix sur une période de rétrospective. Lorsque le prix chute de plus du pourcentage de rappel prédéfini, un signal d'achat est déclenché. Dans le même temps, la ligne moyenne mobile doit être au-dessus du prix de clôture comme confirmation de la tendance haussière.
Après avoir entré dans une position, les prix de stop loss et de take profit sont définis. Le pourcentage de stop loss est élevé pour assurer des fonds suffisants; le pourcentage de take profit est faible pour une prise de profit rapide. Lorsque le stop loss ou le take profit est déclenché, la position sera fermée.
Les avantages de cette stratégie sont les suivants:
Cette stratégie comporte également certains risques:
Contre-mesures: contrôler strictement la taille des positions, ajuster le pourcentage de stop-loss, réduire correctement le taux de sortie du profit pour atténuer les risques.
La stratégie peut être optimisée dans les aspects suivants:
La stratégie Scalping Dips in Bull Market bloque les rendements excédentaires en utilisant un large stop loss. Elle capitalise sur l'achat de baisses de callback dans les tendances du marché haussier pour des opportunités de profit.
/*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())