Mengoptimumkan strategi berdasarkan pengayun momentum


Tarikh penciptaan: 2024-02-20 13:54:49 Akhirnya diubah suai: 2024-02-20 13:54:49
Salin: 0 Bilangan klik: 612
1
fokus pada
1617
Pengikut

Mengoptimumkan strategi berdasarkan pengayun momentum

Gambaran keseluruhan

Strategi ini adalah strategi yang mengoptimumkan penambahbaikan berdasarkan kadar perubahan ROC. Berbanding dengan strategi ROC asal, strategi ini melakukan pengoptimuman berikut:

  1. Masukkan nilai ROC sejarah maksimum, dinamika ROC semasa berbanding dengan ROC sejarah maksimum, untuk mendapatkan nilai relatif momentum.
  2. Pengurusan yang lancar terhadap nilai relatif tenaga, menghasilkan isyarat.
  3. Tambahan nilai terendah untuk isyarat beli dan jual.

Melalui kaedah pengoptimuman ini, banyak isyarat yang tidak berkesan boleh disaring dan menjadikan strategi lebih stabil dan boleh dipercayai.

Prinsip Strategi

Indikator utama strategi ini ialah kadar perubahan ((ROC)). ROC mengukur kadar perubahan harga saham dalam satu tempoh tertentu. Strategi ini mula mengira nilai ROC sepanjang 9 tempoh. Ia kemudian mencatat nilai maksimum ROC ini dalam 200 tempoh terakhir dan mengira peratusan ROC semasa terhadap ROC sejarah terbesar, untuk mendapatkan kekuatan relatif momentum.

Kekuatan relatif ini diproses dengan halus melalui SMA panjang 10, menyaring turun naik jangka pendek, dan mendapat kurva halus. Apabila kurva halus meningkat selama 3 hari berturut-turut, dan nilai di bawah -80%, menganggap penurunan harga saham mula melambatkan, menghasilkan tanda-tanda bawah, jadi lebih banyak; Apabila kurva halus menurun selama 3 hari berturut-turut, dan nilai di atas 80%, menganggap kenaikan harga saham mula melambatkan, menghasilkan tanda-tanda atas, dan oleh itu merata.

Analisis kelebihan

Strategi ini mempunyai kelebihan utama berbanding strategi ROC asal:

  1. Memperkenalkan perbandingan nilai maksimum ROC sejarah, dapat mengukur ketinggian relatif indikator momentum dengan baik, menapis isyarat tidak sah yang nilai mutlaknya tidak tinggi.
  2. Pengendalian bunyi penapisan yang lancar menjadikan isyarat lebih stabil dan boleh dipercayai.
  3. Menetapkan nilai jual beli untuk mengurangkan transaksi yang tidak sah.

Secara keseluruhannya, strategi ini memberikan pengolahan kedua yang berkesan kepada indikator ROC, menjadikannya lebih sesuai untuk perdagangan dalam talian.

Analisis risiko

Strategi ini mempunyai risiko utama:

  1. Penunjuk ROC tidak dapat menentukan trend pasaran, terdapat beberapa penipuan. Strategi ini mungkin gagal jika mengalami tempoh peralihan lembu dan lembu.
  2. Had jual beli tidak sempurna, had yang terlalu tinggi atau terlalu rendah akan mempengaruhi prestasi strategi.
  3. Pengaturan parameter SMA yang tidak betul juga boleh menjejaskan kesan strategi.

Untuk mengurangkan risiko di atas, anda boleh mempertimbangkan untuk menggabungkan indikator trend untuk menilai trend besar; menyesuaikan parameter nilai rendah, menguji parameter optimum; mengoptimumkan parameter kitaran SMA.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dengan:

  1. Gabungan dengan penunjuk trend, menilai pergerakan keseluruhan pasaran, untuk mengelakkan kegagalan semasa peralihan lembu dan lembu.
  2. Uji pelbagai parameter panjang ROC dan parameter harga terhad untuk mencari kombinasi parameter yang optimum.
  3. Mengoptimumkan parameter perapisan SMA untuk mencari parameter terbaik.
  4. Menambah mekanisme penangguhan kerugian

ringkaskan

Strategi ini adalah strategi pengoptimuman untuk pembangunan sekunder berdasarkan indikator ROC. Ia memperkenalkan kaedah seperti perbandingan nilai maksimum sejarah, penyelarasan SMA dan nilai terhad jual beli, yang dapat menapis isyarat tidak berkesan, menjadikan strategi lebih stabil. Kelebihan utamanya adalah kualiti isyarat yang tinggi, sesuai untuk pasaran.

Kod sumber strategi
/*backtest
start: 2024-02-12 00:00:00
end: 2024-02-19 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title="Rate Of Change Mod Strategy", shorttitle="ROC", format=format.price, precision=2)
//length = input.int(9, minval=1)
//source = input(close, "Source")
//roc = 100 * (source - source[length])/source[length]
//plot(roc, color=#2962FF, title="ROC")
//hline(0, color=#787B86, title="Zero Line")

length = input.int(9, minval=1, title="Length")
maxHistory = input(200, title="Max Historical Period for ROC")
lenghtSmooth = input.int(10, minval=1, title="Length Smoothed ROC")
lenghtBUY = input.int(-80, title="Buy Threshold")
lenghtSELL = input.int(80, title="Buy Threshold")

source = close
roc = 100 * (source - source[length]) / source[length]

// Calculate the maximum ROC value in the historical period
maxRoc = ta.highest(roc, maxHistory)

// Calculate current ROC as a percentage of the maximum historical ROC
rocPercentage = (roc / maxRoc) * 100


rocPercentageS = ta.sma(rocPercentage, lenghtSmooth)
if ta.rising(rocPercentageS, 3) and rocPercentageS < lenghtBUY
    strategy.entry("Buy", strategy.long)

if ta.falling(rocPercentageS, 3) and rocPercentageS > lenghtSELL
    strategy.close("Buy")


plot(rocPercentage, color=color.new(color.blue, 0), title="Percentage ROC")
plot(rocPercentageS, color=color.new(#21f32c, 0), title="Percentage ROC")
hline(0, color=color.new(color.gray, 0), title="Zero Line")