वॉल्यूम ऑसिलेटर पर आधारित ट्रेंड फॉलोइंग ट्रेडिंग रणनीति


निर्माण तिथि: 2024-01-29 15:04:18 अंत में संशोधित करें: 2024-01-29 15:04:18
कॉपी: 0 क्लिक्स: 760
1
ध्यान केंद्रित करना
1617
समर्थक

वॉल्यूम ऑसिलेटर पर आधारित ट्रेंड फॉलोइंग ट्रेडिंग रणनीति

अवलोकन

यह रणनीति एक ट्रेंड ट्रैकिंग रणनीति है जो व्यापार के लिए संशोधित ट्रेड वॉल्यूम ऑस्केलेटर संकेतक पर आधारित है। यह ट्रेड वॉल्यूम की औसत रेखा का उपयोग करता है, ट्रेड वॉल्यूम में वृद्धि के संकेतों की पहचान करता है, ताकि प्रवेश या स्थिति से बाहर निकलने का निर्णय लिया जा सके। साथ ही साथ कीमत के ट्रेंड निर्णय के साथ, कीमत के उतार-चढ़ाव के दौरान गलत संकेतों से बचें।

रणनीति सिद्धांत

  1. लेन-देन की औसत रेखा vol_sum की गणना करें, लंबाई vol_length है, और लंबाई vol_smooth की औसत रेखा को चिकना करें।
  2. जब vol_sum बढ़ता है तो थ्रेसहोल्ड से अधिक खरीदें सिग्नल उत्पन्न होता है, और थ्रेसहोल्ड से अधिक गिरावट बिक्री सिग्नल उत्पन्न होती है।
  3. त्रुटि फ़िल्टर करने के लिए, केवल खरीदते समय खरीदते हैं जब कीमत की प्रवृत्ति बढ़ जाती है, और बिक्री के समय बिक्री की जाती है जब कीमत की प्रवृत्ति गिरती है।
  4. दो थ्रेशोल्ड सेट करेंः threshold और threshold2 .
  5. स्थिति मशीन के माध्यम से आदेशों का प्रबंधन करने के लिए स्टॉक खोलने के तर्क।

श्रेष्ठता विश्लेषण

  1. लेन-देन की मात्रा के संकेतकों का उपयोग करके, बाजार में क्रय-विक्रय की दिशा में परिवर्तन को पकड़ने के लिए, सिग्नल की सटीकता में सुधार किया जा सकता है।
  2. मूल्य प्रवृत्ति के निर्णय के साथ, यह गलत संकेतों से बचने के लिए संभव है जब कीमतों में उतार-चढ़ाव हो।
  3. जोखिम को बेहतर ढंग से नियंत्रित करने के लिए दो थ्रेशोल्ड्स का उपयोग करके स्थिति खोलने और रोकने के लिए।

जोखिम विश्लेषण

  1. हालांकि, इस तरह के संकेतकों में देरी होती है, जो मूल्य परिवर्तन के बिंदु को याद कर सकते हैं।
  2. गलत पैरामीटर सेटिंग्स के कारण लेनदेन की उच्च आवृत्ति या सिग्नल में देरी हो सकती है।
  3. व्यापार में वृद्धि के परिदृश्य में, स्टॉपलॉस को पार किया जा सकता है।

इन जोखिमों को पैरामीटर को समायोजित करके नियंत्रित किया जा सकता है, संकेतक की गणना के तरीके को अनुकूलित किया जा सकता है, और अन्य संकेतक के साथ संयोजन में पुष्टि की जा सकती है।

अनुकूलन दिशा

  1. बाजार की स्थितियों के अनुसार सूचकांक पैरामीटर को अनुकूलित करने के लिए अनुकूलित करने पर विचार किया जा सकता है।
  2. अन्य संकेतकों के साथ संयोजन किया जा सकता है, जैसे कि मूल्य उतार-चढ़ाव सूचकांक, और अधिक सटीकता के लिए संकेतों को सत्यापित करने के लिए।
  3. सिग्नल निर्णय में मशीन लर्निंग मॉडल को लागू करने के लिए अध्ययन किया जा सकता है, मॉडल निर्णय का उपयोग करके सटीकता में सुधार किया जा सकता है।

संक्षेप

इस रणनीति के माध्यम से सुधार लेनदेन मात्रा ऑस्किलेटर, कीमतों के रुझान का आकलन करने के लिए सहायक, दो घाटे स्थापित करने के लिए स्थिति खोलने और बंद करने के लिए, कुल मिलाकर एक अधिक स्थिर प्रवृत्ति ट्रैकिंग रणनीति है. अनुकूलन अंतरिक्ष मुख्य रूप से पैरामीटर समायोजन, संकेत फ़िल्टर और स्टॉप-लॉस रणनीति के संदर्भ में है. कुल मिलाकर, इस रणनीति में कुछ व्यावहारिक मूल्य है और आगे के अध्ययन के लिए अनुकूलन के लायक है।

रणनीति स्रोत कोड
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy('Volume Advanced', default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.075, currency='USD')
startP = timestamp(input(2017, "Start Year"), input(12, "Start Month"), input(17, "Start Day"), 0, 0)
end    = timestamp(input(9999, "End Year"),   input(1, "End Month"),   input(1, "End Day"),   0, 0)
_testPeriod() =>
    iff(time >= startP and time <= end, true, false)

source = close 
vol_length  = input(34, title = "Volume - Length")
vol_smooth  = input(200,title = "Volume - Smoothing")
volriselen  = input(21,  title = "Volume - Risinglength")
volfalllen  = input(13, title = "Volume - Fallinglength")
threshold   = input(1,"threshold")
threshold2  = input(1.2,step=0.1, title="Threshold 2")
direction = input(13,"amount of bars")


volsum  = sum(volume, vol_length) / (sum(volume, vol_smooth) / (vol_smooth / vol_length))


LongEntry  = (rising(volsum, volriselen) or crossover (volsum, threshold)) and close > close[direction]
ShortEntry = (rising(volsum, volriselen) or crossover (volsum, threshold)) and close < close[direction]
LongExit1  = falling (volsum,volfalllen)
ShortExit1 = falling (volsum,volfalllen)
LongExit2= (crossover(volsum, threshold2) and close < close[direction])


_state = 0
_prev = nz(_state[1])
_state := _prev

if _prev == 0
    if LongEntry
        _state := 1
        _state
    if ShortEntry
        _state := 2
        _state
if _prev == 1
    if ShortEntry or LongExit1
        _state := 0
        _state
if _prev == 2
    if LongEntry or ShortExit1
        _state := 0
        _state

_bLongEntry = _state == 1 
_bLongClose = _state == 0 

long_condition = _bLongEntry and close > close[direction]
strategy.entry('BUY', strategy.long, when=long_condition)  
 
short_condition =  _bLongClose or LongExit2
strategy.close('BUY', when=short_condition)

plot(volsum,      color = color.green,    title="Vol_Sum")
plot(threshold, color = color.fuchsia, transp=50, title="Threshold")
plot(threshold2, color=color.white, transp = 50, title="Threshold 2")