
Strategi ini adalah sistem perdagangan yang didasarkan pada 1/2/4 siklus SMA cross-signal. Dengan mengamati periode pendek dan periode pertengahan rata-rata garis yang bersinggungan dengan periode panjang rata-rata garis, untuk menangkap titik-titik perubahan tren pasar, untuk memungkinkan pelacakan tren dan berhenti tepat waktu.
Inti dari strategi ini adalah menggunakan rata-rata bergerak sederhana dari tiga periode yang berbeda ((1/2/4)), dengan menilai apakah rata-rata periode pendek ((1 periode) dan periode menengah ((2 periode) rata-rata melintasi rata-rata periode panjang ((4 periode) untuk menentukan sinyal beli; sebaliknya, ketika rata-rata periode pendek dan periode menengah melintasi rata-rata periode panjang untuk menghasilkan sinyal jual.
Strategi ini menangkap tren pasar melalui penyeberangan beberapa rata-rata bergerak, desain konsepnya jelas, cara implementasinya sederhana dan efektif. Meskipun ada risiko keterbelakangan dan sinyal palsu, tetapi dengan optimasi parameter yang masuk akal dan tambahan indikator, sistem perdagangan yang lebih baik dapat dibangun.
/*backtest
start: 2024-10-20 00:00:00
end: 2025-02-18 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy("1/2/4 Moving Average STR 1.0.0", overlay=true)
o_length = input(1, title="1 Closed")
t_length = input(2, title="2 Closed")
f_length = input(4, title="4 Closed")
// Calculate the simple moving averages.
ma_o = ta.sma(close, o_length)
ma_t = ta.sma(close, t_length)
ma_f = ta.sma(close, f_length)
// Plot the moving averages on the chart.
plot(ma_o, color=color.green, title="1 MA")
plot(ma_t, color=color.red, title="2 MA")
plot(ma_f, color=color.blue, title="4 MA")
// Assign the crossover and crossunder results to global variables.
crossover_o = ta.crossover(ma_o, ma_f)
crossover_t = ta.crossover(ma_t, ma_f)
crossunder_o = ta.crossunder(ma_o, ma_f)
crossunder_t = ta.crossunder(ma_t, ma_f)
// Generate signals based on the global crossover variables.
// Buy signal: both 1 and 2 SMAs cross over the 4 SMA on the same bar.
buy_signal = crossover_o and crossover_t
// Sell signal: both 1 and 2 SMAs cross under the 4 SMA on the same bar.
sell_signal = crossunder_o and crossunder_t
// Enter trades based on the signals.
// For a long position, enter on a buy signal and exit when a sell signal occurs.
if buy_signal
strategy.entry("Long", strategy.long)
if sell_signal
strategy.close("Long")
// For a short position, enter on a sell signal and exit when a buy signal occurs.
if sell_signal
strategy.entry("Short", strategy.short)
if buy_signal
strategy.close("Short")