
Idea teras strategi ini adalah menggunakan purata bergerak cepat dan purata bergerak perlahan untuk menilai trend pasaran, untuk mencapai perdagangan berisiko rendah. Apabila pergerakan bergerak cepat di atas purata bergerak bergerak perlahan, menunjukkan bahawa harga mungkin memasuki trend naik, maka lakukan lebih banyak; apabila pergerakan bergerak cepat di bawah purata bergerak perlahan, menunjukkan bahawa harga mungkin memasuki trend menurun, maka lakukan kosong.
Strategi ini menggunakan purata bergerak indeks harga. Purata bergerak adalah satu indikator analisis trend yang meluruskan data harga untuk menilai pergerakan harga. Parameter purata bergerak cepat lebih kecil, lebih cepat bertindak balas terhadap perubahan harga; parameter purata bergerak perlahan lebih besar, dan tindak balas terhadap perubahan harga lebih perlahan.
Khususnya, strategi ini mentakrifkan dua purata bergerak indeks, dengan purata bergerak cepat berkala 21 dan purata bergerak perlahan berkala 55. Strategi ini membuat keputusan masuk dengan menilai dua purata bergerak. Apabila melintasi purata bergerak perlahan di atas purata bergerak cepat, lakukan lebih banyak; apabila melintasi purata bergerak perlahan di bawah purata bergerak cepat, kosongkan.
Selain itu, strategi ini juga menggunakan ATR, indikator kadar turun naik untuk menetapkan hentian dan hentian. ATR dapat menilai dengan berkesan tahap turun naik pasaran. Hentian ditetapkan sebagai harga 1.5 kali jarak dari ATR; Hentian ditetapkan sebagai harga hampir 1 kali jarak dari ATR.
Strategi ini mempunyai kelebihan berikut:
Strategi ini juga mempunyai risiko:
Untuk mengatasi risiko ini, kita boleh mengoptimumkan beberapa aspek:
Strategi ini boleh dioptimumkan dalam beberapa aspek:
Menggunakan kaedah pembelajaran mesin untuk mengoptimumkan parameter purata bergerak secara automatik, menjadikan strategi lebih mudah disesuaikan.
Menambah faktor asas sebagai syarat penapis, untuk mengelakkan berkurangan secara tidak sengaja apabila berita penting mengenai keuntungan dan kekurangan datang. Contohnya, keputusan kadar faedah Rizab Persekutuan AS, pengumuman data makro penting, dan sebagainya.
Menetapkan had turun naik yang tinggi dan rendah, dan menghentikan perdagangan apabila ATR terlalu besar atau terlalu kecil untuk mengelakkan kerugian dalam keadaan pasaran yang melampau.
Menggabungkan petunjuk asas saham, seperti kadar kenaikan pasaran PE, kesan peningkatan jumlah transaksi, dan lain-lain, menetapkan stop loss stop loss dinamik.
Meningkatkan mekanisme pengurusan kedudukan, apabila kadar keuntungan mencapai tahap tertentu, kedudukan dikurangkan secara beransur-ansur; apabila terdapat kerugian yang besar, trading ditangguhkan untuk sementara waktu dan sebagainya.
Strategi ini secara keseluruhannya beroperasi dengan cara yang jelas dan mudah, untuk menilai trend pasaran melalui persilangan purata bergerak ganda, merupakan strategi trend-following yang tipikal. Pada masa yang sama, strategi ini juga mengawal risiko dengan baik, menggunakan indikator ATR untuk menetapkan stop loss stop loss secara dinamik. Dengan pengoptimuman lanjut, strategi ini dapat meningkatkan kedua-dua kawalan penarikan balik dan pergerakan pergerakan, sehingga mendapat hasil pelaburan yang lebih stabil.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title="No-Nonsense Strategy Template [WM]", overlay = true)
price = close
//
// ATR stuff
//
atrLength = input(14, "ATR Length")
slMultiplier = input(1.5, "SL")
tpMultiplier = input(1, "TP1")
atr = atr(atrLength)
//
// Strategy under test. MA crossover
//
fastInput = input(21)
slowInput = input(55)
fast = ema(price, fastInput)
slow = ema(price, slowInput)
plot(fast, color = red)
plot(slow, color = blue)
goLong = crossover(fast, slow)
goShort = crossunder(fast, slow)
if (goLong)
sl = price - atr * slMultiplier
tp = price + atr * tpMultiplier
strategy.entry("Long", strategy.long)
strategy.exit("Long Exit", "Long", stop = sl, limit = tp)
if (goShort)
sl = price + atr * slMultiplier
tp = price - atr * tpMultiplier
strategy.entry("Short", strategy.short)
strategy.exit("Short Exit", "Short", stop = sl, limit = tp)