Strategi penembusan momentum penunjuk teknikal berbilang


Tarikh penciptaan: 2023-11-22 15:56:43 Akhirnya diubah suai: 2023-11-22 15:56:43
Salin: 0 Bilangan klik: 632
1
fokus pada
1621
Pengikut

Strategi penembusan momentum penunjuk teknikal berbilang

Gambaran keseluruhan

Strategi ini mengambil kira pelbagai indikator teknikal untuk melakukan pembelian apabila pasaran mempunyai pergerakan berbilang mata yang kuat. Secara khusus, strategi ini akan mengambil kira 5 indikator MACD, RSI, ADX, Stochastic dan Brin secara serentak untuk menghasilkan isyarat pembelian apabila indikator ini memenuhi syarat berbilang mata.

Prinsip Strategi

Logik teras strategi ini adalah membeli selepas menilai bahawa pasaran mempunyai tenaga berganda yang kuat. Peraturan penilaian khusus adalah seperti berikut:

  1. 5 minit, 15 minit, dan 60 minit MACD naik
  2. RSI lebih besar daripada 60
  3. ADX lebih besar daripada 12
  4. Stochastic %K melalui %D
  5. Brin beraksi di atas landasan

Apabila 5 syarat di atas berlaku pada masa yang sama, ia dianggap bahawa pasaran bergerak dengan lebih kuat, dan pada masa ini ia melakukan operasi beli.

Peraturan keluar dagangan adalah keluar dari kedudukan semasa apabila EMA 5 minit di bawah harga penutupan 5 minit.

Analisis kelebihan

Strategi ini mempunyai beberapa kelebihan:

  1. Mengintegrasikan pelbagai petunjuk untuk menilai trend pasaran secara keseluruhan dan mengelakkan salah kaprah oleh satu petunjuk
  2. Menggunakan gabungan indeks garis masa yang tinggi dan rendah untuk menilai kesinambungan pergerakan pasaran yang pelbagai
  3. Mekanisme Keluar yang ketat untuk mengelakkan kerugian meluas
  4. Frekuensi dagangan sederhana, tidak terlalu intensif

Secara keseluruhannya, strategi ini mempunyai penilaian yang tepat, pengendalian risiko yang baik, dan sesuai untuk menangkap situasi yang berlainan.

Analisis risiko

Strategi ini mempunyai beberapa risiko:

  1. Pertimbangan gabungan pelbagai indikator meningkatkan kemungkinan kesilapan penghantaran masuk
  2. Mekanisme keluar mungkin terlalu ketat, mungkin keluar terlalu awal dari perdagangan yang betul
  3. Frekuensi dagangan yang tinggi, terlalu sering dagangan akan menambah beban yuran

Secara keseluruhan, risiko strategi ini adalah sebahagian besarnya dari kesalahan masuk dan keluar awal, yang perlu dikurangkan dengan pengoptimuman parameter dan penyesuaian peraturan.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dengan cara berikut:

  1. Mengoptimumkan parameter MACD untuk mencari kombinasi parameter yang lebih sesuai dengan undang-undang pasaran
  2. Menyesuaikan parameter RSI untuk mencari selang yang lebih baik
  3. Mengoptimumkan parameter Stochastic untuk mencari kombinasi silang yang lebih baik
  4. Menyesuaikan parameter Burin untuk lebih mencerminkan turun naik pasaran
  5. Mengoptimumkan atau menggantikan peraturan mekanisme keluar untuk mengurangkan kemungkinan keluar yang salah

Dengan mengoptimumkan parameter dan peraturan, ia dapat meningkatkan tahap keuntungan dan kawalan risiko strategi ini.

ringkaskan

Strategi ini mengambil kira pelbagai petunjuk untuk menilai trend pasaran yang pelbagai, dan mekanisme keluarnya lebih ketat. Keputusan strategi tepat, dapat menangkap pergerakan garis pendek, dan kawalan risiko lebih baik. Dengan terus mengoptimumkan parameter dan peraturan perdagangan, anda dapat meningkatkan lagi keberkesanan strategi.

Kod sumber strategi
/*backtest
start: 2022-11-15 00:00:00
end: 2023-11-21 00:00:00
period: 1d
basePeriod: 1h
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/
// © makarandpatil

// This strategy is for Bank Nifty instrument and for intraday purpose only
// It checks for various indicators and gives a buy signal when all conditions are met 
// Bank Nifty when in momentum gives 100-200 points in spot in 5-15 min which is how long the trade duration should be
// Issues - The custom script as per TradingView Pinescripting has an issue of repaint
// More information on repainting issue in this link - https://www.tradingview.com/pine-script-docs/en/v5/concepts/Repainting.html
// Use the script alert only to get notified, however check all the parameters individually before taking the trade
// Also, please perform a backtesting and deep backtesting of this strategy to see if the strategy gave correct buy signals in the past
// The script is made for testing purposes only and is in beta mode. Please use at own risk.

//@version=5
strategy("BankNifty_Bullish_Intraday", overlay=true, margin_long = 100, margin_short = 100)

// Variables
StochLength = input(14, title="Stochastic Length")
smoothK = input(3, title="%K Smoothing")
smoothD = input(3, title="%D Smoothing")
 
 
//INDICATOR CALCULATIONS
 
// 1. MACD
[macdLine, signalLine, histLine] = ta.macd(close[0],12,26,9)
 
macd5 = request.security(syminfo.tickerid, "5", macdLine)
macd15 = request.security(syminfo.tickerid,"15",macdLine)
macd60 = request.security(syminfo.tickerid,"60",macdLine)
 
// 2. RSI Calculation
xRSI = ta.rsi(close, 14)
 
// 3. ADX calculation
[diplus, diminus, adx] = ta.dmi(14,14)
// plot(adx,color = color.black)
 
// 4. Stochastic Calculation
k = ta.sma(ta.stoch(close, high, low, StochLength), smoothK)
d = ta.sma(k, smoothD)
 
// 5. Bollinger Band calculation
[middle, upper, lower] = ta.bb(close, 20, 2)
 
 
//CONDITIONS
 
// 1. Conditions for MACD
macd5Uptick = macd5[0] > macd5[1]
macd15Uptick = macd15[0] > macd15[1]
macd60Uptick = macd60[0] >= macd60[1]
 
// 2. Condition for xRSI
RSIStrong = xRSI > 60
 
// 3. Condition for ADX
ADXUngali = adx >= 12
 
// 4. Condition for Stochastic
StochPCO = k > d
 
// 5. Condition for Bollinger Band
BBCU = upper > upper [1]
 
//Evaluate the long condition
// longCondition = macd5Uptick and macd15Uptick and RSIStrong and ADXUngali and StochPCO and BBCU
longCondition = macd5Uptick and macd15Uptick and macd60Uptick and RSIStrong and ADXUngali and StochPCO and BBCU
// longCondition = macd5Uptick and macd15Uptick and RSIStrong and ADXUngali and StochPCO and BBCU

if (longCondition)
    strategy.entry("Buy", strategy.long,alert_message = "BankNifty_Buy_Momentum")

shortCondition = close < ta.ema(close,5)
if (shortCondition)
    strategy.entry("BuySquareoff", strategy.short, alert_message = "BankNifty_Closed_Below_5EMA")