क्वांटम लाइट्स मूविंग एवरेज ट्रेंड ट्रैकिंग अनुकूलन रणनीति

लेखक:चाओझांग, दिनांक: 2024-01-04 15:44:23
टैगः

img

अवलोकन

क्वांट लाइट्स स्टोकैस्टिक इंडिकेटर और ओटीटी इंडिकेटर का उपयोग करने वाली एक संयुक्त रणनीति है। रणनीति खरीद और बिक्री संकेत उत्पन्न करने के लिए स्टोकैस्टिक इंडिकेटर का उपयोग करती है, और संकेतों को फ़िल्टर करने के लिए उन्हें ओटीटी इंडिकेटर के साथ जोड़ती है, बड़ी प्रवृत्ति को पकड़ने और झूठे संकेतों का कारण बनने वाले बाजार में उतार-चढ़ाव के प्रभाव को कम करने का प्रयास करती है। यह लेख रणनीति का विस्तार से मूल्यांकन करेगा।

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

रणनीति का मुख्य विचार संकेत फ़िल्टरिंग के लिए स्टोकास्टिक संकेतक पर ओटीटी संकेतक को ओवरलैप करना है। स्टोकास्टिक संकेतक कीमत की तुलना निर्दिष्ट समय अवधि में उच्चतम और निम्नतम कीमतों के साथ करता है ताकि यह तय किया जा सके कि कीमत चरम क्षेत्र में है या नहीं। ओटीटी संकेतक रुझानों को ट्रैक करने के लिए चलती औसत और गतिशील स्टॉप का उपयोग करता है।

कोड स्टोकास्टिक के उच्च स्तर को 1080 और निम्न स्तर को 1020 पर सेट करता है। जब स्टोकास्टिक मूल्य उनके बीच होता है, तो यह एक सीमा-बंद क्षेत्र होता है। जब स्टोकास्टिक खरीद / बिक्री संकेत उत्पन्न करता है, तो कोड ओटीटी संकेतक के आधार पर संकेत की वैधता निर्धारित करेगा। यदि कीमत ओटीटी औसत रेखा से ऊपर जाती है, तो एक खरीद संकेत जारी किया जाता है। यदि कीमत ओटीटी औसत रेखा से नीचे जाती है, तो एक बिक्री संकेत जारी किया जाता है।

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

लाभ विश्लेषण

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

  1. संकेत की सटीकता में सुधार स्टोकैस्टिक न्यायाधीश ओवरबॉट और ओवरसोल्ड स्थितियों, ओटीटी उतार-चढ़ाव वाले बाजारों के कारण होने वाले झूठे संकेतों को फ़िल्टर करता है।
  2. रणनीतिक अस्थिरता को कम करता है। गतिशील स्टॉप के माध्यम से वर्तमान हानि को सीमित करता है, कई झूठे ब्रेकआउट को फ़िल्टर करता है।
  3. प्रभावी रूप से प्रमुख स्टॉक रुझानों को कैप्चर करता है। स्टोकैस्टिक बुनियादी संकेत प्रदान करता है और ओटीटी प्रमुख रुझानों को ट्रैक करता है।
  4. अत्यधिक सिग्नल हस्तक्षेप को कम करता है। बेकार सिग्नल को कम करते हुए सिग्नल की गुणवत्ता में सुधार करता है।
  5. गतिशील स्टॉप सेटिंग्स को मात्रात्मक करता है. गुणात्मक रूप से वर्तमान हानि की गारंटी देता है और रणनीति अस्थिरता को और कम करता है.
  6. प्रणाली में रुझान और ओवरबॉट/ओवरसोल्ड संकेतकों को एकीकृत किया गया है। एक दूसरे की कमजोरियों को अनुकूलित करने के लिए इन दो प्रकार के संकेतकों का उपयोग करें।

संक्षेप में, स्टोकेस्टिक संकेतों को फ़िल्टर करने के लिए ओटीटी का उपयोग करके, रणनीति प्रभावी रूप से संकेत की गुणवत्ता और निवेश रिटर्न में सुधार करती है, जबकि लेनदेन की संख्या और रणनीति अस्थिरता को कम करती है, कम जोखिम, उच्च रिटर्न और रुझानों की बारीकी से निगरानी का प्रभाव प्राप्त करती है।

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

  • इस रणनीति का अनुप्रयोग का दायरा अपेक्षाकृत संकीर्ण है। यह मुख्य रूप से स्पष्ट रुझान वाले शेयरों के लिए उपयुक्त है। इसका बहुत बड़े मूल्य उतार-चढ़ाव वाले शेयरों या पार्श्व समेकन में शेयरों पर कम प्रभाव पड़ता है।
  • पूरी तरह से तकनीकी विश्लेषण पर निर्भर करता है। रणनीति में शेयरों के मौलिक तत्वों और मैक्रो वातावरण पर विचार नहीं किया गया है, इसलिए कुछ अंधा धब्बा है।
  • संवेदनशील पैरामीटर सेटिंग्स स्टोकास्टिक और ओटीटी के कई पैरामीटरों को पेशेवर ट्यूनिंग की आवश्यकता होती है, अन्यथा यह रणनीति की लाभप्रदता को प्रभावित करेगा।
  • स्टॉप बहुत ढीला है. कुछ संभावित नुकसान है कि आगे अनुकूलन की जरूरत है सहन.
  • झूठे ब्रेकआउट और उतार-चढ़ाव वाले बाजारों के दौरान कुछ नुकसान और सिग्नल हस्तक्षेप होंगे। निर्णय की शर्तों और स्टॉप शर्तों को संशोधित करने की आवश्यकता है।

उपरोक्त जोखिमों के संबंध में, निम्नलिखित उपायों को सुधारने के लिए किया जा सकता हैः

  1. विभिन्न प्रकार के स्टॉक के लिए अलग-अलग पैरामीटर संयोजनों का प्रयोग करें।
  2. मौलिक और समाचारों को शामिल करके संकेतों को बढ़ाएं।
  3. इष्टतम सेटिंग्स खोजने के लिए परीक्षण के माध्यम से मापदंडों का अनुकूलन करें।
  4. जोखिमों को और कम करने के लिए चलती स्टॉप का परिचय दें।
  5. निर्णय की शर्तों को संशोधित करें और अधिक कठोर संकेत पुष्टिकरण तंत्र का उपयोग करें।

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

इस रणनीति को निम्नलिखित पहलुओं में और अधिक अनुकूलित किया जा सकता हैः

  1. विभिन्न बाजारों और स्टॉक के प्रकारों के अनुसार पैरामीटर सेटिंग्स को समायोजित करें। वर्तमान डिफ़ॉल्ट मान सार्वभौमिक हैं और इष्टतम पैरामीटर संयोजन खोजने के लिए विभिन्न स्टॉक के लिए अलग से परीक्षण किया जा सकता है।

  2. लाभ लेने और मुनाफा लेने के तंत्र को पेश करें। वर्तमान में गतिशील स्थिर स्टॉप का उपयोग करके गतिशील रूप से नुकसान और लाभ को ट्रैक करने में असमर्थ है। आगे के जोखिम और लाभ नियंत्रण के लिए गतिशील स्टॉप और लाभ लेने की शुरूआत का परीक्षण किया जा सकता है।

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

  4. खुली स्थिति की स्थितियों और फ़िल्टरिंग तंत्र को बढ़ाएं। वर्तमान रणनीति प्रत्येक संकेत को बिना भेदभाव के संसाधित करती है। वॉल्यूम संकेतक, ट्रेडिंग वॉल्यूम संकेतक और अन्य खुली स्थिति की स्थितियों को पेश किया जा सकता है, साथ ही झूठे संकेतों को फ़िल्टर करने के लिए एक निश्चित संकेत समय खिड़की भी है।

  5. ओटीटी के साथ विभिन्न संकेतक संयोजनों का परीक्षण करें। वर्तमान में स्टोकैस्टिक और ओटीटी संयोजन का उपयोग करते हुए। ओटीटी के साथ एमएसीडी और आरएसआई जैसे अन्य संकेतकों के संयोजन की प्रभावशीलता का परीक्षण किया जा सकता है।

  6. पूंजी प्रबंधन और स्थिति आकार मॉड्यूल को एकीकृत करें। वर्तमान में पूंजी प्रबंधन और स्थिति नियंत्रण तंत्र नहीं हैं, जो पूरी तरह से स्टॉप पर निर्भर करते हैं। एकल और समग्र जोखिमों को और अधिक नियंत्रित करने के लिए विभिन्न प्रकार के पूंजी प्रबंधन और स्थिति आकार विधियों का परीक्षण किया जा सकता है।

सारांश

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

इस रणनीति के लाभों में कम त्रुटि दर, स्पष्ट संकेत और छोटी अस्थिरता शामिल हैं। यह संकेत विश्वसनीयता को बढ़ाता है, स्टॉप स्तरों को अनुकूलित करता है, व्यापार आवृत्ति को कम करता है, और एक अनुशंसित मात्रात्मक रणनीति है।

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


/*backtest
start: 2023-12-27 00:00:00
end: 2024-01-03 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © KivancOzbilgic
//created by: @Anil_Ozeksi
//developer: ANIL ÖZEKŞİ
//author: @kivancozbilgic


strategy(title="Stochastic Optimized Trend Tracker", shorttitle="SOTT", format=format.price, precision=2)
periodK = input(250, title="%K Length", minval=1)
smoothK = input(50, title="%K Smoothing", minval=1)
src1 = input(close, title="Source")
length=input(3, "OTT Period", minval=1)
percent=input(0.618, "OTT Percent", type=input.float, step=0.1, minval=0)
showsupport = input(title="Show Support Line?", type=input.bool, defval=false)
showsignalsc = input(title="Show Stochastic/OTT Crossing Signals?", type=input.bool, defval=false)
Var_Func1(src1,length)=>
    valpha1=2/(length+1)
    vud11=src1>src1[1] ? src1-src1[1] : 0
    vdd11=src1<src1[1] ? src1[1]-src1 : 0
    vUD1=sum(vud11,9)
    vDD1=sum(vdd11,9)
    vCMO1=nz((vUD1-vDD1)/(vUD1+vDD1))
    VAR1=0.0
    VAR1:=nz(valpha1*abs(vCMO1)*src1)+(1-valpha1*abs(vCMO1))*nz(VAR1[1])
VAR1=Var_Func1(src1,length)
k = Var_Func1(stoch(close, high, low, periodK), smoothK)
src=k+1000
Var_Func(src,length)=>
    valpha=2/(length+1)
    vud1=src>src[1] ? src-src[1] : 0
    vdd1=src<src[1] ? src[1]-src : 0
    vUD=sum(vud1,9)
    vDD=sum(vdd1,9)
    vCMO=nz((vUD-vDD)/(vUD+vDD))
    VAR=0.0
    VAR:=nz(valpha*abs(vCMO)*src)+(1-valpha*abs(vCMO))*nz(VAR[1])
VAR=Var_Func(src,length)
h0 = hline(1080, "Upper Band", color=#606060)
h1 = hline(1020, "Lower Band", color=#606060)
fill(h0, h1, color=#9915FF, transp=80, title="Background")
plot(k+1000, title="%K", color=#0094FF)
MAvg=Var_Func(src, length)
fark=MAvg*percent*0.01
longStop = MAvg - fark
longStopPrev = nz(longStop[1], longStop)
longStop := MAvg > longStopPrev ? max(longStop, longStopPrev) : longStop
shortStop =  MAvg + fark
shortStopPrev = nz(shortStop[1], shortStop)
shortStop := MAvg < shortStopPrev ? min(shortStop, shortStopPrev) : shortStop
dir = 1
dir := nz(dir[1], dir)
dir := dir == -1 and MAvg > shortStopPrev ? 1 : dir == 1 and MAvg < longStopPrev ? -1 : dir
MT = dir==1 ? longStop: shortStop
OTT=MAvg>MT ? MT*(200+percent)/200 : MT*(200-percent)/200 
plot(showsupport ? MAvg : na, color=#0585E1, linewidth=2, title="Support Line")
OTTC = #B800D9 
pALL=plot(nz(OTT[2]), color=OTTC, linewidth=2, title="OTT", transp=0)
alertcondition(cross(src, OTT[2]), title="Price Cross Alert", message="OTT - Price Crossing!")
alertcondition(crossover(src, OTT[2]), title="Price Crossover Alarm", message="PRICE OVER OTT - BUY SIGNAL!")
alertcondition(crossunder(src, OTT[2]), title="Price Crossunder Alarm", message="PRICE UNDER OTT - SELL SIGNAL!")
buySignalc = crossover(src, OTT[2])
plotshape(buySignalc and showsignalsc ? OTT*0.995 : na, title="Buy", text="Buy", location=location.absolute, style=shape.labelup, size=size.tiny, color=color.green, textcolor=color.white, transp=0)
sellSignallc = crossunder(src, OTT[2])
plotshape(sellSignallc and showsignalsc ? OTT*1.005 : na, title="Sell", text="Sell", location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.red, textcolor=color.white, transp=0)

dummy0 = input(true, title = "=Backtest Inputs=")
FromDay    = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromMonth  = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromYear   = input(defval = 2005, title = "From Year", minval = 2005)
ToDay      = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToMonth    = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToYear     = input(defval = 9999, title = "To Year", minval = 2006)
Start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)
Finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)
Timerange() =>
    time >= Start and time <= Finish ? true : false
if buySignalc
    strategy.entry("Long", strategy.long,when=Timerange())
if sellSignallc
    strategy.entry("Short", strategy.short,when=Timerange())

  
  



अधिक