Strategi Stokastik Penunjuk Purata Pergerakan Berganda


Tarikh penciptaan: 2024-01-29 11:54:10 Akhirnya diubah suai: 2024-01-29 11:54:10
Salin: 0 Bilangan klik: 608
1
fokus pada
1617
Pengikut

Strategi Stokastik Penunjuk Purata Pergerakan Berganda

Gambaran keseluruhan

Strategi acak penunjuk dua garis rata adalah strategi yang cuba menggunakan gabungan penunjuk rata dan penunjuk rawak untuk mencari peluang perdagangan. Ia akan menghasilkan isyarat perdagangan ketika melintasi SMA perlahan pada EMA cepat, sambil menggunakan nilai K penunjuk rawak untuk menentukan sama ada oversold atau oversold untuk menghilangkan sebahagian isyarat.

Prinsip Strategi

Strategi ini berdasarkan kepada dua petunjuk teknikal:

  1. Garis purata: mengira garis purata tiga parameter yang berbeza EMA pantas, SMA perlahan, VWMA perlahan, menghasilkan isyarat perdagangan apabila EMA pantas melintasi atau melintasi SMA perlahan.

  2. Indikator rawak: mengira nilai% K, apabila ia melebihi nilai terhad yang ditetapkan untuk kawasan overbought atau oversold, menganggap bahawa pasaran mungkin akan berbalik, dan boleh membuang sebahagian daripada isyarat perdagangan rata-rata.

Secara khusus, logik isyarat strategi adalah:

  1. Apabila EMA pantas melintasi SMA perlahan, dan nilai% K berada di bawah paras paras paras oversold, buat lebih banyak; apabila EMA pantas melintasi SMA perlahan di bawah EMA, dan nilai% K berada di atas paras paras paras paras paras oversold, buat kosong.

  2. Untuk kedudukan berganda yang dibuka, jika nilai% K kembali ke kawasan oversold, atau harga jatuh di bawah garis berhenti, maka ia akan ditutup. Untuk kedudukan kosong yang dibuka, jika nilai% K kembali ke kawasan overbuy, atau harga jatuh di atas garis berhenti, maka ia akan ditutup.

Dengan menggabungkan penunjuk garis rata dan penunjuk rawak, strategi ini cuba menghantar isyarat masuk di titik isyarat garis rata dengan kebarangkalian tinggi, sambil memanfaatkan peluang penapisan bahagian penunjuk rawak yang salah masuk.

Analisis kelebihan

Strategi ini mempunyai kelebihan utama:

  1. Gabungan pelbagai petunjuk teknikal, penilaian menyeluruh, lebih menyeluruh daripada satu petunjuk tunggal.
  2. Penggunaan penapis isyarat penunjuk rawak dapat mengelakkan kesilapan.
  3. Garis purata menggunakan pelbagai set parameter campuran, penilaian lebih tepat secara menyeluruh.
  4. Pendahuluan terbina dalam untuk mengawal kerugian tunggal.

Analisis risiko

Strategi ini mempunyai beberapa risiko:

  1. Penunjuk garis rata-rata mudah menghasilkan lebih banyak isyarat yang tidak pasti, kebarangkalian kesalahan yang lebih besar, dan keupayaan menghentikan kerugian yang terhad.
  2. Penunjuk rawak itu sendiri boleh menghasilkan isyarat yang salah.
  3. Tetapan parameter (seperti saiz kawasan overbought dan oversold, kitaran garis purata dan sebagainya) mungkin memerlukan pengoptimuman, dan tetapan yang tidak betul akan mempengaruhi prestasi strategi.
  4. Ini adalah strategi teknikal semata-mata, kurang perhatian kepada faktor asas.

Kaedah yang sesuai:

  1. Mengoptimumkan parameter, mencari kombinasi parameter penunjuk yang terbaik.
  2. Mengurangkan saiz kedudukan dengan sewajarnya dan membina gudang secara beratur.
  3. Ia juga boleh digunakan untuk menjimatkan masa dan wang.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Optimumkan ujian parameter garis purata untuk mencari kombinasi parameter yang optimum.
  2. Uji parameter penunjuk rawak seperti saiz kawasan overbought dan oversold untuk mencari parameter optimum.
  3. Cuba tambahkan petunjuk lain, seperti VOLUME untuk meningkatkan penilaian atau indikator kadar turun naik untuk mengukur risiko, kaya Logik Entri.
  4. Menambah kaedah hentikan kerugian, seperti menjejaki hentikan kerugian, dan sebagainya untuk mengawal risiko.
  5. Mengoptimumkan pengurusan dana, seperti menyesuaikan kedudukan mengikut dinamik ATR.
  6. Mengelakkan peristiwa berisiko besar dengan menggunakan VIX dan lain-lain.

ringkaskan

Strategi acak penunjuk dua garis rata-rata merancang strategi pengesanan trend yang lebih mantap melalui gabungan penunjuk rata-rata dan penunjuk acak. Tetapi ada juga ruang untuk pengoptimuman, seperti pilihan parameter, cara menghentikan kerugian, dan sebagainya. Jika lebih banyak penghakiman dan pengoptimuman penunjuk diperkenalkan, strategi ini dijangka memperoleh keuntungan tambahan yang lebih stabil.

Kod sumber strategi
/*backtest
start: 2023-01-22 00:00:00
end: 2024-01-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("TVIX MEAN REV V2 TREND", overlay=true)
length = input(16, minval=1)
OverBought = input(80)
OverSold = input(20)
TradeLong = input (true)
TradeShort = input (true)

OverBoughtClose = input(80)
OverSoldClose = input(20)

smoothK = 3
smoothD = 3
trail_points = input(50)

k = sma(stoch(close, high, low, length), smoothK)
d = sma(k, smoothD)
k2 = sma(stoch(close, high, low, length), smoothK)
d2 = sma(k, smoothD)


// === GENERAL INPUTS ===
// short Ema
maFastSource = input(defval=close, title="Fast EMA Source")
maFastLength = input(defval=1, title="Fast EMA Period", minval=1)
// long Sma
maSlowSource = input(defval=close, title="Slow SMA Source")
maSlowLength = input(defval=100, title="Slow SMA Period", minval=1)
// longer Sma
maSlowerSource = input(defval=close, title="Slower SMA Source")
maSlowerLength = input(defval=30, title="Slower SMA Period", minval=1)

//ATR Stop Loss Indicator by Keith Larson
atrDays = input(7, "ATR Days Lookback")
theAtr = atr(atrDays)
atrModifier = input(5.0, "ATR Modifier")
//plot(atr * atrModifier, title="ATR")

LstopLoss = close - (theAtr * atrModifier)
SstopLoss = close + (theAtr * atrModifier)



// === SERIES SETUP ===
/// a couple of ma's..
maFast = ema(maFastSource, maFastLength)
maSlow = sma(maSlowSource, maSlowLength)
maSlower = vwma(maSlowerSource, maSlowerLength)
rsi = rsi(maSlowerSource, maSlowerLength)

// === PLOTTING ===
fast = plot(maFast, title="Fast MA", color=color.red, linewidth=2, style=plot.style_line, transp=30)
slow = plot(maSlow, title="Slow MA", color=color.green, linewidth=2, style=plot.style_line, transp=30)
slower = plot(maSlower, title="Slower MA", color=color.teal, linewidth=2, style=plot.style_line, transp=30)


// === LOGIC === Basic - simply switches from long to short and vice-versa with each fast-slow MA cross
LongFilter = maFast > maSlow
ShortFilter = maSlow > maFast




BUY=crossover(k, d) and k < OverSold
SELL=crossunder(k, d) and k > OverBought

SELLCLOSE=crossover(k, d) and k < OverSoldClose
BUYCLOSE=crossunder(k, d) and k > OverBoughtClose

Open = open


if not na(k) and not na(d)
    if crossover(k, d) and k < OverSold and LongFilter and TradeLong
        strategy.entry("$", strategy.long, limit = Open, comment="Long")
    
    strategy.close("$",when = crossunder(k, d) and k > OverBoughtClose or open < LstopLoss  )
    ///strategy.close("$",when = open < LstopLoss  )
    
if not na(k) and not na(d)
    if crossunder(k, d) and k > OverBought and ShortFilter and TradeShort
        strategy.entry("$1", strategy.short, limit = Open, comment="S")
        
    strategy.close ("$1", when = crossover(k, d) and k < OverSoldClose or open > SstopLoss  )
    ///strategy.close ("$1", when = open < SstopLoss)