Berdasarkan strategi terobosan komposit


Tarikh penciptaan: 2024-02-29 14:07:54 Akhirnya diubah suai: 2024-02-29 14:07:54
Salin: 0 Bilangan klik: 546
1
fokus pada
1617
Pengikut

Berdasarkan strategi terobosan komposit

Gambaran keseluruhan

Strategi ini menetapkan syarat double breakout dengan mengira harga tertinggi dan terendah pada garis N-root K terkini, digabungkan dengan penunjuk purata bergerak, untuk mencapai strategi perdagangan harga rendah dan harga tinggi.

Prinsip Strategi

Strategi ini berdasarkan kepada prinsip-prinsip berikut:

  1. Mengira harga minimum 7 baris K terkini minLow untuk menentukan syarat beli pecah
  2. Hitung harga tertinggi maxHigh untuk 7 baris K terkini untuk menentukan keadaan jual beli terobosan
  3. Pengiraan purata bergerak mudah mma dengan panjang 200, digabungkan dengan penunjuk mma untuk menentukan arah trend
  4. Syarat pembelian: harga penutupan hampir menembusi minLow, dan lebih tinggi daripada mma
  5. Syarat jual: harga penutupan hampir mencapai maxHigh atau lebih tinggi daripada maxHigh

Mengira apakah pasaran berada dalam keadaan oversold atau overbought dengan mengira nilai teratas N-root K yang paling dekat. Menentukan arah trend, menetapkan syarat ganda, dan mencapai strategi perdagangan terobosan dengan harga rendah dan tinggi.

Analisis kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Tetapan syarat berganda menjadikan isyarat perdagangan strategi lebih dipercayai
  2. Menggunakan K-Line Extreme untuk menilai keadaan overbought dan oversold, anda boleh merebut peluang untuk berbalik
  3. Menggunakan purata bergerak untuk menentukan arah trend dan mengelakkan operasi berlawanan arah
  4. Ini adalah satu-satunya cara untuk mendapatkan wang tunai yang lebih tinggi daripada yang lain.
  5. Logik strategi ringkas, jelas, mudah difahami dan dilaksanakan

Dengan pengesahan syarat ganda, anda dapat meningkatkan kualiti isyarat strategi, dan mempunyai ruang untuk mengoptimumkan parameter yang sesuai dengan keadaan pasaran yang berbeza.

Analisis risiko

Strategi ini mempunyai beberapa risiko:

  1. Syarat ganda mengehadkan frekuensi isyarat, mungkin kehilangan sebahagian peluang dagangan
  2. Pengaturan kitaran yang salah dalam pengiraan nilai teratas K-baris, yang mungkin tidak dapat menentukan keadaan overbought dengan tepat
  3. Pengaturan parameter purata bergerak yang tidak betul, mungkin salah arah trend
  4. Perlu mengoptimumkan beberapa parameter pada masa yang sama, parameter yang lebih sukar untuk dioptimumkan

Risiko ini boleh dikurangkan dengan cara seperti menyesuaikan kitaran pengiraan, mengoptimumkan kombinasi parameter. Selain itu, pengoptimuman boleh dipertimbangkan dengan gabungan indikator lain.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dengan cara berikut:

  1. Mengoptimumkan kitaran pengiraan paras K untuk mencari parameter kitaran yang paling sesuai untuk menilai overbought dan oversold
  2. Uji Kesan Purata Bergerak Berbeza Panjang
  3. Menambah gabungan penunjuk lain, seperti saluran BOLL, penunjuk KD dan sebagainya
  4. Meningkatkan strategi penutupan kerugian dan mengawal penutupan kerugian tunggal
  5. Mengoptimumkan keadaan masuk dan keluar, meningkatkan kualiti isyarat

Dengan optimasi parameter, optimasi penunjuk, optimasi kawalan angin dan sebagainya, faktor keuntungan strategi dapat ditingkatkan dengan ketara.

ringkaskan

Strategi ini secara keseluruhan adalah strategi penembusan yang sangat praktikal. Mengira K-garis maksimum untuk menentukan keadaan overbought dan oversold, purata bergerak untuk menentukan arah trend, dua syarat menetapkan isyarat penyaringan yang salah, untuk mencapai strategi jual beli rendah yang berkualiti tinggi. Dengan mengoptimumkan kitaran pengiraan, menambah petunjuk lain dan sebagainya, anda dapat meningkatkan lagi kesan strategi.

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

//@version=4
strategy("Larry Connors por RON", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

value1 = input(7, title="Quantity of day low")
value2 = input(7, title="Quantity of day high")
entry = lowest(close[1], value1)
exit = highest(close[1], value2)

lengthMMA = input(200, title="Length of SMA", minval=1)
mma = sma(close, lengthMMA)

// Calcular el mínimo de los precios bajos de las últimas 'value1' velas
minLow = lowest(low, value1)

// Calcular el máximo de los precios altos de las últimas 'value2' velas
maxHigh = highest(high, value2)

// Test Period
testStartYear = input(2009, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, 0, 0)

testStopYear = input(2020, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)

testPeriod() => true

if testPeriod()
    // Condiciones de entrada
    conditionMet = (close > mma) and (close < entry) and (low == minLow)
    strategy.entry("Buy", strategy.long, when=conditionMet)
    
    if conditionMet
        label.new(bar_index, entry, text="↑", style=label.style_arrowup, color=color.green, size=size.small, yloc=yloc.belowbar)
    
    // Condiciones de salida
    conditionExit = close > exit or close > maxHigh
    strategy.close("Buy", when=conditionExit)