Strategi ini adalah sistem perdagangan kuantitatif berdasarkan isyarat silang purata bergerak berganda, digabungkan dengan mekanisme stop-loss dan mengambil keuntungan dinamik untuk pengurusan risiko. Strategi ini menggunakan purata bergerak eksponensial (EMA) 20 tempoh dan 50 tempoh sebagai penunjuk isyarat, dengan tahap stop-loss 2.5% sederhana dan 4% mengambil keuntungan untuk mengimbangi pulangan dan risiko. Reka bentuk strategi ini sangat sesuai untuk peniaga dengan toleransi risiko sederhana, yang mampu menangkap perubahan trend pasaran sambil mengawal risiko.
Logik teras strategi ini adalah berdasarkan unsur-unsur utama berikut:
Ini adalah strategi perdagangan kuantitatif risiko sederhana yang direka dengan baik yang menangkap trend melalui persilangan purata bergerak sambil menguruskan risiko dengan tahap stop-loss dan mengambil keuntungan yang dinamik. Kelebihan utama strategi ini terletak pada sifat sistematiknya yang tinggi dan risiko terkawal, tetapi perhatian mesti diberikan kepada keadaan pasaran yang mempengaruhi prestasi strategi. Melalui pengoptimuman dan peningkatan yang berterusan, strategi ini mempunyai potensi untuk mengekalkan prestasi yang stabil di pelbagai persekitaran pasaran. Pedagang dinasihatkan untuk menjalankan pengujian semula data sejarah yang menyeluruh sebelum pelaksanaan langsung dan menyesuaikan parameter mengikut toleransi risiko mereka.
/*backtest start: 2024-10-12 00:00:00 end: 2024-11-11 00:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Estrategia STX - Medias Móviles con Riesgo Medio", overlay=true) // Parámetros configurables mmr_period = input.int(20, title="Periodo Media Móvil Rápida (MMR)") mml_period = input.int(50, title="Periodo Media Móvil Lenta (MML)") stop_loss_percent = input.float(2.5, title="Stop-Loss (%)", step=0.1) // Stop-Loss moderado take_profit_percent = input.float(4.0, title="Take-Profit (%)", step=0.1) // Take-Profit moderado // Cálculo de medias móviles (Exponenciales) mmr = ta.ema(close, mmr_period) // Media Móvil Rápida mml = ta.ema(close, mml_period) // Media Móvil Lenta // Señales de Compra y Venta long_condition = ta.crossover(mmr, mml) // Señal de compra short_condition = ta.crossunder(mmr, mml) // Señal de venta // Calcular niveles de Stop-Loss y Take-Profit solo al activar la compra var float entry_price = na var float stop_loss_level = na var float take_profit_level = na if (long_condition) entry_price := close stop_loss_level := entry_price * (1 - stop_loss_percent / 100) take_profit_level := entry_price * (1 + take_profit_percent / 100) // Condiciones de salida (Stop-Loss y Take-Profit) exit_condition = (close <= stop_loss_level) or (close >= take_profit_level) // Ejecución de Órdenes if (long_condition) strategy.entry("Compra", strategy.long) if (short_condition or exit_condition) strategy.close("Compra") // Trazar Medias Móviles y Niveles plot(mmr, color=color.blue, linewidth=2, title="Media Móvil Rápida (MMR)") plot(mml, color=color.orange, linewidth=2, title="Media Móvil Lenta (MML)") plot(not na(entry_price) ? stop_loss_level : na, color=color.red, style=plot.style_line, linewidth=1, title="Stop-Loss") plot(not na(entry_price) ? take_profit_level : na, color=color.green, style=plot.style_line, linewidth=1, title="Take-Profit")