
Strategi ini membina strategi berlubang yang mudah berdasarkan indikator SMA. Apabila harga melangkaui SMA 20 kitaran tinggi, dan apabila harga melanggar SMA 20 kitaran rendah, ia kosong. Di samping itu, terdapat mekanisme penarikan diri dari kerugian.
Strategi ini menggunakan SMA tertinggi dan terendah dalam tempoh 20 kitaran sebagai penunjuk untuk menentukan banyak ruang. Apabila harga melintasi SMA tertinggi, ia dianggap sedang dalam trend menaik, dan ia adalah lebih banyak. Apabila harga melanggar SMA terendah, ia dianggap sedang dalam trend menurun, dan ia adalah kosong.
Khususnya, strategi pertama mengira SMA 20 kitaran harga tertinggi dan harga terendah, dan melukis garis petunjuk. Kemudian, setkan logik perdagangan seperti berikut:
Memasuki harga penutupan dengan SMA tertinggi Permulaan berganda: harga ditutup apabila harga melepasi 0.99 kali SMA tertinggi
Permulaan kosong: harga penutupan apabila penutupan melampaui SMA terendah
Permulaan kosong: harga penutupan pada 1.01x SMA terendah
Dengan cara ini, anda boleh membina strategi multiroom yang mengikut trend.
Strategi ini mempunyai beberapa kelebihan:
Strategi ini juga mempunyai risiko:
Risiko-risiko ini boleh dikawal dan dikurangkan dengan cara-cara yang berpasangan dengan penunjuk-penunjuk lain, menetapkan parameter-parameter berhenti dan pengoptimuman.
Strategi ini juga boleh dioptimumkan dalam beberapa aspek:
Strategi ini jelas dan mudah dilaksanakan, dengan menilai trend kosong melalui indikator SMA, menetapkan mekanisme masuk dan keluar yang munasabah, dapat memperoleh kesan yang baik. Terdapat ruang untuk pengoptimuman lanjut, jika dikombinasikan dengan petunjuk dan teknik lain, dapat menjadi strategi yang bernilai untuk dijejaki jangka panjang.
/*backtest
start: 2023-11-14 00:00:00
end: 2023-11-21 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © AlanAntony
//@version=4
strategy("ma 20 high-low",overlay=true)
//compute the indicators
smaH = sma(high, 20)
smaL = sma(low, 20)
//plot the indicators
plot(smaH,title="smaHigh", color=color.green, linewidth=2)
plot(smaL,title="smaLow", color=color.red, linewidth=2)
//trading logic
enterlong = crossover(close,smaH) //positive ema crossover
exitlong = crossunder(close,0.99*smaH) //exiting long
entershort = crossunder(close,smaL) //negative EMA Crossover
exitshort = crossover(close,1.01*smaH) //exiting shorts
notintrade = strategy.position_size<=0
bgcolor(notintrade ? color.red:color.green)
//execution logic
start = timestamp(2015,6,1,0,0)
//end = timestamp(2022,6,1,0,0)
if time >= start
strategy.entry( "long", strategy.long,1, when = enterlong)
strategy.entry( "short", strategy.short,1, when = entershort)
strategy.close("long", when = exitlong)
strategy.close("short", when = exitshort)
//if time >= end
// strategy.close_all()