3 10 Strategi Penandaan Kontur Pengayun


Tarikh penciptaan: 2024-02-18 16:17:26 Akhirnya diubah suai: 2024-02-18 16:17:26
Salin: 0 Bilangan klik: 399
1
fokus pada
1166
Pengikut

3 10 Strategi Penandaan Kontur Pengayun

Gambaran keseluruhan

3 10 Strategi penandaan kontur pendingin dengan mengira perbezaan antara purata bergerak sederhana hari ke-3 dan ke-10 sebagai penunjuk MACD, menggabungkan analisis jumlah transaksi untuk menilai kekuatan dan kelemahan pasaran, sehingga menghasilkan isyarat perdagangan. Strategi ini menggabungkan kawasan harga utama, ciri-ciri jumlah transaksi, dan perubahan MACD untuk mengesahkan peluang masuk dan keluar.

Prinsip Strategi

Penunjuk teras strategi ini adalah MACD, yang terdiri daripada purata bergerak cepat dan purata bergerak perlahan. Garis cepat adalah purata bergerak mudah 3 hari, dan garis perlahan adalah purata bergerak mudah 10 hari. Perbezaan antara mereka membentuk garis pilar MACD.

Selain itu, strategi ini menggabungkan hubungan antara jumlah pembelian dan jumlah penjualan untuk setiap garis K untuk menentukan kekuatan relatif pasaran. Kaedah khusus adalah: jumlah pembelian = jumlah penjualan x (harga penutupan-harga terendah) ÷ ((harga tertinggi-harga terendah); jumlah penjualan = jumlah penjualan x (harga tertinggi-harga penutupan) ÷ ((harga tertinggi-harga terendah). Jika jumlah pembelian secara ketara lebih besar daripada jumlah penjualan, ini menunjukkan bahawa garis K berakhir dengan pembelian yang lebih kuat, ini adalah isyarat membeli.

Dengan menggabungkan indikator MACD dan analisis kuantiti transaksi, strategi ini dapat menilai hubungan bekalan dan permintaan di pasaran dan arah pendirian. Pada masa yang sama, strategi ini juga akan mengesahkan sama ada harga berada di rantau penting, sama ada MACD berbalik secara berkesan, dan sama ada perbezaan kuantiti pembelian dan penjualan cukup besar, untuk menyaring beberapa bunyi operasi dorongan, memastikan kemungkinan tinggi dan masuk yang cekap.

Analisis kelebihan

  • Menggunakan Indeks MACD untuk Menentukan Arah Pergerakan Pasaran
  • Analisis Perbezaan Jumlah Jualan Menentukan Kuasa Padang Jualan
  • Penyaringan pelbagai syarat untuk memastikan operasi berkemungkinan tinggi
  • Menggunakan strategi stop-loss untuk mengawal risiko

Kelebihan terbesar strategi ini adalah penghakiman yang sepenuhnya menggabungkan hubungan bekalan dan permintaan pasaran. Garis tiang MACD dapat menilai kekuatan perdagangan dan arah trend pasaran dengan berkesan; analisis perbezaan kuantiti perdagangan dapat dengan jelas mengenal pasti kekuatan dominan dalam perdagangan.

Analisis risiko

  • Risiko kegagalan MACD. MACD mungkin menghasilkan isyarat palsu apabila pasaran bergolak atau dipadamkan.
  • Risiko kegagalan jumlah transaksi. Pasaran mungkin mempunyai fenomena menarik jumlah transaksi, yang mana ketepatan analisis jumlah transaksi akan berkurang.
  • Strategi ini mengandungi banyak parameter yang sukar untuk dioptimumkan dan tidak sesuai untuk pelabur yang kurang mampu menyesuaikan parameter.

Risiko di atas boleh dielakkan dengan kaedah berikut: menilai dengan tepat trend utama pasaran, mengelakkan menggunakan strategi ini dalam cakera goyah; perhatikan maklumat pasaran, mengenal pasti keadaan di mana jumlah transaksi ditarik oleh manusia; penyesuaian parameter harus berhati-hati, boleh mengambil nasihat daripada institusi profesional.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  • Menggunakan penunjuk seperti KD, Brinband untuk menggantikan atau bekerjasama dengan MACD untuk meningkatkan ketepatan penghakiman
  • Menambah mekanisme pengurusan kedudukan untuk membolehkan parameter strategi disesuaikan secara dinamik
  • Mengoptimumkan Stop Loss Point untuk Keuntungan Tunggal yang Lebih Tinggi
  • Berjalan dalam kitaran masa yang lebih banyak, meningkatkan kestabilan

Secara keseluruhannya, terdapat ruang yang besar untuk mengoptimumkan strategi ini, dan pelabur boleh membuat penyesuaian dan penambahbaikan yang sesuai dengan keadaan mereka dan keadaan pasaran, untuk menjadikan strategi lebih berkesan.

ringkaskan

3 10 Strategi penandaan kontur vibrator berjaya menggabungkan analisis MACD, perbandingan jumlah transaksi dan pengesahan penapisan pelbagai syarat. Ia mempunyai keupayaan yang kuat untuk menilai hubungan bekalan dan permintaan dan arah trend pasaran, sambil mengawal risiko dengan mekanisme hentian hentian terbina dalam.

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

//@version=5
strategy("3 10 Oscillator Profile Flagging", shorttitle="3 10 Oscillator Profile Flagging", overlay=true)

signalBiasValue = input(title="Signal Bias", defval=0.26)
macdBiasValue = input(title="MACD Bias", defval=0.8)
shortLookBack = input( title="Short LookBack", defval=3)
longLookBack = input( title="Long LookBack", defval=10)
takeProfit = input( title="Take Profit", defval=0.75)
stopLoss = input( title="Stop Loss", defval=0.5)

fast_ma = ta.sma(close, 3)
slow_ma = ta.sma(close, 10)
macd = fast_ma - slow_ma
signal = ta.sma(macd, 16)
hline(0, "Zero Line", color = color.black)

buyVolume = volume*((close-low)/(high-low))
sellVolume = volume*((high-close)/(high-low))
buyVolSlope = buyVolume - buyVolume[1]
sellVolSlope = sellVolume - sellVolume[1]
signalSlope = ( signal - signal[1] )
macdSlope = ( macd - macd[1] )
//plot(macdSlope, color=color.red, title="Total Volume")
//plot(signalSlope, color=color.green, title="Total Volume")
intrabarRange = high - low

getLookBackSlope(lookBack) => signal - signal[lookBack]
getBuyerVolBias(lookBack) =>
    j = 0
    for i = 1 to lookBack
        if buyVolume[i] > sellVolume[i]
            j += 1
    j

getSellerVolBias(lookBack) =>
    j = 0
    for i = 1 to lookBack
        if sellVolume[i] > buyVolume[i]
            j += 1
    j

getVolBias(lookBack) =>
    float b = 0
    float s = 0
    for i = 1 to lookBack
        b += buyVolume[i]
        s += sellVolume[i]
    b > s

getSignalBuyerBias(lookBack) =>
    j = 0
    for i = 1 to lookBack
        if signal[i] > signalBiasValue
            j += 1
    j

getSignalSellerBias(lookBack) =>
    j = 0
    for i = 1 to lookBack
        if signal[i] < ( 0 - signalBiasValue )
            j += 1
    j

getSignalNoBias(lookBack) =>
    j = 0
    for i = 1 to lookBack
        if signal[i] < signalBiasValue and signal[i] > ( 0 - signalBiasValue )
            j += 1
    j

getPriceRising(lookBack) =>
    j = 0
    for i = 1 to lookBack
        if close[i] > close[i + 1]
            j += 1
    j


getPriceFalling(lookBack) =>
    j = 0
    for i = 1 to lookBack
        if close[i] < close[i + 1] 
            j += 1
    j

getRangeNarrowing(lookBack) =>
    j = 0
    for i = 1 to lookBack
        if intrabarRange[i] < intrabarRange[i + 1] 
            j+= 1
    j

getRangeBroadening(lookBack) =>
    j = 0
    for i = 1 to lookBack
        if intrabarRange[i] > intrabarRange[i + 1] 
            j+= 1
    j

bool isNegativeSignalReversal = signalSlope < 0 and signalSlope[1] > 0
bool isNegativeMacdReversal = macdSlope < 0 and macdSlope[1] > 0

bool isPositiveSignalReversal = signalSlope > 0 and signalSlope[1] < 0
bool isPositiveMacdReversal = macdSlope > 0 and macdSlope[1] < 0

bool hasBearInversion = signalSlope > 0 and macdSlope < 0
bool hasBullInversion = signalSlope < 0 and macdSlope > 0

bool hasSignalBias = math.abs(signal) >= signalBiasValue
bool hasNoSignalBias = signal < signalBiasValue and signal > ( 0 - signalBiasValue )

bool hasSignalBuyerBias = hasSignalBias and signal > 0
bool hasSignalSellerBias = hasSignalBias and signal < 0

bool hasPositiveMACDBias = macd > macdBiasValue
bool hasNegativeMACDBias = macd < ( 0 - macdBiasValue )

bool hasBullAntiPattern = ta.crossunder(macd, signal)
bool hasBearAntiPattern = ta.crossover(macd, signal)

bool hasSignificantBuyerVolBias = buyVolume > ( sellVolume * 1.5 )
bool hasSignificantSellerVolBias = sellVolume > ( buyVolume * 1.5 )

// 7.48 Profit 52.5% 
if ( hasSignificantBuyerVolBias and getPriceRising(shortLookBack) == shortLookBack  and getBuyerVolBias(shortLookBack) == shortLookBack and hasPositiveMACDBias and hasBullInversion)
    strategy.entry("Short1", strategy.short, qty=10)
strategy.exit("TPS", "Short1", limit=strategy.position_avg_price - takeProfit, stop=strategy.position_avg_price + stopLoss)

// 32.53 Profit 47.91%
if ( getPriceFalling(shortLookBack) and (getVolBias(shortLookBack) == false) and signalSlope < 0 and hasSignalSellerBias)
    strategy.entry("Long1", strategy.long, qty=10)
strategy.exit("TPS", "Long1", limit=strategy.position_avg_price + takeProfit, stop=strategy.position_avg_price - stopLoss)