ट्रेडिंगवीएमए चर चलती औसत ट्रेडिंग रणनीति

लेखक:चाओझांग, दिनांकः 2024-02-21 11:47:43
टैगः

img

अवलोकन

ट्रेडिंगवीएमए रणनीति एक मात्रात्मक ट्रेडिंग रणनीति है जो चर चलती औसत रेखाओं पर आधारित है। यह बाजार के रुझानों को पकड़ने और तदनुसार ट्रेडिंग संकेत उत्पन्न करने के लिए बदलते चलती औसत का उपयोग करती है।

रणनीति तर्क

ट्रेडिंगवीएमए रणनीति का मूल चर लंबाई चलती औसत (परिवर्तनीय चलती औसत, वीएमए) की गणना है। चलती औसत एक व्यापक रूप से ज्ञात तकनीकी संकेतक है जो एक निश्चित अवधि में औसत मूल्य की गणना करता है। ट्रेडिंगवीएमए रणनीति में उपयोग किए जाने वाले वीएमए में विभिन्न अवधि की लंबाई होती है।

विशेष रूप से, रणनीति पहले मध्यवर्ती मात्राओं की एक श्रृंखला की गणना करती है, जैसे कि मूल्य दिशात्मक आंदोलन संकेतक (पीडीएम, एमडीआईएम), चिकनी डेटा (पीडीएम, एमडीएम) । इन डेटा का उपयोग अंततः संकेतक शक्ति (आईएस) प्राप्त करने के लिए किया जाता है। यह संकेतक मूल्य उतार-चढ़ाव की तीव्रता को दर्शाता है।

ट्रेडिंगवीएमए रणनीति गतिशील रूप से संकेतक की ताकत के आधार पर चलती औसत अवधि को समायोजित करती है। जब बाजार की अस्थिरता बढ़ जाती है, तो चलती औसत अवधि कम हो जाती है, और इसके विपरीत। यह बाजार में परिवर्तन के लिए तेजी से प्रतिक्रिया करने की अनुमति देता है।

अंत में, रणनीति ट्रेडिंग सिग्नल उत्पन्न करने के लिए वर्तमान मूल्य की तुलना वीएमए के साथ करती है। जब मूल्य वीएमए से ऊपर होता है तो यह लंबा होता है और जब मूल्य वीएमए से नीचे होता है तो यह छोटा होता है।

लाभ विश्लेषण

ट्रेडिंगवीएमए रणनीति के निम्नलिखित मुख्य फायदे हैंः

  1. परिवर्तनीय अवधि शोर को अधिक स्थिर फ़िल्टर करती है परिवर्तनीय चलती औसत अवधि शोर को फ़िल्टर करने और अधिक स्थिर रुझान संकेतों के लिए बाजार परिवर्तनों के अनुकूल होती है।

  2. मूल्य परिवर्तनों पर तेजी से प्रतिक्रिया प्रतिक्रिया में सुधार करती है परिवर्तनीय चलती औसत मूल्य परिवर्तनों पर तेजी से प्रतिक्रिया दे सकती है और प्रवृत्ति उलट बिंदुओं को पकड़ सकती है।

  3. ट्रेडिंग आवृत्ति को कम करता है कम ओवरट्रेडिंग - निश्चित अवधि के संकेतकों की तुलना में, ट्रेडिंगवीएमए अनावश्यक ट्रेडों को कम कर सकता है।

  4. अनुकूलन योग्य मापदंड लचीलापन - रणनीति उपयोगकर्ताओं को विभिन्न बाजार वातावरणों के अनुरूप अपनी प्राथमिकताओं के आधार पर मापदंडों का चयन करने की अनुमति देती है।

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

ट्रेडिंगवीएमए रणनीति में निम्नलिखित प्राथमिक जोखिम भी हैं:

  1. जब रुझान तेजी से उलट जाते हैं, तो लगातार समायोजित चलती औसत प्रतिक्रिया में देरी कर सकती है।

  2. पिछड़ता हुआ पूर्वाग्रह सभी चलती औसत रणनीतियों में किसी प्रकार का पिछड़ता हुआ पूर्वाग्रह होता है, चाहे वह लंबा हो या छोटा।

  3. गलत सिग्नल TradingVMA सीमा-बंद पार्श्व बाजारों में गलत लंबी/लघु संकेत उत्पन्न कर सकता है।

  4. कठिन पैरामीटर अनुकूलन इष्टतम पैरामीटर संयोजन ढूंढना चुनौतीपूर्ण हो सकता है।

इन जोखिमों को स्टॉप लॉस, समायोजन पैरामीटर संयोजन आदि जैसे तरीकों से नियंत्रित किया जा सकता है।

अनुकूलन दिशाएँ

ट्रेडिंगवीएमए रणनीति को निम्नलिखित पहलुओं में भी बढ़ाया जा सकता हैः

  1. अन्य संकेतकों को मिलाएं अन्य रुझानों के साथ उपयोग करके, विपरीत रुझान संकेतकों से संकेत की गुणवत्ता में सुधार हो सकता है।

  2. पैरामीटर अनुकूलन बैकटेस्टिंग और अनुकूलन के माध्यम से इष्टतम मापदंडों की खोज करें।

  3. अनुकूली व्यापार नियम विभिन्न प्रवेश नियमों का उपयोग करें, बाजार व्यवस्था के अनुसार हानि को रोकें।

  4. प्रणालीकरण सरल अनुकूलन के लिए रणनीति को एल्गोरिथम और व्यवस्थित करें।

निष्कर्ष

ट्रेडिंगवीएमए एक अनुकूलनात्मक मात्रात्मक रणनीति है। यह एक विशेष रूप से डिज़ाइन किए गए वीएमए संकेतक का उपयोग करके बाजार के रुझानों को पकड़ती है, प्रतिक्रियाशील होने और शोर को फ़िल्टर करने के किनारे के साथ। बेहतर प्रदर्शन के लिए रणनीति को कई तरीकों से अपग्रेड किया जा सकता है। लेकिन कुछ अंतर्निहित मुद्दे जैसे कि पिछड़ने वाले पूर्वाग्रह बनी रह सकते हैं। कुल मिलाकर, ट्रेडिंगवीएमए एक आशाजनक प्रवृत्ति-अनुसरण रणनीति है।


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-24 23:59:59
period: 1h
basePeriod: 15m
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/
// © laptevmaxim92

//@version=4
strategy("Variable Moving Average Strategy", overlay=true)

src=close
l =input(5, title="VMA Length") 
std=input(true, title="Show Trend Direction Colors")

utp = input(false, "Use take profit?")
pr = input(100, "Take profit pips")
usl = input(false, "Use stop loss?")
sl = input(100, "Stop loss pips")
fromday = input(01, defval=01, minval=01, maxval=31, title="From Day")
frommonth = input(01, defval=01, minval= 01, maxval=12, title="From Month")
fromyear = input(2000, minval=1900, maxval=2100, title="From Year")
today = input(31, defval=01, minval=01, maxval=31, title="To Day")
tomonth = input(12, defval=12, minval=01, maxval=12, title="To Month")
toyear = input(2019, minval=1900, maxval=2100, title="To Year")

use_date = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00))

k = 1.0/l
pdm = 0.0
pdm := max((src - src[1]), 0)
mdm = 0.0
mdm := max((src[1] - src), 0)
pdmS = 0.0
pdmS := ((1 - k)*nz(pdmS[1]) + k*pdm)
mdmS = 0.0
mdmS := ((1 - k)*nz(mdmS[1]) + k*mdm)
s = pdmS + mdmS
pdi = pdmS/s
mdi = mdmS/s
pdiS = 0.0
pdiS := ((1 - k)*nz(pdiS[1]) + k*pdi)
mdiS = 0.0
mdiS := ((1 - k)*nz(mdiS[1]) + k*mdi)
d = abs(pdiS - mdiS)
s1 = pdiS + mdiS
iS = 0.0
iS := ((1 - k)*nz(iS[1]) + k*d/s1)
hhv = highest(iS, l) 
llv = lowest(iS, l) 
d1 = hhv - llv
vI = (iS - llv)/d1
vma = 0.0
vma := (1 - k*vI)*nz(vma[1]) + k*vI*src
vmaC=(vma > vma[1]) ? color.lime : (vma<vma[1]) ? color.red : (vma==vma[1]) ? color.yellow : na 
plot(vma, color=std?vmaC:color.white, linewidth=3, title="VMA")

longCondition = vma > vma[1]
if (longCondition)
    strategy.entry("BUY", strategy.long and use_date)

shortCondition = vma < vma[1]
if (shortCondition)
    strategy.entry("SELL", strategy.short and use_date)

if (utp and not usl)
    strategy.exit("TP", "BUY", profit = pr)
    strategy.exit("TP", "SELL", profit = pr)
    
if (usl and not utp)
    strategy.exit("SL", "BUY", loss = sl)
    strategy.exit("SL", "SELL", loss = sl)
    
if (usl and utp)
    strategy.exit("TP/SL", "BUY", loss = sl, profit = pr)
    strategy.exit("TP/SL", "SELL", loss = sl, profit = pr)

अधिक