DCA Dual Moving Average Turtle Trading Strategy adalah strategi perdagangan kuantitatif berdasarkan persilangan dua purata bergerak dan Purata Kos Dolar (DCA). Strategi ini menggunakan dua Purata Bergerak Sederhana (SMA) dengan tempoh yang berbeza sebagai isyarat beli dan jual. Apabila SMA pantas melintasi di atas SMA perlahan, isyarat beli dihasilkan, dan apabila SMA pantas melintasi di bawah SMA perlahan, isyarat jual dihasilkan. Strategi ini bertujuan untuk menangkap trend pasaran jangka menengah hingga panjang sambil mengurangkan risiko yang berkaitan dengan turun naik pasaran melalui penggunaan DCA.
DCA Dual Moving Average Turtle Trading Strategy menangkap trend pasaran melalui crossover purata bergerak berganda dan mengurangkan kos pembelian dan risiko menggunakan kaedah DCA. Strategi ini mudah, boleh digunakan secara meluas, tetapi memerlukan perhatian kepada pengoptimuman parameter dan kawalan risiko dalam aplikasi praktikal. Dengan memperkenalkan penunjuk teknikal lain, mengoptimumkan parameter DCA, dan menggabungkan mekanisme berhenti kerugian dan mengambil keuntungan, prestasi dan kestabilan strategi dapat ditingkatkan lagi.
/*backtest start: 2024-04-21 00:00:00 end: 2024-04-28 00:00:00 period: 10m basePeriod: 1m 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/ // © loggolitasarim //@version=5 strategy("DCA YSMA HSMA Stratejisi", overlay=true, calc_on_every_tick=true) // Parametreler sma_fast = input(14, "Hızlı SMA Dönemi") sma_slow = input(28, "Yavaş SMA Dönemi") dca_amount = input(100, "DCA Miktarı") dca_interval = input(14, "DCA Aralığı (Gün)") // Hızlı ve yavaş SMA hesaplamaları fast_sma = ta.sma(close, sma_fast) slow_sma = ta.sma(close, sma_slow) // DCA hesaplamaları var float dca_average_price = na var int dca_count = na if (bar_index % dca_interval == 0) dca_count := nz(dca_count, 0) + 1 dca_average_price := nz(dca_average_price, close) * (dca_count - 1) + close dca_average_price /= dca_count // Alım ve satım sinyalleri longCondition = ta.crossover(fast_sma, slow_sma) shortCondition = ta.crossunder(fast_sma, slow_sma) if (longCondition) strategy.entry("Alım", strategy.long, qty=dca_amount) if (shortCondition) strategy.entry("Satım", strategy.short) // Grafik plot(fast_sma, "Hızlı SMA", color=color.blue) plot(slow_sma, "Yavaş SMA", color=color.red) // Uyarılar alertcondition(longCondition, "Alım Sinyali", "Alım Sinyali") alertcondition(shortCondition, "Satım Sinyali", "Satım Sinyali")