
गोल्ड क्रॉस ट्रेडिंग रणनीति एक मध्यम-लंबी रेखा प्रवृत्ति ट्रैकिंग रणनीति है। यह स्टॉक मूल्य के एसआर संकेतक और एसआर सिग्नल संकेतक की गणना करके स्टॉक मूल्य की प्रवृत्ति दिशा की पहचान करता है, और एक तंत्रिका नेटवर्क के साथ प्रवृत्ति चैनल को चित्रित करने के लिए प्रवृत्ति ट्रैकिंग संचालन को लागू करता है। जब एसआर संकेतक एसआर सिग्नल को पार करता है तो एक खरीद संकेत उत्पन्न होता है; जब एसआर संकेतक एसआर सिग्नल को पार करता है तो एक बेचने का संकेत उत्पन्न होता है। यह रणनीति स्व-अनुकूली रैखिक रिवर्सल फ़िल्टर तकनीक का भी उपयोग करती है ताकि चैनल वक्र को अनुकूलित किया जा सके, जो गलत संकेतों को प्रभावी ढंग से रोक सके।
इस रणनीति के लिए केंद्रीय संकेतक SR संकेतक और SR सिग्नल संकेतक है. SR संकेतक 8 चक्रों के साथ WMA औसत और SMA औसत का एक द्वितीयक संश्लेषण है. SR सिग्नल संकेतक 20 चक्रों के साथ गणना की गई SR संकेतक है.
यह रणनीति एक न्यूरल नेटवर्क एल्गोरिथ्म का उपयोग करती है जो स्वचालित रूप से स्टॉक की कीमतों के ऊपरी-निचले सीमाओं को रेखांकित करती है, जिससे एक अनुकूली चैनल बन जाता है। ऊपरी सीमाओं को एसआर सूचकांक के ऐतिहासिक अधिकतम मान के रूप में इनपुट किया जाता है, और निचले सीमाओं को ऐतिहासिक न्यूनतम मान के रूप में इनपुट किया जाता है, और फिर चैनल ऊपरी-निचले सीमाओं के रूप में रिवर्जन वक्र की गणना की जाती है। चैनल वक्र अनुकूली रैखिक रिवर्जन सिंक के बाद अधिक चिकनी होते हैं।
जब एसआर संकेतक पर एसआर सिग्नल से गुजरता है, तो एक खरीद संकेत उत्पन्न होता है; जब एसआर संकेतक के नीचे एसआर सिग्नल से गुजरता है, तो एक बेचने का संकेत उत्पन्न होता है। जब एक अतिरिक्त बंद सिग्नल जारी किया जाता है, तो स्टॉक की कीमत और चैनल की ऊपरी और निचली सीमा के बीच का संबंध स्टॉप-लॉस स्टॉप स्थिति का निर्धारण करता है।
यह रणनीति मुख्य रूप से ट्रेंड ट्रैकिंग पर आधारित है और इसमें निम्नलिखित प्रमुख जोखिम शामिल हैंः
जोखिम को नियंत्रित करने के लिए, अन्य रणनीतियों के संयोजन की सिफारिश की जाती है, एकल रणनीति संचालन से बचने के लिए; साथ ही विभिन्न बाजार स्थितियों के लिए पैरामीटर सेटिंग को अनुकूलित करें।
इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः
क्रॉस सिग्नल की स्थिरता में सुधार के लिए एसआर और सिग्नल पैरामीटर का अनुकूलन;
अनुकूलित अनुकूली चैनल लंबाई चक्र, चिकनी चैनल वक्र;
अन्य फ़िल्टरिंग संकेतकों को जोड़ें, ताकि गलत संचालन से बचा जा सके। जैसे कि क्वांटम क्षमता संकेतक, अस्थिरता संकेतक आदि;
गहरी सीखने की एल्गोरिदम के साथ वास्तविक समय में चैनल वक्र का अनुकूलन, अनुकूलनशीलता में सुधार।
गोल्ड क्रॉस ट्रेडिंग रणनीति एक मात्रात्मक रणनीति है जो मध्यम-लंबी प्रवृत्ति को प्रभावी ढंग से ट्रैक करती है। यह प्रवृत्ति की दिशा का सही आकलन करने की उच्च संभावना है, ऑपरेशन जोखिम कम है। एल्गोरिथम मॉडल के अनुकूलन के लिए विशाल स्थान के साथ, यह रणनीति स्टॉक प्रवृत्ति में बदलाव को ट्रैक करने के लिए एक शक्तिशाली उपकरण बनने की उम्मीद है।
/*backtest
start: 2023-11-15 00:00:00
end: 2023-11-22 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//
// ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ //
strategy(title = " Strategy PyramiCover",
shorttitle = "S-PC",
overlay = true,
precision = 8,
calc_on_order_fills = true,
calc_on_every_tick = true,
backtest_fill_limits_assumption = 0,
default_qty_type = strategy.fixed,
default_qty_value = 2,
initial_capital = 10000,
pyramiding=50,
currency = currency.USD,
linktoseries = true)
//
// ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ //
backTestSectionFrom = input(title = "═══════════════ From ═══════════════", defval = true, type = input.bool)
FromMonth = input(defval = 1, title = "Month", minval = 1)
FromDay = input(defval = 1, title = "Day", minval = 1)
FromYear = input(defval = 2014, title = "Year", minval = 2014)
backTestSectionTo = input(title = "════════════════ To ════════════════", defval = true, type = input.bool)
ToMonth = input(defval = 31, title = "Month", minval = 1)
ToDay = input(defval = 12, title = "Day", minval = 1)
ToYear = input(defval = 9999, title = "Year", minval = 2014)
backTestPeriod() => (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))
//
// ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ //
per = input(14,title="🔹 Length")
//
up = 0.0
nup= 0.0
lowl = 0.0
nin = 0.0
//
srl=wma(close,8)
srr = sma(close,8)
sr = 2*srl - srr
//
srsl=wma(close,20)
srsr= sma(close,20)
srsignal = 2*srsl - srsr
//
if sr>srsignal
up := highest(sr,round(150))
nup :=highest(srsignal,round(20))
else
up := highest(srsignal,round(150))
nup := highest(sr,round(20))
//
if sr<srsignal
lowl := lowest(sr,round(150))
nin := lowest(srsignal,round(20))
else
lowl := lowest(sr,round(150))
nin := lowest(srsignal,round(20))
//reg alexgrover
f_reg(src,length)=>
x = bar_index
y = src
x_ = sma(x, length)
y_ = sma(y, length)
mx = stdev(x, length)
my = stdev(y, length)
c = correlation(x, y, length)
slope = c * (my / mx)
inter = y_ - slope * x_
reg = x * slope + inter
reg
//
up_=f_reg(up,per)
lowl_=f_reg(lowl,per)
nup_=f_reg(nup,per)
nin_=f_reg(nin,per)
//
plot(sr, title='SR', color=color.green, linewidth=2, style=plot.style_line,transp=0)
plot(srsignal, title='SR-Signal', color=color.red, linewidth=2, style=plot.style_line,transp=0)
plot(up_, title='Upper limit', color=color.blue, linewidth=3, style=plot.style_line,transp=0)
plot(lowl_, title='Lower limit', color=color.blue, linewidth=3, style=plot.style_line,transp=0)
a=plot(nup_, title='Neuronal Upper', color=color.gray, linewidth=1, style=plot.style_line,transp=0)
b=plot(nin_, title='Neuronal Lower', color=color.gray, linewidth=1, style=plot.style_line,transp=0)
fill(a, b, color=color.gray)
plotshape(crossunder(sr,nup_)? sr+atr(20):na, title="Sell", text="🐻", location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.red, textcolor=color.black,transp=0)
plotshape(crossover(sr,nin_)? sr-atr(20):na, title="Buy", text="🐂", location=location.absolute, style=shape.labelup, size=size.tiny, color=color.green, textcolor=color.black,transp=0)
//
// ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ //
if backTestPeriod()
strategy.entry("Buy", true, 1, when = crossover(sr,nin_))
strategy.entry("Short", false, 1, when = crossunder(sr,nup_))