यह रणनीति एटीआर स्टॉपलॉस का उपयोग करके गतिशीलता तकनीक पर आधारित एक दिन के अंतराल पर आघात ट्रेडिंग रणनीति है। यह रणनीति स्टेबली के कोरी होंग द्वारा बनाई गई है।
रणनीति गतिशीलता संकेतकों का उपयोग करके प्रवृत्ति की दिशा की पहचान करती है, एटीआर संकेतकों के साथ मिलकर स्टॉप-लॉस लाइन सेट करती है, जिससे कम खरीद और उच्च बिक्री के लिए आघात ट्रेडिंग रणनीति प्राप्त होती है।
पहले कोड में समय सीमा निर्धारित की जाती है।
और फिर सूचकांक भाग, जो निम्नलिखित सूचकांकों की गणना करता हैः
इस प्रवृत्ति के लिए मुख्य तर्क यह हैः
यदि क्लोज़ पहले गिरने वाली स्टॉप लाइन वीस्टॉप से अधिक है, तो इसे अपट्रेंड के रूप में माना जाता है; यदि क्लोज़ पहले बढ़ने वाली स्टॉप लाइन वीस्टॉप से कम है, तो इसे डाउनट्रेंड के रूप में माना जाता है।
रुझान में बदलाव के दौरान स्टॉप-लॉस लाइन की स्थिति को समायोजित करें
विशेष रूप से, जब यह ऊपर की ओर बढ़ता है, तो स्टॉप लॉस लाइन को एटीआर को घटाकर पूर्व के लाइन के उच्चतम मूल्य के रूप में परिभाषित किया जाता है; जब यह नीचे की ओर बढ़ता है, तो स्टॉप लॉस लाइन को एटीआर के मूल्य के साथ पूर्व के लाइन के निम्नतम मूल्य के रूप में परिभाषित किया जाता है।
यह ट्रेंड ट्रैकिंग स्टॉप लॉस को लागू करता है।
ट्रेडिंग नियमों के हिस्से में, स्टॉपलॉस लाइन को तोड़ने के लिए स्थिति खोलने पर अधिक कास्ट करें।
इस रणनीति के निम्नलिखित फायदे हैं:
इस रणनीति के कुछ जोखिम भी हैं:
यह निम्नलिखित तरीकों से अनुकूलित किया जा सकता हैः
इस रणनीति को निम्नलिखित दिशाओं में अनुकूलित किया जा सकता हैः
विभिन्न एटीआर मापदंडों का परीक्षण करें और सबसे अच्छा संयोजन खोजें। लाभ-जोखिम अनुपात का आकलन करने के लिए कई संयोजनों का परीक्षण करें।
एटीआर के आधार पर अस्थिरता सूचक के साथ संयोजन में स्टॉप-लॉस लाइनों को अनुकूलित करना। अस्थिरता सूचक को पेश किया जा सकता है, जब अस्थिरता बढ़ जाती है तो स्टॉप-लॉस को उचित रूप से ढीला किया जा सकता है।
प्रवृत्ति फ़िल्टरिंग के साथ, यह अस्थिर बाजारों से बचने के लिए आवश्यक नहीं है। आप प्रवृत्ति के आंकलन के संकेतकों को बढ़ा सकते हैं, केवल जब प्रवृत्ति स्पष्ट हो तो स्थिति खोलें।
बढ़ी हुई स्थिति प्रबंधन प्रणाली। स्थिति को पूंजी उपयोगिता, लगातार स्टॉप लॉस की संख्या आदि के आधार पर समायोजित किया जा सकता है।
रात के अंतराल के जोखिम नियंत्रण को बढ़ाएं। रात के अंतराल की कीमतों को कम करने के लिए बंद होने से पहले सक्रिय रूप से बंद हो सकता है।
इस रणनीति के रूप में एक आधार दिन के भीतर उतार-चढ़ाव व्यापार रणनीति, समग्र सोच स्पष्ट है, गतिशीलता तकनीक का उपयोग प्रवृत्ति का न्याय करने के लिए, और एटीआर सूचक का उपयोग करने के लिए स्लाइड बिंदु ट्रैकिंग रोक, जोखिम को प्रभावी ढंग से नियंत्रित कर सकते हैं.
अनुकूलन के लिए बहुत जगह है, और कई पहलुओं में सुधार किया जा सकता है, जैसे कि प्रवृत्ति का आकलन, स्टॉप-लॉस मोड और स्थिति प्रबंधन, ताकि रणनीति को वास्तविक व्यापार के लिए अधिक उपयुक्त बनाया जा सके। कुल मिलाकर, यह रणनीति एक अच्छा आधारभूत ढांचा प्रदान करती है।
/*backtest
start: 2023-01-29 00:00:00
end: 2024-02-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("BTC Swinger", overlay=true, commission_value = 0.25, default_qty_type=strategy.percent_of_equity, default_qty_value = 100)
/////////////////////////////////////////////////////////////
//START - SET DATE RANGE
// === BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1)
FromDay = input(defval = 1, title = "From Day", minval = 1)
FromYear = input(defval = 2010, title = "From Year")
ToMonth = input(defval = 12, title = "To Month", minval = 1)
ToDay = input(defval = 31, title = "To Day", minval = 1)
ToYear = input(defval = 2020, title = "To Year")
startDate = time > timestamp(FromYear, FromMonth, FromDay, 1, 1)
endDate = time < timestamp(ToYear, ToMonth, ToDay, 23, 59)
withinTimeRange = true
/////////////////////////////////////////////////////////////
//END - SET DATE RANGE
/////////////////////////////////////////////////////////////
//START - INDICATORS
length = input(3)
mult = input(1, minval = 0.01)
atr_ = atr(length)
max1 = max(nz(max_[1]), close)
min1 = min(nz(min_[1]), close)
is_uptrend_prev = nz(is_uptrend[1], true)
stop = is_uptrend_prev ? max1 - mult * atr_ : min1 + mult * atr_
vstop_prev = nz(vstop[1])
vstop1 = is_uptrend_prev ? max(vstop_prev, stop) : min(vstop_prev, stop)
is_uptrend = close - vstop1 >= 0
is_trend_changed = is_uptrend != is_uptrend_prev
max_ = is_trend_changed ? close : max1
min_ = is_trend_changed ? close : min1
vstop = is_trend_changed ? is_uptrend ? max_ - mult * atr_ : min_ + mult * atr_ : vstop1
plot(vstop, color = is_uptrend ? yellow : red, style=circles, linewidth=2)
/////////////////////////////////////////////////////////////
//END - INDICATORS
/////////////////////////////////////////////////////////////
//START - TRADING RULES
direction = input(defval=1, title = "Strategy Direction", minval=-1, maxval=1)
strategy.risk.allow_entry_in(direction == 0 ? strategy.direction.all : (direction < 0 ? strategy.direction.short : strategy.direction.long))
condition1 = close > vstop and withinTimeRange
condition2 = close < vstop and withinTimeRange
strategy.entry("BUY", strategy.long, when = condition1)
strategy.entry("SELL", strategy.short, when = condition2)
/////////////////////////////////////////////////////////////
//END - TRADING RULES