
Strategi ini adalah sistem perdagangan mengikut arah aliran yang menggabungkan Purata Pergerakan (MA) dengan Bollinger Bands. Strategi ini mengenal pasti arah aliran pasaran dengan menganalisis hubungan kedudukan antara harga dan purata pergerakan 200 tempoh, serta kedudukan Bollinger Bands, sambil menyepadukan mekanisme henti kerugian peratusan tetap untuk mengawal risiko. Strategi ini menggunakan pengurusan kedudukan sebanyak 2.86%, yang sepadan dengan leverage 35x dan mencerminkan konsep pengurusan dana berhemat.
Logik teras strategi adalah berdasarkan elemen utama berikut:
Strategi ini membina sistem perdagangan yang lengkap dengan menggabungkan penunjuk teknikal klasik, yang mempunyai keupayaan menangkap trend yang baik dan kesan kawalan risiko. Kelebihan teras strategi terletak pada tahap sistematisasi yang tinggi dan kebolehlarasan parameter yang kukuh, manakala kawalan risiko yang berkesan dicapai melalui mekanisme henti rugi tetap. Walaupun prestasi mungkin lemah dalam pasaran yang tidak menentu, kestabilan dan keuntungan strategi boleh dipertingkatkan lagi melalui pelaksanaan arah yang dioptimumkan. Adalah disyorkan bahawa pedagang memberi perhatian kepada pilihan persekitaran pasaran apabila menggunakannya dalam perdagangan sebenar, dan melaraskan tetapan parameter mengikut toleransi risiko mereka sendiri.
/*backtest
start: 2024-11-26 00:00:00
end: 2024-12-25 08:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("MA 200 and Bollinger Bands Strategy", overlay=true) // 2.86% for 35x leverage
// inputs
ma_length = input(200, title="MA Length")
bb_length = input(20, title="Bollinger Bands Length")
bb_mult = input(2.0, title="Bollinger Bands Multiplier")
// calculations
ma_200 = ta.sma(close, ma_length)
bb_basis = ta.sma(close, bb_length)
bb_upper = bb_basis + (ta.stdev(close, bb_length) * bb_mult)
bb_lower = bb_basis - (ta.stdev(close, bb_length) * bb_mult)
// plot indicators
plot(ma_200, color=color.blue, title="200 MA")
plot(bb_upper, color=color.red, title="Bollinger Upper Band")
plot(bb_basis, color=color.gray, title="Bollinger Basis")
plot(bb_lower, color=color.green, title="Bollinger Lower Band")
// strategy logic
long_condition = close > ma_200 and bb_basis > ma_200 and ta.crossover(close, bb_lower)
short_condition = close < ma_200 and bb_basis < ma_200 and ta.crossunder(close, bb_upper)
// fixed stop loss percentage
fixed_stop_loss_percent = 3.0 / 100.0
if (long_condition)
strategy.entry("Long", strategy.long)
strategy.exit("Stop Long", "Long", stop=strategy.position_avg_price * (1 - fixed_stop_loss_percent))
if (short_condition)
strategy.entry("Short", strategy.short)
strategy.exit("Stop Short", "Short", stop=strategy.position_avg_price * (1 + fixed_stop_loss_percent))
// take profit conditions
close_long_condition = close >= bb_upper
close_short_condition = close <= bb_lower
if (close_long_condition)
strategy.close("Long")
if (close_short_condition)
strategy.close("Short")