Strategi dagangan berdasarkan persilangan Stochastic


Tarikh penciptaan: 2023-09-20 17:05:17 Akhirnya diubah suai: 2023-09-20 17:05:17
Salin: 0 Bilangan klik: 640
1
fokus pada
1617
Pengikut

Gambaran keseluruhan

Strategi ini menggunakan garis K dan garis D yang bersilang dengan penunjuk rawak untuk menghasilkan isyarat perdagangan dan merupakan strategi perdagangan penunjuk rawak yang tipikal.

Prinsip Strategi

  1. Hitung garis K dan garis D dalam tempoh tertentu.

  2. Apabila garis K menembusi garis D dari arah bawah, ia menghasilkan isyarat beli.

  3. Apabila garis K menembusi garis D dari atas ke bawah, ia menghasilkan isyarat menjual.

  4. Tempoh jangka masa yang boleh ditetapkan untuk menguji keberkesanan strategi.

  5. Perdagangan menggunakan penanda silang rawak, peraturan strategi mudah dan jelas.

Analisis kelebihan

  1. Indeks rawak lebih sensitif terhadap overbought dan oversold.

  2. Garis K dan Garis D mudah membentuk isyarat dagangan.

  3. Kaedah ini boleh disahkan dengan ujian semula.

  4. Indeks rawak mudah dikira.

  5. Kodnya ringkas dan mudah untuk digunakan semula.

Analisis risiko

  1. Penempatan penunjuk secara rawak boleh menyebabkan isyarat palsu.

  2. Tiada set stop loss.

  3. Tidak dapat membezakan antara trend dan kesimpulan.

  4. Data yang dipaparkan menunjukkan ketidaksesuaian yang ketara.

  5. Implementasi secara langsung mungkin berbeza.

Arah pengoptimuman

  1. Uji pelbagai parameter untuk mencari parameter yang optimum.

  2. Menambah penapisan kepada indikator trend.

  3. Menubuhkan mekanisme pencegahan kerosakan

  4. Masukkan faktor lain untuk mengesahkan isyarat.

  5. Data pengesanan semula diproses untuk menghapuskan kecacatan.

  6. Simulasi cakera untuk mengoptimumkan konfigurasi parameter.

ringkaskan

Strategi ini menggunakan penyambungan penunjuk rawak yang mudah untuk berdagang, mudah dilaksanakan, tetapi memerlukan pengoptimuman lebih lanjut untuk meningkatkan kestabilan. Dengan penyesuaian parameter, kawalan risiko, dan sebagainya, ia boleh dibina sebagai strategi perdagangan kuantitatif yang boleh dipercayai.

Kod sumber strategi
/*backtest
start: 2023-08-20 00:00:00
end: 2023-09-19 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © utanico

//@version=4
strategy(title="Stochastic", overlay=true, shorttitle="Stoch")
periodK = input(35, title="K", minval=1)
periodD = input(21, title="D", minval=1)
smoothK = input(21, title="Smooth", minval=1)
startYear = input(type=input.integer, title = "開始年", defval = 2020)
startMonth = input(type=input.integer, title = "開始月", defval = 1)
startDay = input(type=input.integer, title = "開始日", defval = 1)
endYear = input(type=input.integer, title = "終了年", defval = 2030)
endMonth = input(type=input.integer, title = "終了月", defval = 12)
endDay = input(type=input.integer, title = "終了日", defval = 31)

//開始日時
test_start = timestamp(startYear, startMonth, startDay, 00, 00)
//終了日時
test_end   = timestamp(endYear, endMonth, endDay, 00, 00)
//テスト期間の指定
is_test = true

k = sma(stoch(close, high, low, periodK), smoothK)
d = sma(k, periodD)

if (is_test)
    if (k > d)
        strategy.entry("Stoch_LE", strategy.long, comment="Stoch_LE")
    //if (strategy.opentrades > 0 and k < d)
        //strategy.close("Stoch_LE",comment="CloseLONG")
    if (k < d)
        strategy.entry("Stoch_SE", strategy.short, comment="Stoch_SE")
    //if (strategy.opentrades < 0 and k > d)
        //strategy.close("Stoch_SE",comment="CloseShort")