इस लेख में गतिशील मूल्य चैनलों पर आधारित एक अल्पकालिक व्यापार रणनीति पेश की गई है। यह गतिशील मूल्य चैनलों और चैनल ब्रेकआउट पर ट्रेडों की गणना करके प्रवृत्ति की दिशा का न्याय करता है।
यह रणनीति निम्नलिखित तर्क पर आधारित हैः
उच्चतम और निम्नतम कीमतों का उपयोग करके गतिशील मूल्य चैनलों की गणना करें। ऊपरी बैंड उच्चतम मूल्य और चैनल मध्य बिंदु का औसत है। निचला बैंड मध्य बिंदु को न्यूनतम मूल्य और मध्य बिंदु के बीच के अंतर को घटाकर है।
जब कीमत ऊपरी बैंड से ऊपर टूट जाती है, तो एक अपट्रेंड शुरू होता है। जब कीमत निचले बैंड से नीचे टूट जाती है, तो एक डाउनट्रेंड शुरू होता है।
अपट्रेंड में, जब दो लगातार मंदी वाले पट्टी दिखाई दें, तब लॉन्ग जाएं। डाउनट्रेंड में, जब दो लगातार तेजी वाले पट्टी दिखाई दें, तब शॉर्ट करें।
बाजार की गति का पीछा करने के लिए प्रति-प्रवृत्ति प्रविष्टियों पर विचार करें। उदाहरण के लिए, अपट्रेंड में छोटा और डाउनट्रेंड में लंबा।
लाभ में लॉक करने के लिए प्रवेश मूल्य के एक्स% के रूप में लाभ प्रतिशत सेट करें।
इस रणनीति के लाभों में निम्नलिखित शामिल हैंः
गतिशील चैनल बेहतर रुझान आकलन के लिए वास्तविक समय में बाजार परिवर्तनों को प्रतिबिंबित करते हैं।
रुझानों और ब्रेकआउट को मिलाकर झूठे ब्रेकआउट को फ़िल्टर किया जाता है।
काउंटर-ट्रेंड प्रविष्टियां बाजार की गति से लाभान्वित होती हैं।
लाभ लेने वाले स्टॉप प्रभावी ढंग से जोखिमों को नियंत्रित करते हैं।
तर्क सरल और स्पष्ट है ताकि इसे आसानी से लागू किया जा सके।
कुछ जोखिमों पर भी विचार किया जाना चाहिए:
अस्थिर बाजारों के दौरान चैनल विफल हो सकते हैं। मजबूती के लिए मापदंडों को समायोजित करें।
विपरीत रुझान वाले ट्रेड नुकसान के प्रति अतिसंवेदनशील होते हैं।
नकली ब्रेकआउट खराब ट्रेडों का कारण बन सकता है। रुझानों के साथ वैधता की पुष्टि करें।
खर्चों को नियंत्रित करने के लिए अतिव्यापार से बचें।
यह रणनीति गतिशील चैनलों, ब्रेकआउट और लाभ लेने को एकीकृत करती है। उचित ट्यूनिंग के साथ, यह एक प्रभावी अल्पकालिक ट्रेडिंग उपकरण हो सकता है। लेकिन व्यापारियों को जोखिम नियंत्रण का ध्यान रखना चाहिए और इसे अपनी शैली के अनुरूप बनाना चाहिए।
/*backtest start: 2022-09-09 00:00:00 end: 2023-09-15 00:00:00 period: 2d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Noro's Bands Scalper Strategy v1.1", shorttitle = "Scalper str 1.1", 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, %") needct = input(false, defval = false, title = "Counter-trend entry") 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 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 sma = sma(close, 20) smatrend = close > sma ? 1 : close < sma ? -1 : smatrend[1] trend = close < ld and high < hd ? -1 : close > hd and low > ld ? 1 : trend[1] //Lines colo = needbb == false ? na : black plot(hd, color = colo, linewidth = 1, transp = 0, title = "High band") plot(center, color = colo, linewidth = 1, transp = 0, title = "center") plot(ld, color = colo, linewidth = 1, transp = 0, title = "Low band") //Background col = needbg == false ? na : trend == 1 ? lime : red bgcolor(col, transp = 80) //Signals bar = close > open ? 1 : close < open ? -1 : 0 up7 = trend == 1 and bar == -1 and bar[1] == -1 ? 1 : 0 dn7 = trend == 1 and bar == 1 and bar[1] == 1 and close > strategy.position_avg_price * (100 + takepercent) / 100 ? 1 : 0 up8 = trend == -1 and bar == -1 and bar[1] == -1 and close < strategy.position_avg_price * (100 - takepercent) / 100 ? 1 : 0 dn8 = trend == -1 and bar == 1 and bar[1] == 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)