
यह रणनीति एक गतिशील ब्रेकआउट ट्रेडिंग रणनीति है, जो कि ब्रीनिंग बैंड के आधार पर बनाई गई है। यह ब्रीनिंग बैंड के नीचे के क्षेत्र में प्रवेश के अवसरों को खोजने के लिए के-लाइन इकाई फ़िल्टर और रंगीन फ़िल्टर की शर्तों को जोड़ती है। Exit इकाई फ़िल्टर पर आधारित है। यह रणनीति स्वचालित रूप से स्थिति की संख्या और जोखिम का प्रबंधन करती है।
सबसे पहले, बुरीन बैंड की आधार रेखा और नीचे की रेखा को निम्न बिंदु के आधार पर गणना करेंः
src = low
basis = sma(src, length)
dev = mult * stdev(src, length)
lower = basis - dev
जिसमें src निम्न बिंदु है, length गणना चक्र है, आधार औसत रेखा है, dev मानक विचलन है, और lower नीचे की ओर है।
सामान्यतः mult 2 पर सेट होता है, जिसका अर्थ है कि नीचे की पटरी एक मानक अंतर है।
नीति में दो फ़िल्टर शामिल किए गए हैंः
K लाइन फ़िल्टर nbody के आकार और उसके औसत abody का उपयोग करके, केवल तभी ट्रेडिंग सिग्नल उत्पन्न होता है जब nbody abody के आधे से बड़ा होता है।
रंग फ़िल्टर K लाइन बंद होने पर ((close > open) अधिक बार न करें। यह hbox हेड से बचने के लिए एक नकली सफलता है।
जब निम्नलिखित शर्तें पूरी होती हैं तो एक बहुसंकेत उत्पन्न होता हैः
low < lower // 价格突破下轨
close < open or usecol == false // 色彩过滤
nbody > abody / 2 or usebod == false // 实体过滤
जब इकाई का आकार फिर से औसत के आधे से अधिक हो जाता है, तो एक समतल स्थिति उत्पन्न होती हैः
close > open and nbody > abody / 2
रणनीतियाँ जो स्वचालित रूप से व्यापार की संख्या की गणना करती हैं और सूचकांक वृद्धि को प्राप्त करती हैंः
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 : lot[1]
वर्ष, महीना और दिन के लिए शर्तें, केवल निर्दिष्ट दिनांक के भीतर व्यापार करने के लिए प्रतिबंधः
when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))
नीचे की पटरी एक गतिशील समर्थन क्षेत्र है जो बाजार के रुझान के बाद पलटाव के अवसरों को पकड़ने में सक्षम है।
के-लाइन इकाई और रंग निर्णय के संयोजन के साथ, एक प्रभावी फ़िल्टरिंग झूठी दरार।
सूचकांक के आधार पर स्थिति 100% तक बढ़ जाती है, स्वचालित जोखिम प्रबंधन।
दिनांक सीमा सेट करें, जो किसी विशेष समय के लिए बाजार में उतार-चढ़ाव के जोखिम को कम करता है।
जब बाजार लंबे समय तक बैल बाजार में होता है, तो ब्रिन बैंड के मध्य और ऊपरी रेल तेजी से ऊपर जाते हैं, जिससे स्टॉक खाली होने में बहुत समय लगता है।
प्रवृत्ति सूचक निर्णय के साथ संयोजन में, मध्य-लंबी रेखा को बैल बाजार के रूप में देखते समय रणनीति को निलंबित कर सकते हैं, ताकि खाली पदों को लंबे समय तक नहीं रखा जा सके।
नीचे की पटरी के टूटने के बाद, वापस आने और फिर से नीचे की पटरी पर जाने की संभावना है।
स्टॉप लाइन जोड़ें, समर्थन के नीचे एक निश्चित अनुपात में रोकें। या फिर से प्रयास करने के लिए निर्णय तर्क को जोड़ें, तेजी से रोकें।
रिट्रेसमेंट डेटा के आधार पर, उचित समर्थन के नीचे स्टॉप लॉस स्थिति सेट करें।
इकाई फ़िल्टर के लिए abody चक्र को समायोजित करें, COLOR फ़िल्टर का उपयोग करें, आदि। इष्टतम पैरामीटर संयोजन खोजें।
मध्यम और लंबी रेखा प्रवृत्ति निर्णय को बढ़ाएं, रणनीति को रोकें जब यह एक बैल बाजार के रूप में निर्धारित किया जाता है। खाली समय को कम करें।
इस रणनीति को ब्रिनबैंड समर्थन के साथ जोड़ा गया है, जिसमें उच्च संभावना वाले रिबाउंड अवसरों की तलाश के लिए इकाई फ़िल्टर, रंग फ़िल्टर और ब्रेकआउट ट्रेडों की रणनीति तर्क है। वास्तविक अनुप्रयोगों में, पैरामीटर को लगातार अनुकूलित किया जा सकता है, और स्टॉप लॉस और ट्रेंड जजमेंट मॉड्यूल को जोखिम को नियंत्रित करने के लिए जोड़ा जा सकता है, ताकि बेहतर प्रदर्शन किया जा सके।
/*backtest
start: 2022-11-14 00:00:00
end: 2023-11-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2018
//@version=2
strategy(title = "Noro's Wizard Strategy v1.0", shorttitle = "Wizard str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 10)
//Settings
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")
length = input(25, defval = 25, minval = 1, maxval = 200, title = "BB Period")
usebod = input(false, defval = false, title = "Use Body-Filter")
usecol = input(false, defval = false, title = "Use Color-Filter")
showar = input(false, defval = false, title = "Show Arrows")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
//Bollinger
src = low
mult = 2
basis = sma(src, length)
dev = mult * stdev(src, length)
lower = basis - dev
plot(lower, color = lime, linewidth = 3, title="Bottom Line")
//Body Filter
nbody = abs(close - open)
abody = sma(nbody, 10)
body = nbody > abody / 2 or usebod == false
//Signals
up1 = low < lower and (close < open or usecol == false) and body
exit = close > open and nbody > abody / 2
//Arrows
needar = up1 and showar
plotarrow(needar ? 1 : na)
//Trading
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 : lot[1]
if up1
if strategy.position_size < 0
strategy.close_all()
strategy.entry("Long", strategy.long, lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if time > timestamp(toyear, tomonth, today, 23, 59) or exit
strategy.close_all()