Ini adalah strategi perdagangan jangka pendek yang menggunakan peningkatan jumlah dagangan hujung minggu Bitcoin
Strategi pertama mencatat harga penutupan hari Jumaat, kemudian mengira bilangan hari sejak hari Jumaat. Pada hari Sabtu dan Ahad, jika harga penutupan harian lebih daripada 4.5% di atas harga penutupan hari Jumaat, pergi pendek; jika harga penutupan harian lebih daripada 4.5% di bawah harga penutupan hari Jumaat, pergi panjang. Setiap perdagangan menggunakan leverage 10x. Jika keuntungan mencapai 10% daripada modal awal, tutup semua kedudukan. Pada hari Isnin, tutup semua kedudukan tidak kira.
Secara khusus, strategi ini mendapat harga penutupan Jumaat, kemudian membandingkan harga penutupan semasa dengan Jumaat pada hari Sabtu dan Ahad.strategy.short
; jika harga penutupan semasa lebih rendah daripada 4.5% daripada hari Jumaat, pergi panjang melaluistrategy.long
. Leverage ditetapkan kepada 10x melaluileverage
Jika keuntungan mencapai 10% daripada modal awal, tutup semua kedudukan melaluistrategy.close_all()
Pada hari Isnin, tutup semua kedudukan melaluistrategy.close_all()
.
Peningkatan berpotensi untuk mengurangkan risiko:
Strategi ini boleh ditingkatkan dalam aspek berikut:
Tambah penunjuk lain untuk masa kemasukan yang lebih baik.
Mengoptimumkan strategi stop loss dan mengambil keuntungan. Gunakan stop trailing, mengambil keuntungan bertahap dan lain-lain untuk mengunci keuntungan dan mengawal risiko.
Sesuaikan saiz leverage untuk mengurangkan risiko. Melaksanakan penyesuaian leverage dinamik, menurunkan leverage semasa penarikan.
Tambah cryptocurrency lain. Perdagangan crypto tambahan dengan corak hujung minggu untuk arbitrage pelbagai aset.
Gunakan pembelajaran mesin untuk mengoptimumkan parameter. Kumpulkan set data sejarah yang besar dan gunakan ML untuk mengoptimumkan penyesuaian parameter dinamik secara automatik.
Ini adalah strategi perdagangan jangka pendek biasa yang menggunakan peningkatan jumlah hujung minggu Bitcoin. Ia memanfaatkan jumlah hujung minggu dengan menilai trend pada hari Sabtu dan Ahad, pergi panjang atau pendek. Strategi ini mempunyai kelebihan seperti penguatan keuntungan dan kawalan risiko, tetapi juga mempunyai beberapa risiko. Langkah seterusnya adalah untuk mengoptimumkan bidang seperti kemasukan, menghentikan kerugian, pengurusan leverage, pengembangan aset dan lain-lain untuk menjadikan strategi lebih mantap dan pintar.
/*backtest start: 2023-10-14 00:00:00 end: 2023-11-13 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 //Copyright Boris Kozak strategy("XBT Weekend Trade Strategy", overlay=false) leverage = input(10,"Leverage") profitTakingPercentThreshold = input(0.10,"Profit Taking Percent Threshold") //****Code used for setting up backtesting.****/// testStartYear = input(2017, "Backtest Start Year") testStartMonth = input(12, "Backtest Start Month") testStartDay = input(10, "Backtest Start Day") testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0) testStopYear = input(2025, "Backtest Stop Year") testStopMonth = input(12, "Backtest Stop Month") testStopDay = input(30, "Backtest Stop Day") testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0) // A switch to control background coloring of the test period testPeriodBackground = input(title="Color Background?", type=bool, defval=true) testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FFFF : na bgcolor(testPeriodBackgroundColor, transp=50) testPeriod() => true //****END Code used for setting up backtesting.****/// //*** Main entry point is here***// // Figure out how many days since the Friday close days_since_friday = if dayofweek == 6 0 else if dayofweek == 7 1 else if dayofweek == 1 2 else if dayofweek == 2 3 else if dayofweek == 3 4 else if dayofweek == 4 5 else 6 // Grab the Friday close price fridaycloseprice = request.security(syminfo.tickerid,'D',close[days_since_friday]) plot(fridaycloseprice) strategy.initial_capital = 50000 // Only perform backtesting during the window specified if testPeriod() // If we've reached out profit threshold, exit all positions if ((strategy.openprofit/strategy.initial_capital) > profitTakingPercentThreshold) strategy.close_all() // Only execute this trade on saturday and sunday (UTC) if (dayofweek == 7.0 or dayofweek == 1.0) // Begin - Empty position (no active trades) if (strategy.position_size == 0) // If current close price > threshold, go short if ((close>fridaycloseprice*1.045)) strategy.entry("Short Entry", strategy.short, leverage) else // If current close price < threshold, go long if (close<(fridaycloseprice*0.955)) strategy.entry("Long Entry",strategy.long, leverage) // Begin - we already have a position if (abs(strategy.position_size) > 0) // We are short if (strategy.position_size < 0) if ((close>strategy.position_avg_price*1.045)) // Add to the position strategy.entry("Adding to Short Entry", strategy.short, leverage) else strategy.entry("Long Entry",strategy.long,leverage) // On Monday, if we have any open positions, close them if (dayofweek==2.0) strategy.close_all()