
Strategi ini adalah strategi perdagangan berdasarkan trend yang mengikuti purata bergerak. Ia menggunakan purata bergerak harga tertinggi dan terendah yang ditetapkan dengan parameter yang berbeza untuk menilai trend pasaran, dan pada titik perubahan trend menghasilkan isyarat perdagangan yang sesuai.
Strategi ini menggunakan purata bergerak sederhana dengan harga tertinggi dan harga terendah dengan parameter yang berbeza untuk menilai trend pasaran. Secara khusus, ia mencipta dua kumpulan purata bergerak yang dijejaki:
Sistem purata bergerak mengikut h1 dan l1 h1 adalah purata bergerak sederhana dengan harga tertinggi, yang menunjukkan tren pasaran; l1 adalah tren bawah yang terdiri daripada h1 tolak nilai ATR. Ia menghasilkan isyarat polygon apabila harga naik melalui h1; ia menghasilkan isyarat posisi kosong apabila harga turun melalui l1.
Sistem purata bergerak ke bawah yang terdiri daripada h2 dan l2; h2 adalah purata bergerak sederhana dengan harga terendah, yang menunjukkan tren bawah pasaran; l2 adalah tren atas yang terdiri daripada h2 ditambah nilai ATR. Ia menghasilkan isyarat kosong apabila harga menembusi h2 ke bawah; ia menghasilkan isyarat kosong apabila harga menembusi l2 ke atas.
Penggunaan sistem dua hala dapat menilai titik-titik perubahan trend dengan lebih tepat, menyaring sebahagian daripada perdagangan bising. Pada masa yang sama, nilai ATR digunakan untuk menetapkan tahap stop loss dan stop loss, mengawal nisbah risiko dan keuntungan setiap unit.
Strategi ini mempunyai beberapa kelebihan:
Strategi ini mempunyai beberapa risiko:
Kaedah pencegahan:
Strategi ini boleh dioptimumkan dalam beberapa aspek:
Strategi ini secara keseluruhannya adalah strategi pengesanan trend yang mudah dan praktikal, dengan pemikiran teras adalah untuk mengenal pasti perubahan trend dan mengehadkan kerugian tunggal melalui penapisan dua jalur dan ATR dinamik. Ia mempunyai nilai sebenar, tetapi juga ruang pengoptimuman yang lebih besar.
/*backtest
start: 2023-12-05 00:00:00
end: 2024-01-04 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("I Like Winners And Love Loosers!", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
highest_length = input(200, type=input.integer, minval=1, title="Highest Length")
highest_average = input(10, type=input.integer, minval=1, title="Highest Average Length")
lowest_length = input(200, type=input.integer, minval=1, title="Lowest Length")
lowest_average = input(10, type=input.integer, minval=1, title="Lowest Average Length")
atr_length = input(14, type=input.integer, minval=1, title="ATR Length")
atr_multiplier = input(2, type=input.integer, minval=1, title="ATR Multiplier")
a = atr(atr_length) * atr_multiplier
h1 = sma(highest(high, highest_length), highest_average)
l1 = h1 - a
h2 = sma(lowest(low, lowest_length), lowest_average)
l2 = h2 + a
buy1_signal = crossover(close, h1)
sell1_signal = crossunder(close, l1)
strategy.entry("Buy", strategy.long, when=buy1_signal)
strategy.close("Buy", when=sell1_signal)
buy2_signal = crossunder(close, h2)
sell2_signal = crossover(close, l2)
strategy.entry("Sell", strategy.short, when=buy2_signal)
strategy.close("Sell", when=sell2_signal)
y1 = plot(h1, title="H1", color=color.green, transp=50, linewidth=2)
y2 = plot(l1, title="L1", color=color.red, transp=50, linewidth=2)
y3 = plot(h2, title="H2", color=color.green, transp=50, linewidth=2)
y4 = plot(l2, title="L2", color=color.red, transp=50, linewidth=2)
fill(y1,y2,color=color.green)
fill(y3,y4,color=color.red)