Ini adalah strategi kemasukan crossover purata bergerak berganda berdasarkan purata bergerak 5 hari (MA5). Idea utama strategi ini adalah untuk memasuki kedudukan pada jarak tertentu di atas atau di bawah MA5, dan menutup kedudukan apabila harga penutupan lebih tinggi daripada harga kemasukan atau kembali ke harga kemasukan. Strategi ini bertujuan untuk menangkap trend jangka pendek sambil mengawal risiko.
Strategi ini menggunakan purata bergerak mudah 5 hari (SMA) sebagai penunjuk utama. Apabila harga pembukaan lilin baru di atas MA5, ia melaksanakan senario beli 1; apabila harga pembukaan lilin baru di bawah MA5 dan jarak dari MA5 melebihi 0.002 mata, ia melaksanakan senario beli 2. Untuk syarat jual, apabila harga penutupan lebih tinggi daripada atau sama dengan harga kemasukan purata, ia melaksanakan senario jual 1; apabila harga penutupan lebih rendah daripada 0.1% daripada harga kemasukan purata, ia melaksanakan senario jual 2.
Ini adalah strategi mudah berdasarkan trend jangka pendek. Dengan melintasi di atas dan di bawah MA5, dan menetapkan ambang jarak, peluang trend jangka pendek dapat ditangkap. Pada masa yang sama, peratusan tetap stop-loss dapat mengawal risiko. Walau bagaimanapun, strategi ini juga mempunyai beberapa batasan, seperti bergantung pada satu penunjuk dan perdagangan yang kerap. Pada masa akan datang, lebih banyak penunjuk boleh diperkenalkan, dan keadaan stop-loss dan mengambil keuntungan dapat dioptimumkan 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")