Strategi momentum mengikut arah aliran


Tarikh penciptaan: 2023-10-17 15:26:49 Akhirnya diubah suai: 2023-10-17 15:26:49
Salin: 0 Bilangan klik: 628
1
fokus pada
1617
Pengikut

Strategi momentum mengikut arah aliran

Gambaran keseluruhan

Strategi ini berdasarkan kepada penunjuk integrator yang disesuaikan, untuk mengesan arah trend harga, dengan penjumlahan jarak harga dengan purata bergerak.

Prinsip Strategi

Strategi ini menggunakan penunjuk tersuai untuk mengumpulkan jarak harga dari purata bergerak, seperti berikut:

  1. Harga dikira jarak k=close-sma ((close,200) kepada purata bergerak sederhana dengan panjang 200

  2. Mendefinisikan kitaran pengumpulan s=29, dengan penjumlahan nilai k dalam kitaran pengumpulan s terkini: sum = 0, for i = 0 to s, sum := sum + k[i]

  3. Isyarat melakukan lebih dihasilkan apabila sum>0 dan isyarat kosong dihasilkan apabila sum<0

  4. Apabila masuk ke dalam kedudukan berbilang, jika sum<0 maka ia adalah kosong; apabila masuk ke dalam kedudukan berdekatan, jika sum>0 maka ia adalah kosong

Strategi ini menilai arah trend harga secara keseluruhan dengan mengesan jumlah positif dan negatif dari jarak harga dengan purata bergerak, dan apabila nilai positif dan positif, menganggap harga berada dalam trend menaik, harus memegang banyak kepala; apabila nilai positif dan negatif, menganggap harga berada dalam trend menurun, harus memegang kepala kosong.

Kelebihan Strategik

  1. Menggunakan penunjuk integrator khusus untuk menentukan arah trend harga

  2. Menggunakan pemikiran integratif, pengumpulan jarak antara harga dan purata bergerak dapat meningkatkan ketepatan penilaian trend

  3. Logik yang agak mudah, mudah difahami dan mudah untuk dioptimumkan

  4. Anda boleh menyesuaikan parameter kitaran integrasi secara fleksibel untuk mengoptimumkan kepekaan integrator untuk menentukan trend

  5. Pelaporan prestasi baik, pendapatan stabil, boleh digunakan

Risiko Strategik

  1. Pengaturan kitaran integrasi yang tidak betul boleh menyebabkan integrator bertindak balas tidak sensitif, kehilangan titik peralihan trend

  2. Pengaturan panjang purata bergerak yang tidak betul boleh menyebabkan integrator salah menilai trend harga

  3. Kejadian besar yang mendadak menyebabkan harga berubah secara mendadak, yang menyebabkan pengukur memberi isyarat yang salah

  4. Pemilihan varieti perdagangan yang tidak tepat, seperti memilih varieti yang terlalu berfluktuasi, akan membuat pengumpul tidak berkesan

Penyelesaian untuk menghadapi risiko:

  1. Mengoptimumkan parameter kitaran integrasi untuk menjadikan integrator lebih sensitif terhadap perubahan trend

  2. Uji keserasian purata bergerak dengan panjang yang berbeza, pilih panjang yang berkesan untuk menentukan trend

  3. Menutup strategi sebelum peristiwa besar untuk mengelakkan isyarat salah yang disebabkan oleh perubahan harga yang besar

  4. Memilih varian perdagangan dengan kadar turun naik yang rendah menjadikan pengumpul lebih berkesan

Arah pengoptimuman strategi

  1. Anda boleh mempertimbangkan untuk menambah indikator lain seperti RSI dan lain-lain berdasarkan penambah untuk membuat penilaian komprehensif.

  2. Anda boleh mengkaji pelbagai jenis purata bergerak dan integrasi jarak harga

  3. Anda boleh cuba untuk mengoptimumkan parameter kitaran integrasi secara automatik supaya ia dapat menyesuaikan diri dengan pelbagai jenis perdagangan

  4. Indikator jumlah dagangan boleh dimasukkan untuk mengelakkan integrator memberi isyarat yang salah apabila harga bergolak

  5. Parameter integrator boleh dioptimumkan secara automatik melalui kaedah pembelajaran mesin dan lain-lain untuk menjadikan strategi lebih kasar

ringkaskan

Strategi ini menggunakan integrator indikator tersuai untuk menentukan arah trend harga, menggunakan kaedah pengesanan trend yang berkesan. Logik strategi mudah dan jelas, prestasi pengukuran semula yang baik. Strategi ini boleh diperbaiki dengan cara menyesuaikan parameter integrator, menambah indikator tambahan, dan pengoptimuman automatik, untuk menjadikan strategi lebih stabil dan boleh dipercayai di lapangan.

Kod sumber strategi
/*backtest
start: 2023-10-09 00:00:00
end: 2023-10-16 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Indicator Integrator Strat",default_qty_type = strategy.percent_of_equity, default_qty_value = 100,currency="USD",initial_capital=100, overlay=true)

l = input(defval=170,title="Length for indicator")
s = input(title="Length of summation",defval=29)
a= sma(close,l)
r=roc(close,l)
k=close-a
sum = 0
for i = 0 to s
    sum := sum + k[i]
plot(a,color=yellow,linewidth=2,transp=0)
//bc =  iff( sum > 0, white, teal)
//plot(sum,color=bc, transp=20, linewidth=3,style=columns)
//plot(sma(sum,3),color=white)
//hline(0)

inpTakeProfit = input(defval = 0, title = "Take Profit", minval = 0)
inpStopLoss = input(defval = 0, title = "Stop Loss", minval = 0)
inpTrailStop = input(defval = 0, title = "Trailing Stop Loss", minval = 0)
inpTrailOffset = input(defval = 0, title = "Trailing Stop Loss Offset", minval = 0)
useTakeProfit = inpTakeProfit >= 1 ? inpTakeProfit : na
useStopLoss = inpStopLoss >= 1 ? inpStopLoss : na
useTrailStop = inpTrailStop >= 1 ? inpTrailStop : na
useTrailOffset = inpTrailOffset >= 1 ? inpTrailOffset : na


longCondition = sum>0
exitlong = sum<0

shortCondition = sum<0
exitshort = sum>0

strategy.entry(id = "Long", long=true, when = longCondition)
strategy.close(id = "Long", when = exitlong)
strategy.exit("Exit Long", from_entry = "Long", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset, when=exitlong)

strategy.entry(id = "Short", long=false, when = shortCondition)
strategy.close(id = "Short", when = exitshort)
strategy.exit("Exit Short", from_entry = "Short", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset, when=exitshort)