
La estrategia es un sistema de comercio cuantitativo que combina indicadores de análisis técnico y simulaciones de inteligencia artificial. La estrategia integra indicadores técnicos tradicionales como la línea media (EMA), el índice de volatilidad relativa (RVI) e introduce señales de simulación de AI para la toma de decisiones comerciales.
La estrategia se basa en los siguientes componentes centrales:
El sistema genera una señal de compra cuando el EMA20 atraviesa el EMA200 y el RVI es positivo; el sistema genera una señal de venta cuando el EMA20 atraviesa el EMA200 y el RVI es negativo.
La estrategia combina el análisis técnico tradicional y los métodos modernos de cuantificación para construir un sistema de negociación relativamente completo. Aunque existe cierto riesgo, la estrategia promete mejores resultados de negociación mediante la optimización y mejora continuas. Se recomienda una verificación de retroalimentación adecuada antes de la negociación en vivo.
/*backtest
start: 2024-10-01 00:00:00
end: 2024-10-31 23:59:59
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Gold Bot with Simulated AI, Viamanchu, EMA20, EMA200, RVI, and Risk Management", overlay=true)
// Parámetros de las EMAs
ema20 = ta.ema(close, 20)
ema200 = ta.ema(close, 200)
// Relative Volatility Index (RVI)
length = input(14, title="RVI Length")
rvi = ta.rma(close - close[1], length) / ta.rma(math.abs(close - close[1]), length)
// Simulación de Viamanchu (aleatoria)
var int seed = time
simulated_vi_manchu_signal = math.random() > 0.5 ? 1 : -1 // 1 para compra, -1 para venta
// Configuración de gestión de riesgos
capital_total = 2000 // Capital total
capital_operado = 200 // Capital asignado a cada operación
stop_loss_percent = input.float(2, title="Stop Loss %", minval=0.1, step=0.1) // 2% de stop loss
take_profit_percent = input.float(4, title="Take Profit %", minval=0.1, step=0.1) // 4% de take profit
// Cálculo de stop loss y take profit en base al precio de entrada
stop_loss = close * (1 - stop_loss_percent / 100)
take_profit = close * (1 + take_profit_percent / 100)
// Condiciones de entrada
longCondition = ta.crossover(ema20, ema200) and rvi > 0 and simulated_vi_manchu_signal == 1
shortCondition = ta.crossunder(ema20, ema200) and rvi < 0 and simulated_vi_manchu_signal == -1
// Ejecutar compra
if (longCondition)
strategy.entry("Compra", strategy.long, stop=stop_loss, limit=take_profit)
// Ejecutar venta
if (shortCondition)
strategy.entry("Venta", strategy.short, stop=stop_loss, limit=take_profit)