
A Flawless Victory DCA é uma estratégia de negociação quantitativa baseada no RSI e no Brinks de volatilidade, em combinação com a DCA (Dollar Cost Averaging). A estratégia visa capturar a dinâmica e a volatilidade do mercado e, ao mesmo tempo, gerenciar o risco através dos níveis de stop loss e stop loss.
A estratégia usa dois indicadores técnicos: o RSI e a faixa de Brin. O RSI é um indicador de oscilação dinâmica usado para medir a velocidade e a amplitude da mudança de preços, com um RSI de 14 de comprimento. A faixa de Brin é um indicador de volatilidade composto por uma média móvel simples (SMA) e duas curvas de diferença padrão.
A principal lógica da estratégia é a seguinte:
Em geral, a estratégia combina indicadores técnicos como o RSI e o Brinks com a lógica condicional do DCA, com base na média de custo de entrada, saída e potencial em dólares. O objetivo é aproveitar a dinâmica e a volatilidade do mercado, ao mesmo tempo em que gerencia o risco através dos níveis de parada e parada.
A estratégia de dinâmica e volatilidade do Flawless Victory DCA é uma estratégia de negociação quantitativa que combina o indicador de dinâmica RSI, o indicador de volatilidade Brinbelt e o DCA. A principal vantagem da estratégia é considerar integralmente a dinâmica e a volatilidade do mercado, oferecer opções de DCA e ter medidas claras de gerenciamento de risco.
/*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!")