Ini adalah strategi entri lintas rata-rata bergerak ganda berdasarkan rata-rata bergerak 5 hari (MA5). Ide utama dari strategi ini adalah untuk memasuki posisi pada jarak tertentu di atas atau di bawah MA5, dan menutup posisi ketika harga penutupan lebih tinggi dari harga masuk atau kembali ke harga masuk. Strategi ini bertujuan untuk menangkap tren jangka pendek sambil mengendalikan risiko.
Strategi ini menggunakan rata-rata bergerak sederhana 5 hari (SMA) sebagai indikator utama. Ketika harga pembukaan lilin baru di atas MA5, ia mengeksekusi skenario beli 1; ketika harga pembukaan lilin baru di bawah MA5 dan jarak dari MA5 melebihi 0,002 poin, ia mengeksekusi skenario beli 2. Untuk kondisi jual, ketika harga penutupan lebih tinggi dari atau sama dengan harga masuk rata-rata, ia mengeksekusi skenario jual 1; ketika harga penutupan lebih rendah dari 0,1% dari harga masuk rata-rata, ia mengeksekusi skenario jual 2.
Strategi entry crossover moving average ganda ini adalah strategi sederhana yang didasarkan pada tren jangka pendek. Dengan melintasi di atas dan di bawah MA5, dan menetapkan ambang jarak, peluang tren jangka pendek dapat ditangkap. Pada saat yang sama, stop-loss persentase tetap dapat mengendalikan risiko. Namun, strategi ini juga memiliki beberapa keterbatasan, seperti mengandalkan satu indikator dan perdagangan yang sering. Di masa depan, lebih banyak indikator dapat diperkenalkan, dan kondisi stop-loss dan take-profit dapat dioptimalkan untuk meningkatkan ketahanan dan daya adaptasi strategi.
/*backtest start: 2023-04-24 00:00:00 end: 2024-04-29 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("YBS Strategy 1.1", overlay=true) // Moving Average Settings ma5 = ta.sma(close, 5) // Scenario 1: Buy when a new candle opens above the MA5 buy_condition_scenario1 = open > ma5 // Scenario 2: Buy when a new candle opens below the MA5 and is at a significant distance from the MA5 distance_from_ma5 = open - ma5 buy_condition_scenario2 = open < ma5 and distance_from_ma5 > 0.002 // Define distance in points here // Sell: Sell at the close of the candle if it's positive above the entry price, or if the price returns to the entry price sell_condition_scenario1 = close > strategy.position_avg_price or close == strategy.position_avg_price sell_condition_scenario2 = close <= strategy.position_avg_price * 0.999 // Close if price drops more than 0.1% from entry price // Execute buy and sell orders if (buy_condition_scenario1 and not (strategy.opentrades > 0)) strategy.entry("Buy Scenario 1", strategy.long) if (buy_condition_scenario2 and not (strategy.opentrades > 0)) strategy.entry("Buy Scenario 2", strategy.long) if (sell_condition_scenario1) strategy.close("Buy Scenario 1") if (sell_condition_scenario2) strategy.close("Buy Scenario 2")