Strategi penunjuk purata bergerak


Tarikh penciptaan: 2024-02-26 11:10:23 Akhirnya diubah suai: 2024-02-26 11:10:23
Salin: 0 Bilangan klik: 516
1
fokus pada
1617
Pengikut

Strategi penunjuk purata bergerak

Gambaran keseluruhan

Strategi penunjuk purata bergerak adalah strategi perdagangan kuantitatif yang menilai trend pasaran berdasarkan purata bergerak dan melakukan kedudukan panjang atau pendek. Strategi ini menilai apakah pasaran berada dalam keadaan overbought atau oversold dengan mengira purata harga penutupan untuk tempoh tertentu untuk menangkap peluang untuk membalikkan harga.

Prinsip Strategi

Indikator utama strategi ini adalah purata bergerak indeks rawak (Stochastic Oscillator).

低点 = 最近N天的最低价中的最低值 
高点 = 最近N天的最高价中的最高值
K值 = (当前close - 低点)/(高点 - 低点)* 100

N adalah panjang. N adalah panjang. N adalah panjang. N adalah panjang.

Apabila nilai K lebih besar daripada BuyBand, yang menunjukkan harga saham mungkin lebih tinggi, akan berlaku penyesuaian; apabila nilai K lebih kecil daripada SellBand, yang menunjukkan harga saham mungkin lebih tinggi, akan berlaku rebound.

Mengikut peraturan ini, strategi ini akan menjual dan membuka kedudukan di kawasan yang terlalu banyak dibeli, dan membeli dan membuka kedudukan di kawasan yang terlalu banyak dijual. Keadaan yang lemah adalah garis penunjuk kembali ke kawasan tengah (((SellBand, BuyBand))

Analisis kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Menggunakan penunjuk purata bergerak untuk menilai trend pasaran, pengukuran semula lebih baik, mudah membentuk isyarat perdagangan
  2. Dengan menyesuaikan parameter, anda boleh menyesuaikan diri dengan pelbagai kitaran dan varieti
  3. Strategi yang mudah difahami dan dioptimumkan

Analisis risiko

Strategi ini mempunyai beberapa risiko:

  1. Rata-rata bergerak mudah mengalami sentuhan yang salah, yang boleh menyebabkan isyarat overbought dan oversold terganggu.
  2. Tetapan parameter yang tidak betul boleh menyebabkan perdagangan yang kerap atau isyarat yang tidak jelas
  3. Hanya satu indikator, ruang untuk mengoptimumkan adalah terhad

Risiko ini boleh dikurangkan dengan mengoptimumkan parameter penunjuk dengan betul, atau menambah syarat penapisan.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Menambah penapis indikator seperti jumlah atau ATR untuk memastikan isyarat dagangan lebih dipercayai
  2. Menambahkan indikator Stoch dengan pelbagai kitaran untuk menghasilkan isyarat operasi gabungan
  3. Menambah penunjuk penilaian tambahan, seperti MACD, KDJ dan sebagainya, untuk mencapai pengumpulan pelbagai penunjuk
  4. Mengoptimumkan pelbagai jenis, kitaran, dan parameter perdagangan untuk mencari konfigurasi terbaik

ringkaskan

Strategi penunjuk rata-rata bergerak adalah salah satu strategi permulaan yang sesuai untuk perdagangan kuantitatif. Strategi ini mempunyai satu faktor pertimbangan, ruang pengoptimuman yang terhad, dan hanya sesuai untuk operasi jangka pendek.

Kod sumber strategi
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 25/09/2017
// Simple Overbought/Oversold indicator
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Overbought/Oversold", shorttitle="OB/OS")
Length = input(10, minval=1)
BuyBand = input(0.92, step = 0.01)
SellBand = input(0.5, step = 0.01)
reverse = input(false, title="Trade reverse")
hline(BuyBand, color=green, linestyle=line)
hline(SellBand, color=red, linestyle=line)
xOBOS = stoch(close, high, low, Length)
nRes = iff(close > close[Length], xOBOS / 100, (100 - xOBOS) / 100)
pos = iff(nRes < SellBand, -1,
	   iff(nRes > BuyBand, 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="OB/OS")