Penulis:ChaoZhang, Tarikh: 2024-01-25 17:44:49
Tag:

img

Ringkasan

Logika Strategi

Langkah-langkah utama dalam mengira CMO adalah:

  1. Ambil SMA perubahan harga n hari sebagai momentum harga true (xSMA_mom)
  2. Mengira perubahan harga bersih dalam n hari (xMomLength)
  3. Ambil WMA hari-m dari perubahan harga bersih standard untuk mendapatkan CMO (xWMACMO)

Kelebihan strategi ini adalah menangkap pembalikan trend jangka menengah dalam harga.

Analisis Kelebihan

CMO standardkan perubahan harga dan memetakan mereka ke dalam julat -100 hingga 100 untuk penilaian yang lebih mudah terhadap sentimen orang ramai pasaran; magnitud mutlak mewakili kekuatan trend semasa.

Analisis Risiko

Risiko utama yang mungkin wujud dalam strategi ini adalah:

  1. Tetapan parameter CMO dan WMA yang tidak betul yang membawa kepada isyarat palsu yang berlebihan
  2. Ketidakupayaan untuk mengendalikan turun naik trend dengan berkesan, mengakibatkan kekerapan perdagangan yang tinggi dan kos seluncur
  3. Kegagalan untuk mengenal pasti trend jangka panjang yang benar, yang membawa kepada kerugian dalam kedudukan jangka panjang

Kaedah pengoptimuman yang sepadan:

  1. Sesuaikan parameter CMO dan WMA untuk mencari kombinasi yang optimum
  2. Menggabungkan penunjuk jangka panjang seperti MA 90 hari untuk mengelakkan peluang yang hilang dalam trend jangka panjang

Arahan pengoptimuman

  1. Pengoptimuman parameter CMO dan WMA melalui ujian kekuatan kasar
  2. Penapisan isyarat tambahan menggunakan jumlah, penunjuk kekuatan dan lain-lain untuk mengelakkan pecah palsu
  3. Mempertimbangkan corak Kegagalan Penembusan sebagai isyarat kemasukan apabila CMO dan WMA pertama kali memecahkan tahap utama tetapi dengan cepat jatuh kembali
  4. Menilai trend utama menggunakan penunjuk jangka panjang untuk mengelakkan perdagangan kontra-trend

Kesimpulan


/*backtest
start: 2023-12-25 00:00:00
end: 2024-01-24 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 18/10/2018
//    This indicator plots Chandre Momentum Oscillator and its WMA on the 
//    same chart. This indicator plots the absolute value of CMO.
//    The CMO is closely related to, yet unique from, other momentum oriented 
//    indicators such as Relative Strength Index, Stochastic, Rate-of-Change, 
//    etc. It is most closely related to Welles Wilder?s RSI, yet it differs 
//    in several ways:
//    - It uses data for both up days and down days in the numerator, thereby 
//        directly measuring momentum;
//    - The calculations are applied on unsmoothed data. Therefore, short-term 
//        extreme movements in price are not hidden. Once calculated, smoothing 
//        can be applied to the CMO, if desired;
//    - The scale is bounded between +100 and -100, thereby allowing you to clearly 
//        see changes in net momentum using the 0 level. The bounded scale also allows 
//        you to conveniently compare values across different securities.
////////////////////////////////////////////////////////////
strategy(title="CMO & WMA Backtest ver 2.0", shorttitle="CMO & WMA")
Length = input(9, minval=1)
LengthWMA = input(9, minval=1)
BuyZone = input(60, step = 0.01)
SellZone = input(-60, step = 0.01)
reverse = input(false, title="Trade reverse")
hline(BuyZone, color=green, linestyle=line)
hline(SellZone, color=red, linestyle=line)
hline(0, color=gray, linestyle=line)
xMom = abs(close - close[1])
xSMA_mom = sma(xMom, Length)
xMomLength = close - close[Length]
nRes = 100 * (xMomLength / (xSMA_mom * Length))
xWMACMO = wma(nRes, LengthWMA)
pos = 0.0
pos := iff(xWMACMO > BuyZone, 1,
	   iff(xWMACMO < SellZone, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
plot(nRes, color=blue, title="CMO")
plot(xWMACMO, color=red, title="WMA")

Lebih lanjut