Strategi ini menggunakan EMA untuk menentukan arah tren dan retracement Fibonacci adaptif untuk secara otomatis mengidentifikasi titik pembalikan, bertujuan untuk menjual tinggi dan membeli rendah dengan menangkap tren.
Gunakan EMA 9 hari dan EMA 21 hari golden cross dan death cross untuk menentukan arah tren.
Mengimplementasikan retracement Fibonacci adaptif dengan 100 periode untuk secara otomatis menentukan tingkat retracement kunci berdasarkan perubahan harga baru-baru ini.
Penembusan harga 0,236 retracement Fibonacci menunjukkan pembalikan dan menutup posisi yang ada.
Ketika EMA 9 hari melintasi di bawah EMA 21 hari, dan harga lebih rendah dari adaptif Fibonacci tinggi, pergi pendek.
Target keuntungan panjang adalah penyeberangan di atas EMA 200 hari. Stop loss pendek memecahkan retracement Fibonacci 0,236.
EMA memberikan sinyal tren yang jelas, mudah diterapkan
Adaptif Fibonacci menghindari pengaturan parameter manual
Perdagangan sering menangkap gerakan jangka pendek untuk strategi frekuensi tinggi
Tingkat retracement utama untuk stop loss yang tepat waktu
Parameter yang dapat dikonfigurasi untuk optimasi lintas siklus
Keterlambatan EMA membutuhkan konfirmasi dari indikator lain
Adaptive Fibonacci risiko overfit dengan tingkat yang tidak stabil
Perdagangan frekuensi tinggi meningkatkan biaya dari komisi dan slippage
Penyaringan yang tidak efektif dari tren yang terbatas pada kisaran mengarah pada sinyal palsu
Kebutuhan peningkatan dalam pengelolaan penggunaan dan pengendalian risiko-balasan
Tambahkan indikator volume untuk menghindari sinyal palsu dari perbedaan harga-volume
Mengoptimalkan periode EMA agar lebih sesuai dengan kondisi pasar saat ini
Mengimplementasikan stop loss dinamis untuk pengendalian risiko yang lebih baik
Masukkan indeks kekuatan tren untuk menghindari whipsaws
Pertimbangkan dampak biaya perdagangan dan tetapkan target keuntungan minimum
Strategi ini mengidentifikasi arah tren dengan EMA dan menentukan tingkat pembalikan secara dinamis menggunakan retracement Fibonacci adaptif, yang secara otomatis beradaptasi dengan kondisi pasar yang berbeda. Namun, strategi ini lebih mengandalkan petunjuk indikator tanpa segmentasi tren dan logika Elliott Wave, yang meninggalkan ruang untuk optimalisasi. Secara keseluruhan, sebagai strategi perdagangan jangka pendek frekuensi tinggi, strategi ini dapat menangkap perubahan harga yang cepat tetapi melibatkan risiko sering stop loss dan overtrading yang perlu dikelola oleh pedagang.
/*backtest start: 2023-08-21 00:00:00 end: 2023-09-20 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © CheatCode1 //@version=5 strategy("CC-Trend strategy 2", overlay=true, initial_capital = 10000, commission_type = strategy.commission.percent, commission_value = 0.01, default_qty_type = strategy.percent_of_equity, default_qty_value = 100 ) ema9 = ta.ema(close, 9) ema21 = ta.ema(close, 21) ema55 = ta.ema(close, 55) ema200 = ta.ema(close, 200) plot(ema200, '22', color.blue, 2) FibL = input.int(100, 'Fibonacci Length', 1, 500, group = 'Automatic Fibonacci Retracement') len1 = input.int(1, 'Show Last', 0, 1000, group = 'Automatic Fibonacci Retracement') len2 = input.int(5, 'Offset Length', 0, 1000, group = 'Automatic Fibonacci Retracement') highF = ta.highest(ema55 >= ema9 ? ema55:ema9, FibL) lowF = ta.lowest(ema55 >= ema9 ? ema9:ema55, FibL) AvgFib = highF - lowF //Fibonacci Executions LL2 = highF + .618 * AvgFib LL1 = highF + .272 * AvgFib L1 = highF L236 = highF - 0.236 * AvgFib L382 = highF - 0.382 * AvgFib Mid = highF - 0.50 * AvgFib S382 = lowF + 0.382 * AvgFib S236 = lowF + 0.236 * AvgFib S1 = lowF SS1 = lowF - .272 * AvgFib SS2 = lowF - .618 * AvgFib //Fibonacci Plot's high2FP = plot(LL2, 'Highe2', color.red,offset = len2, show_last = len1, trackprice = true) high1FP = plot(LL1, 'Highe1', color.red,offset = len2, show_last = len1, trackprice = true) highFP = plot(highF, 'High', color.red,offset = len2, show_last = len1, trackprice = true) L236P = plot(L236, "0.764", #ED381C, offset = len2, show_last = len1, trackprice = true ) L382P = plot(L382, "0.618", color.white,offset = len2, show_last = len1, trackprice = true ) MidP = plot(Mid, "0.5", color.orange,offset = len2, show_last = len1, trackprice = true ) S382P = plot(S382, "0.382", color.yellow ,offset = len2, show_last = len1, trackprice = true) S236P = plot(S236, "0.236", color.lime ,offset = len2, show_last = len1, trackprice = true) lowFP = plot(lowF, 'Low', color.green,offset = len2, show_last = len1, trackprice = true) low1FP = plot(SS1, 'Lowe1', color.green,offset = len2, show_last = len1, trackprice = true) low2FP = plot(SS2, 'Lowe2', color.green,offset = len2, show_last = len1, trackprice = true) plot(ema9, '22', color.yellow, 2) plot(ema55, '55', color.aqua, 2) plot(ema200, '200', color.maroon, 2) shortCondition = close[1] < highF and ema21 < ema55 if (shortCondition) strategy.entry("Short", strategy.short) shorttp = ta.crossover(close, ema200) and strategy.openprofit >= 0 if (shorttp) strategy.close('Short', 'Short TP', qty_percent = 100) shortclose2 = close[1] > L236 and not (shortCondition) if(shortclose2) strategy.close('Short', 'Short RM', qty_percent = 100)