
Strategi ini adalah strategi perdagangan bitcoin pada waktu perdagangan London berdasarkan indikator teknis MACD dan RSI. Strategi ini hanya membuka posisi pada waktu perdagangan London, menggunakan MACD untuk menentukan arah tren masuk ke dalam pasar, dan menggunakan RSI untuk menentukan overbought dan oversold keluar dari pasar. Strategi ini cocok untuk perdagangan bitcoin di garis tengah.
London trading time sangat aktif di pasar forex, dan sebagian besar lembaga akan berpartisipasi dalam hal ini. Strategi ini mengatur waktu London antara jam 7 pagi dan 4 sore, hanya pada saat ini posisi akan dibuka.
MACD umumnya dapat menentukan arah tren. Ketika garis cepat melintasi garis lambat adalah garpu emas, menunjukkan kenaikan yang akan datang, lakukan lebih banyak; Ketika garis cepat melintasi garis lambat adalah garpu mati, menunjukkan penurunan yang akan datang, lakukan lebih banyak.
RSI dapat menentukan apakah pasar overbought atau oversold. Jika RSI lebih besar dari 70, itu berarti overbought. Jika RSI lebih kecil dari 30, itu berarti oversold.
Keuntungan terbesar dari strategi ini adalah kombinasi antara perdagangan tren dan perdagangan ritme overbought dan oversold. Jika tren tidak jelas, ia dapat menggunakan MACD untuk menilai tren yang mungkin terjadi; dan menggunakan RSI untuk mengendalikan risiko, sehingga menghindari mengejar buta dan membungkam penurunan jika tidak ada tren yang jelas. Selain itu, strategi ini hanya membuka posisi pada saat perdagangan London yang didominasi oleh lembaga, dapat mengurangi dampak dari fluktuasi harga yang tidak rasional pada strategi.
Risiko utama dari strategi ini adalah bahwa MACD sebagai indikator teknis untuk memetakan pasar, tidak bekerja dengan baik di bawah tren yang jelas. Jika terjadi satu sisi dalam jangka panjang, sinyal MACD mungkin sering gagal. Selain itu, RSI juga mungkin gagal dalam situasi yang tinggi atau rendah. Untuk mengurangi risiko ini, kita dapat menyesuaikan parameter dengan tepat, atau menambahkan kondisi riak lain untuk memastikan posisi hanya dibuka pada sinyal dengan probabilitas tinggi.
Strategi ini dapat dioptimalkan dalam beberapa hal:
Tambahkan filter indikator teknis lainnya, seperti Brinline, KDJ, dan lain-lain, untuk menghindari penembusan palsu.
Menambahkan strategi stop loss, seperti stop loss bergerak atau stop loss melompat, untuk mengunci lebih banyak keuntungan.
Parameter optimasi, menyesuaikan parameter MACD dan RSI untuk berbagai jenis situasi.
Menambahkan elemen pembelajaran mesin, menggunakan model pembelajaran mendalam seperti lstm untuk menilai strategi tren.
Strategi ini secara keseluruhan merupakan strategi perdagangan Bitcoin yang dapat diandalkan pada waktu perdagangan London. Strategi ini menggabungkan tren dan ritme, memastikan probabilitas keuntungan yang tinggi sambil menyaring sinyal yang tidak efektif. Strategi ini dapat meningkatkan stabilitas dan keuntungan lebih lanjut dengan terus mengoptimalkan parameter dan menambahkan penilaian indikator teknis lainnya.
/*backtest
start: 2023-11-19 00:00:00
end: 2023-11-22 08:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("London MACD RSI Strategy -1H BTC", overlay=true)
// Define London session times
london_session_start_hour = input(6, title="London Session Start Hour")
london_session_start_minute = input(59, title="London Session Start Minute")
london_session_end_hour = input(15, title="London Session End Hour")
london_session_end_minute = input(59, title="London Session End Minute")
// Define MACD settings
fastLength = input(12, title="Fast Length")
slowLength = input(26, title="Slow Length")
signalSMA = input(9, title="Signal SMA")
// RSI settings
rsiLength = input(14, title="RSI Length")
rsiOverbought = input(65, title="RSI Overbought")
rsiOversold = input(35, title="RSI Oversold")
// Calculate MACD
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSMA)
// Calculate RSI
rsi = ta.rsi(close, rsiLength)
// Convert input values to timestamps
london_session_start_timestamp = timestamp(year, month, dayofmonth, london_session_start_hour, london_session_start_minute)
london_session_end_timestamp = timestamp(year, month, dayofmonth, london_session_end_hour, london_session_end_minute)
// Filter for London session
in_london_session = time >= london_session_start_timestamp and time <= london_session_end_timestamp
// Long and Short Conditions
longCondition = ta.crossover(macdLine, signalLine) and rsi < rsiOversold and in_london_session
shortCondition = ta.crossunder(macdLine, signalLine) and rsi > rsiOverbought and in_london_session
// Strategy entries and exits
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)