Strategi terobosan ayunan purata bergerak berganda


Tarikh penciptaan: 2024-01-08 14:43:48 Akhirnya diubah suai: 2024-01-08 15:51:13
Salin: 0 Bilangan klik: 570
1
fokus pada
1617
Pengikut

Strategi terobosan ayunan purata bergerak berganda

Gambaran keseluruhan

Strategi penembusan pergerakan garis purata berganda adalah strategi perdagangan garis pendek yang menggunakan sistem garis purata berganda. Strategi ini membina isyarat perdagangan berdasarkan saluran harga dan dua jalur Brin, ditambah dengan indikator RSI yang cepat untuk menilai overbought dan oversold, untuk menghasilkan isyarat masuk dan keluar. Strategi ini bertujuan untuk menangkap penembusan dalam trend harga garis pendek dan menghasilkan keuntungan.

Prinsip Strategi

Strategi pecah gempa dua hala menggunakan saluran harga dengan panjang 20 kitaran dan jalur Brin sebagai penunjuk perdagangan utama. Saluran harga terdiri daripada garis rata harga tertinggi dan terendah, yang mewakili kawasan gempa harga semasa. Jalur Brin terdiri daripada sumbu tengah saluran harga dan perbezaan piawai, dan kawasan berjenis pita menggambarkan lebih secara intuitif kawasan pergerakan harga. Apabila harga mendekati saluran bawah, ini menunjukkan bahawa harga mungkin melanggar kawasan gempa, membentuk trend baru.

Khususnya, apabila RSI cepat di bawah 5 dianggap sebagai kawasan jual lebihan, apabila RSI cepat melebihi 99 dianggap sebagai kawasan beli lebihan. Selain itu, faktor-faktor seperti arah entiti K, inovasi harga tinggi (baru rendah) dan lain-lain harus digabungkan untuk mengelakkan pecah palsu kepala.

Kelebihan Strategik

Kelebihan terbesar strategi penembusan rantaian rantaian rantaian adalah menangkap titik-titik perubahan trend harga rantaian tengah dan pendek, menghasilkan keuntungan. Berbanding dengan rantaian rantaian tunggal dan saluran, rantaian rantaian ganda lebih dapat mencerminkan pergerakan harga dan kapasiti secara intuitif. Berbanding dengan indikator kitaran yang lebih lama, seperti rantaian 20 dan 60 hari, ia bertindak balas dengan lebih cepat terhadap perubahan harga dan lebih berjaya menangkap perubahan.

Risiko Strategik

Strategi penembusan goyangan garis rata-rata berganda mempunyai risiko tertentu. Pertama, perdagangan garis pendek dan tengah mempunyai risiko berhenti yang lebih tinggi. Dalam keadaan trend yang kuat, penunjuk garis pendek dan tengah mungkin mengalami beberapa penembusan palsu kepala yang menyebabkan hentian. Kedua, kesan RSI cepat terhadap penilaian overbought dan oversold akan dipengaruhi oleh emosi pasaran.

Kaedah pencegahan adalah dengan betul menyesuaikan amplitudo hentikan kerugian, melonggarkan titik hentikan kerugian di pasaran yang meningkat, pengetatan dalam pasaran yang menurun. Di samping itu, mempertimbangkan lebih banyak petunjuk tambahan, mengelakkan hanya bergantung pada satu atau dua petunjuk. Apabila kesimpulan berkurang, mengurangkan risiko mengelakkan kedudukan dengan sewajarnya.

Arah pengoptimuman strategi

Terdapat ruang untuk pengoptimuman lebih lanjut dalam strategi penembusan goyangan dua rata-rata: pertama, pengoptimuman parameter: anda boleh menguji lebih banyak parameter kitaran untuk mencari kombinasi parameter yang optimum; kedua, pengoptimuman model: anda boleh memperkenalkan latihan model pembelajaran mesin untuk menilai lebih tepat kawasan jual beli; ketiga, pengoptimuman jangka masa: anda boleh menguji dalam pelbagai jangka masa, seperti garis matahari dan 60 minit, untuk menentukan senario yang paling sesuai; keempat, pengoptimuman syarat: anda boleh menambahkan lebih banyak indikator harga untuk menilai isyarat penapis, seperti penguatan jumlah dagangan, indeks trend DMI, dan sebagainya.

ringkaskan

Strategi penembusan runcit runcit ganda adalah strategi pengesanan trend yang berkesan. Strategi ini mempunyai kadar kejayaan yang tinggi, tindak balas yang cepat, dan dapat menghasilkan keuntungan yang berkesan.

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


//@version=2
strategy("Noro's Bands Strategy v1.4", shorttitle = "NoroBands str 1.4", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
len = input(20, defval = 20, minval = 2, maxval = 200, title = "Period")
color = input(true, "Use ColorBar")
usecb = input(true, "Use CryptoBottom")
usersi = input(true, "Use RSI")
usemm = input(true, "Use min/max")
needbb = input(false, defval = false, title = "Show Bands")
needbg = input(false, defval = false, title = "Show Background")
needlo = input(false, defval = false, title = "Show Locomotive")
src = close

//Fast RSI
fastup = rma(max(change(src), 0), 2)
fastdown = rma(-min(change(src), 0), 2)
fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))

//CryptoBottom
mac = sma(close, 10)
lencb = abs(close - mac)
sma = sma(lencb, 100)
max = max(open, close)
min = min(open, close)

//PriceChannel
lasthigh = highest(src, len)
lastlow = lowest(src, len)
center = (lasthigh + lastlow) / 2

//dist
dist = abs(src - center)
distsma = sma(dist, len)
hd = center + distsma
ld = center - distsma
hd2 = center + distsma * 2
ld2 = center - distsma * 2

//Trend
trend = close < ld and high < hd ? -1 : close > hd and low > ld ? 1 : trend[1]

//Lines
colo = needbb == false ? na : black
plot(hd2, color = colo, linewidth = 1, transp = 0, title = "High band 2")
plot(hd, color = colo, linewidth = 1, transp = 0, title = "High band")
plot(center, color = colo, linewidth = 1, transp = 0, title = "center")
plot(ld, color = colo, linewidth = 1, transp = 0, title = "Low band")
plot(ld2, color = colo, linewidth = 1, transp = 0, title = "Low band 2")

//Background
col = needbg == false ? na : trend == 1 ? lime : red
bgcolor(col, transp = 80)

//Signals
up = trend == 1 and ((close < open or color == false) or close < hd) and (min < min[1] or usemm == false) ? 1 : 0
dn = trend == -1 and ((close > open or color == false) or close > ld) and (max > max[1] or usemm == false) ? 1 : 0 
up2 = close < open and lencb > sma * 3 and min < min[1] and fastrsi < 10 ? 1 : 0 //CryptoBottom
//dn2 = close > open and len > sma * 3 and max > max[1] and fastrsi > 90 ? 1 : 0 //CryptoBottom
up3 = fastrsi < 5 ? 1 : 0
//dn3 = fastrsi > 99 ? 1 : 0

//Locomotive
uploco = trend == 1 and close < open and min < min[1] and close < center ? 1 : 0
plotarrow(needlo == true and uploco == 1 ? 1 : 0, colorup = black, colordown = black, transp = 0)

longCondition = up == 1 or (up2 == 1 and usecb == true) or (up3 == 1 and usersi == true)
if (longCondition)
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)

shortCondition = dn == 1
if (shortCondition)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)