
La stratégie est un système de trading quantitatif basé sur l’analyse multidimensionnelle d’indicateurs techniques, qui construit un système de prise de décision de trading entièrement automatisé en intégrant des indicateurs techniques tels que l’indicateur de force relative (RSI), l’indicateur de dispersion de convergence des moyennes mobiles (MACD) et l’indicateur de variation des moyennes mobiles (EMA). La stratégie adopte une conception modulaire, prend en charge des paramètres de configuration de trading flexibles et intègre un mécanisme de stop-loss dynamique et une fonction de suivi des pertes, visant à réaliser des gains stables et sains sous contrôle du risque.
La logique de base de la stratégie est basée sur une analyse synchrone de trois indicateurs techniques:
La stratégie peut déclencher une transaction à la génération de signaux de n’importe quel indicateur, tout en intégrant un triple mécanisme de contrôle des risques de stop-loss, de stop-loss fixe et de stop-loss suivi. Une fois que le prix atteint l’objectif de profit prédéfini, la fonction de stop-loss suivi est automatiquement activée, assurant que les bénéfices réalisés ne seront pas retirés de manière significative.
La stratégie construit un cadre de décision de négociation systématisé grâce à l’analyse collaborative d’indicateurs techniques multidimensionnels et permet une gestion précise de l’ensemble du processus de négociation grâce à un mécanisme de contrôle des risques bien développé. Bien que des défis spécifiques puissent être rencontrés dans certains environnements de marché, la stratégie est susceptible de maintenir une performance stable dans différents cycles de marché grâce à une optimisation et à une amélioration continues.
/*backtest
start: 2024-11-21 00:00:00
end: 2024-11-28 00:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © rfssocal
//@version=5
strategy("Quantico Bot MILLIONARIO", overlay=true)
// Configuração inicial de parâmetros
capital_inicial = input.float(100, "Capital Inicial ($)", minval=10)
risco_por_trade = input.float(1, "Risco por Trade (%)", minval=0.1, maxval=100)
take_profit_percent = input.float(2, "Take Profit (%)", minval=0.1)
stop_loss_percent = input.float(1, "Stop Loss (%)", minval=0.1)
trailing_stop_percent = input.float(5, "Trailing Stop Gatilho (%)", minval=0.1)
// Configuração de indicadores
usar_rsi = input.bool(true, "Usar RSI como Indicador")
usar_macd = input.bool(true, "Usar MACD como Indicador")
usar_ema = input.bool(true, "Usar EMA como Indicador")
// Indicadores
rsi_value = ta.rsi(close, 14)
[macd_line, signal_line, _] = ta.macd(close, 12, 26, 9)
ema_20 = ta.ema(close, 20)
ema_50 = ta.ema(close, 50)
// Condições de compra
compra_rsi = usar_rsi and rsi_value < 30
compra_macd = usar_macd and macd_line > signal_line
compra_ema = usar_ema and ema_20 > ema_50
compra = compra_rsi or compra_macd or compra_ema
// Condições de venda
venda_rsi = usar_rsi and rsi_value > 70
venda_macd = usar_macd and macd_line < signal_line
venda_ema = usar_ema and ema_20 < ema_50
venda = venda_rsi or venda_macd or venda_ema
// Calcular stop loss e take profit
stop_loss_price = strategy.position_avg_price * (1 - stop_loss_percent / 100)
take_profit_price = strategy.position_avg_price * (1 + take_profit_percent / 100)
// Adiciona trailing stop automático
if (strategy.position_size > 0 and close >= strategy.position_avg_price * (1 + trailing_stop_percent / 100))
strategy.exit("Trailing Stop", from_entry="Compra", stop=close * 0.99)
// Executa as ordens automáticas
if (compra)
strategy.entry("Compra", strategy.long)
if (venda)
strategy.entry("Venda", strategy.short)
// Variável para calcular o lucro total
var float total_profit = 0.0
total_profit := strategy.netprofit
// Exibição de dados no gráfico
label.new(bar_index, na, "Take Profit: " + str.tostring(take_profit_price) + "\nStop Loss: " + str.tostring(stop_loss_price),
style=label.style_label_down, color=color.green, textcolor=color.white)
// Exibe o balanço
label.new(bar_index, na, "Balanço Atual\nDiário: " + str.tostring(total_profit), style=label.style_label_down, color=color.blue, textcolor=color.white)