मल्टी टाइमफ्रेम एमएसीडी स्टॉकआरएसआई कॉम्बो रणनीति

लेखक:चाओझांग, दिनांक: 2023-09-13 12:05:46
टैगः

यह रणनीति व्यापार संकेतों में विश्वसनीयता में सुधार के लिए कई समय सीमाओं में एमएसीडी और स्टॉकआरएसआई संकेतकों को जोड़ती है। यह एक विशिष्ट बहु-समय सीमा संयोजन दृष्टिकोण है।

रणनीति तर्क:

  1. MACD और StochRSI की गणना दैनिक और 4 घंटे की अवधि पर की जाती है।

  2. लंबे समय में प्रवेश करें जब दोनों तेजी संकेत दैनिक और 4-घंटे पर संरेखित हों।

  3. जब दोनों मंदी संकेत दैनिक और 4-घंटे पर संरेखित होते हैं तो शॉर्ट में प्रवेश करें।

  4. स्थिति बनाए रखें जब तक विपरीत संकेत दोनों समय सीमाओं पर दिखाई देते हैं।

  5. मल्टी-टाइमफ्रेम के माध्यम से क्रॉस-वैलिडेशन सटीकता में सुधार करता है।

लाभः

  1. मल्टी-टाइमफ्रेम विश्लेषण सिग्नल स्थिरता में सुधार करता है।

  2. एमएसीडी और स्टॉकआरएसआई एक दूसरे की पुष्टि करते हैं।

  3. प्रवेश और निकास के स्पष्ट नियम परीक्षण और निष्पादन को आसान बनाते हैं।

जोखिमः

  1. बहु-समय-सीमा संयोजन व्यापार प्रविष्टियों में देरी करते हैं।

  2. अवधियों में जटिल पैरामीटर अनुकूलन।

  3. संभावित रूप से कम ट्रेडें बाजार के सभी अवसरों का पूरी तरह से लाभ उठाने में असमर्थ।

संक्षेप में, यह बहु-समय-सीमा दृष्टिकोण संकेत की गुणवत्ता में सुधार कर सकता है, लेकिन जोखिम-समायोजित रिटर्न के मुकाबले संतुलन अनुकूलन और देरी की आवश्यकता होती है।


/*backtest
start: 2023-08-13 00:00:00
end: 2023-09-12 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
// strategy(title='[RS]Khizon (DGAZ) Strategy V0', shorttitle='K', overlay=false, pyramiding=0, initial_capital=100000, currency=currency.USD)
//  ||  Inputs:
macd_src = input(title='MACD Source:',  defval=close)
macd_fast = input(title='MACD Fast Length:', defval=12)
macd_slow = input(title='MACD Slow Length:', defval=26)
macd_signal_smooth = input(title='MACD Signal Smoothing:', defval=9)
srsi_src = input(title='SRSI Source:',  defval=close)
srsi_rsi_length = input(title='SRSI RSI Length:', defval=14)
srsi_stoch_length = input(title='SRSI Stoch Length:', defval=14)
srsi_smooth = input(title='SRSI Smoothing:', defval=3)
srsi_signal_smooth = input(title='SRSI Signal Smoothing:', defval=3)
//  ||  Strategy Inputs:
trade_size = input(title='Trade Size in BTC:',  defval=1)
buy_trade = input(title='Perform buy trading?',  defval=true)
sel_trade = input(title='Perform sell trading?',  defval=true)
//  ||  MACD(close, 12, 26, 9):     ||---------------------------------------------||
f_macd_trigger(_src, _fast, _slow, _signal_smooth)=>
    _macd = ema(_src, _fast) - ema(_src, _slow)
    _signal = sma(_macd, _signal_smooth)
    _return_trigger = _macd >= _signal ? true : false
//  ||  Stoch RSI(close, 14, 14, 3, 3)  ||-----------------------------------------||
f_srsi_trigger(_src, _rsi_length, _stoch_length, _smooth, _signal_smooth)=>
    _rsi = rsi(_src, _rsi_length)
    _stoch = sma(stoch(_rsi, _rsi, _rsi, _stoch_length), _smooth)
    _signal = sma(_stoch, _signal_smooth)
    _return_trigger = _stoch >= _signal ? true : false
//  ||-----------------------------------------------------------------------------||
//  ||-----------------------------------------------------------------------------||
//  ||  Check Directional Bias from daily timeframe:
daily_trigger = security('NGAS', 'D', f_macd_trigger(macd_src, macd_fast, macd_slow, macd_signal_smooth) and f_srsi_trigger(srsi_src, srsi_rsi_length, srsi_stoch_length, srsi_smooth, srsi_signal_smooth))
h4_trigger = security('NGAS', '240', f_macd_trigger(macd_src, macd_fast, macd_slow, macd_signal_smooth) and f_srsi_trigger(srsi_src, srsi_rsi_length, srsi_stoch_length, srsi_smooth, srsi_signal_smooth))

plot(title='D1T', series=daily_trigger?0:na, style=circles, color=blue, linewidth=4, transp=65)
plot(title='H4T', series=h4_trigger?0:na, style=circles, color=navy, linewidth=2, transp=0)

sel_open = sel_trade and daily_trigger and h4_trigger
buy_open = buy_trade and not daily_trigger and not h4_trigger
sel_close = not buy_trade and not daily_trigger and not h4_trigger
buy_close = not sel_trade and daily_trigger and h4_trigger

strategy.entry('sel', long=false, qty=trade_size, comment='sel', when=sel_open)
strategy.close('sel', when=sel_close)
strategy.entry('buy', long=true, qty=trade_size, comment='buy', when=buy_open)
strategy.close('buy', when=buy_close)

अधिक