Strategi ini dinamakan
Strategi ini mula-mula mengira garis regresi linear jangka pendek dan jangka panjang. Regresi linear jangka pendek mempunyai tempoh 100 hari, dan jangka panjang mempunyai tempoh 150 hari. Apabila garis regresi jangka pendek melintasi di atas garis jangka panjang, isyarat beli dihasilkan. Apabila garis jangka pendek melintasi di bawah garis jangka panjang, isyarat jual dihasilkan.
Garis regresi linear boleh mencerminkan arah trend jangka panjang harga. Garis jangka pendek dengan tempoh yang lebih kecil lebih sensitif terhadap perubahan harga dan dapat menangkap masa pembalikan jangka pendek. Garis jangka panjang dengan tempoh yang lebih besar mewakili trend keseimbangan jangka panjang harga. Apabila kedua-dua garis bersilang, ia menunjukkan trend jangka pendek dan jangka panjang berbalik, dengan itu isyarat perdagangan dapat dihasilkan.
Kelebihan strategi ini adalah menggunakan pendekatan analisis teknikal klasik crossover purata bergerak, dengan penambahan analisis regresi linear, yang dapat mengenal pasti pembalikan harga di kedua-dua dimensi masa jangka panjang dan jangka pendek.
Untuk menapis beberapa isyarat palsu, strategi ini menggabungkan had syarat masa, menjalankan dagangan hanya dalam julat tarikh yang ditentukan. Ini dapat mengurangkan dagangan yang tidak berkesan ke tahap tertentu. Tetapi tetapan tetingkap masa adalah subjektif dan memerlukan pengoptimuman backtesting.
Kesimpulannya, strategi crossover purata bergerak berganda menggabungkan pelbagai teknik analisis dan dapat menangkap peluang perdagangan yang kompleks. Tetapi pengurusan risiko adalah penting untuk mencegah overtrading. Mengoptimumkan lagi strategi dengan memasukkan penunjuk teknikal lain dapat meningkatkan ketahanan.
/*backtest start: 2022-09-12 00:00:00 end: 2023-09-12 00:00:00 period: 2d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy(title="Linear Regression Curve CrossOver Strategy", shorttitle="LRC Crossover", overlay=true) src = close len1 = input(defval=100, minval=1, title="Length") offset = 0 outfast = linreg(src, len1, offset) plot(outfast,color=blue) len2 = input(defval=150, minval=1, title="Length") outslow = linreg(src, len2, offset) plot(outslow,color=red) yearfrom = input(2018) yearuntil =input(2019) monthfrom =input(1) monthuntil =input(12) dayfrom=input(1) dayuntil=input(31) if ( crossover(outfast,outslow)) strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY") else strategy.cancel(id="BUY") if ( crossover(outslow,outfast) ) strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND", comment="SELL") else strategy.cancel(id="SELL")