एकतरफा प्रवृत्ति झटका सफलता रणनीति


निर्माण तिथि: 2024-01-18 14:59:30 अंत में संशोधित करें: 2024-01-18 14:59:30
कॉपी: 1 क्लिक्स: 614
1
ध्यान केंद्रित करना
1617
समर्थक

एकतरफा प्रवृत्ति झटका सफलता रणनीति

अवलोकन

सिंगल साइड ट्रेंड शॉक ब्रेकआउट स्ट्रैटेजी (Single Side Trend Shock Breakout Strategy) एक ब्रेकआउट रणनीति है जो मूल्य चैनल और प्रवृत्ति के निर्णय का उपयोग करती है। इसका उद्देश्य प्रवृत्ति की दिशा की पहचान करना है, जो कि हिलाव क्षेत्र में प्रवेश करना है और सेट किए गए लाभ लक्ष्य को पूरा करने के बाद बाहर निकलना है।

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

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

प्रवृत्ति का न्याय करते समय, रणनीति यह जांचती है कि क्या हाल ही में कई K लाइनें पूरी तरह से चैनल के ऊपर बंद हैं (बहुमुखी सिग्नल) या चैनल के नीचे (शून्य सिग्नल) । जब प्रवृत्ति का न्याय किया जाता है, तो रणनीति कीमत के झटके का इंतजार करती है, चैनल के ऊपर या नीचे के पास एक संकेत का निर्माण करती है, और रिवर्स प्रवेश के तरीके से प्रवेश करती है।

इसके अलावा, रणनीति एक K-लाइन इकाई को तोड़ने के लिए निर्णय लेती है, जो एक पूरक प्रवेश संकेत के रूप में कार्य करती है। जब इकाई की लंबाई औसत इकाई की लंबाई के एक निश्चित गुणांक को तोड़ती है, तो यह संकेत उत्पन्न करती है। रणनीति प्रवेश के बाद एक लाभ लक्ष्य निर्धारित करती है और जब कीमत लक्ष्य तक पहुंचती है तो सक्रिय रूप से रोक देती है।

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

इस रणनीति के कुछ फायदे हैं:

  1. प्रवृत्ति की दिशा का पता लगाने के लिए मूल्य चैनल का उपयोग करना, झूठे टूटने की संभावना को कम करता है
  2. रिवर्स इनपुट, ट्रेंड के उतार-चढ़ाव के दौरान लाभ
  3. एंटिटी ब्रेकआउट, प्रवेश की सटीकता में सुधार के लिए एक पूरक संकेत
  4. लक्ष्य सेट करें और सक्रिय रूप से रोकें

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

इस रणनीति के कुछ जोखिम भी हैं:

  1. मूल्य चैनल मापदंडों को गलत तरीके से सेट किया गया है, जिससे कि चैनल बहुत बड़ा या छोटा हो सकता है
  2. मजबूत रुझानों में रिवर्स ऑपरेशन से अधिक नुकसान हो सकता है
  3. एंटिटी के माध्यम से घुसपैठ के कारण झूठे सिग्नल का निर्माण होता है
  4. गलत तरीके से सेट की गई स्टॉपर से हो सकता है मुनाफे का नुकसान

जोखिम को कम करने के लिए, पैरामीटर को कम किया जा सकता है, मजबूत रुझानों में रिवर्स पोजीशन से बचा जा सकता है, स्टॉप लॉजिक को अनुकूलित किया जा सकता है, आदि।

अनुकूलन दिशा

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

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

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2024-01-10 00:00:00
end: 2024-01-17 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/


//@version=2
strategy("Noro's Bands Scalper Strategy v1.5", shorttitle = "Scalper str 1.5", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
takepercent = input(0, defval = 0, minval = 0, maxval = 1000, title = "take, %")
needbe = input(true, defval = true, title = "Bands Entry")
needct = input(false, defval = false, title = "Counter-trend entry")
bodylen = input(10, defval = 10, minval = 0, maxval = 50, title = "Body length")
trb = input(1, defval = 1, minval = 1, maxval = 5, title = "Trend bars")
len = input(20, defval = 20, minval = 2, maxval = 200, title = "Period")
needbb = input(true, defval = true, title = "Show Bands")
needbg = input(true, defval = true, title = "Show Background")
src = close

//PriceChannel 1
lasthigh = highest(src, len)
lastlow = lowest(src, len)
center = (lasthigh + lastlow) / 2

//Distance
dist = abs(src - center)
distsma = sma(dist, len)
hd = center + distsma
ld = center - distsma
hd2 = center + distsma * 2
ld2 = center - distsma * 2

//Trend
chd = close > hd
cld = close < ld
uptrend = trb == 1 and chd ? 1 : trb == 2 and chd and chd[1] ? 1 : trb == 3 and chd and chd[1] and chd[2] ? 1 : trb == 4 and chd and chd[1] and chd[2] and chd[3] ? 1 : trb == 5 and chd and chd[1] and chd[2] and chd[3] and chd[4] ? 1 : 0
dntrend = trb == 1 and cld ? 1 : trb == 2 and cld and cld[1] ? 1 : trb == 3 and cld and cld[1] and cld[2] ? 1 : trb == 4 and cld and cld[1] and cld[2] and cld[3] ? 1 : trb == 5 and cld and cld[1] and cld[2] and cld[3] and cld[4] ? 1 : 0
trend = dntrend == 1 and high < center ? -1 : uptrend == 1 and low > center ? 1 : trend[1]

//trend = close < ld and high < center ? -1 : close > hd and low > center ? 1 : trend[1]

//Lines
colo = needbb == false ? na : black
plot(hd2, color = colo, linewidth = 1, transp = 0, title = "High band 2")
plot(hd, color = colo, linewidth = 1, transp = 0, title = "High band 1")
plot(center, color = colo, linewidth = 1, transp = 0, title = "center")
plot(ld, color = colo, linewidth = 1, transp = 0, title = "Low band 1")
plot(ld2, color = colo, linewidth = 1, transp = 0, title = "Low band 2")

//Background
col = needbg == false ? na : trend == 1 ? lime : red
bgcolor(col, transp = 80)

//Body
body = abs(close - open)
smabody = ema(body, 30) / 10 * bodylen

//Signals
bar = close > open ? 1 : close < open ? -1 : 0
up7 = trend == 1 and ((bar == -1 and bar[1] == -1) or (body > smabody and bar == -1)) ? 1 : 0
dn7 = trend == 1 and ((bar == 1 and bar[1] == 1) or (close > hd and needbe == true)) and close > strategy.position_avg_price * (100 + takepercent) / 100 ? 1 : 0
up8 = trend == -1 and ((bar == -1 and bar[1] == -1) or (close < ld2 and needbe == true)) and close < strategy.position_avg_price * (100 - takepercent) / 100 ? 1 : 0
dn8 = trend == -1 and ((bar == 1 and bar[1] == 1) or (body > smabody and bar == 1)) ? 1 : 0

if up7 == 1 or up8 == 1 
    strategy.entry("Long", strategy.long, needlong == false ? 0 : trend == -1 and needct == false ? 0 : na)

if dn7 == 1 or dn8 == 1
    strategy.entry("Short", strategy.short, needshort == false ? 0 : trend == 1 and needct == false ? 0 : na)