
La stratégie dynamique et volatile Flawless Victory DCA est une stratégie de trading quantitative basée sur le RSI dynamique et les bandes de Brin de volatilité, combinée au DCA (Dollar Cost Averaging). La stratégie vise à capturer la dynamique et la volatilité du marché tout en gérant le risque par des niveaux de stop loss et stop loss.
La stratégie utilise deux indicateurs techniques: le RSI et la bande de Brin. Le RSI est un indicateur d’oscillation dynamique utilisé pour mesurer la vitesse et l’ampleur des variations de prix. Le RSI de longueur 14 est utilisé dans la stratégie.
La logique principale de la stratégie est la suivante:
Dans l’ensemble, la stratégie combine des indicateurs techniques tels que le RSI et les bandes de Brin, ainsi que la logique conditionnelle du DCA, sur la base d’une approximation des coûts d’entrée, de sortie et potentiels en dollars. L’objectif est de tirer parti de la dynamique et de la volatilité du marché tout en gérant le risque par le biais de niveaux de stop-loss et de stop-loss.
La stratégie Flawless Victory DCA Dynamics and Volatility Strategy est une stratégie de trading quantitative qui combine le RSI Dynamics, le Brinband Volatility Indicator et le DCA. Les principaux avantages de la stratégie résident dans la prise en compte intégrale de la dynamique et de la volatilité du marché, la fourniture d’options de DCA et la mise en place de mesures de gestion du risque claires.
/*backtest
start: 2023-03-16 00:00:00
end: 2024-03-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//FOR BUY STRATGY : @Suameer
//Create by zipix
//@version=4
strategy(overlay=true, shorttitle=" DCA Strategy", default_qty_type = strategy.percent_of_equity, initial_capital = 100000, default_qty_value = 100, pyramiding = 0, title="Flawless Victory DCA Strategy", currency = 'USD')
////////// ** Inputs ** //////////
// Stoploss and Profits Inputs
stoploss_input = input(6.604, title='Stop Loss %', type=input.float, minval=0.01)/100
takeprofit_input = input(2.328, title='Take Profit %', type=input.float, minval=0.01)/100
stoploss_level = strategy.position_avg_price * (1 - stoploss_input)
takeprofit_level = strategy.position_avg_price * (1 + takeprofit_input)
// DCA Settings
dca_enabled = input(false, title="Enable DCA")
dca_interval = input(1, title="DCA Interval (hours)", type=input.integer)
////////// ** Indicators ** //////////
// RSI
len = 14
src = close
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - 100 / (1 + up / down)
// Bollinger Bands
length = 20
mult = 1.0
basis = sma(src, length)
dev = mult * stdev(src, length)
upper = basis + dev
lower = basis - dev
////////// ** Triggers and Guards ** //////////
// Strategy Parameters
RSILowerLevel = 42
RSIUpperLevel = 70
BBBuyTrigger = src < lower
BBSellTrigger = src > upper
rsiBuyGuard = rsi > RSILowerLevel
rsiSellGuard = rsi > RSIUpperLevel
//////////** Strategy Signals ** //////////
// Entry Condition
buy_condition = BBBuyTrigger and rsiBuyGuard
// DCA Logic
if dca_enabled and (hour % dca_interval == 0)
strategy.entry("DCA Long", strategy.long, when = buy_condition, alert_message = "DCA - Buy Signal!")
else
strategy.entry("Long", strategy.long, when = buy_condition, alert_message = "Buy Signal!")
// Exit Condition
sell_condition = BBSellTrigger and rsiSellGuard
strategy.exit("Stoploss/TP", "Long", stop = stoploss_level, limit = takeprofit_level, when = sell_condition, alert_message = "Sell Signal!")