गति-आधारित स्विंग ट्रेडिंग रणनीति


निर्माण तिथि: 2024-02-05 10:44:19 अंत में संशोधित करें: 2024-02-05 10:44:19
कॉपी: 0 क्लिक्स: 385
1
ध्यान केंद्रित करना
1234
समर्थक

गति-आधारित स्विंग ट्रेडिंग रणनीति

अवलोकन

यह रणनीति एटीआर स्टॉपलॉस का उपयोग करके गतिशीलता तकनीक पर आधारित एक दिन के अंतराल पर आघात ट्रेडिंग रणनीति है। यह रणनीति स्टेबली के कोरी होंग द्वारा बनाई गई है।

रणनीति गतिशीलता संकेतकों का उपयोग करके प्रवृत्ति की दिशा की पहचान करती है, एटीआर संकेतकों के साथ मिलकर स्टॉप-लॉस लाइन सेट करती है, जिससे कम खरीद और उच्च बिक्री के लिए आघात ट्रेडिंग रणनीति प्राप्त होती है।

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

पहले कोड में समय सीमा निर्धारित की जाती है।

और फिर सूचकांक भाग, जो निम्नलिखित सूचकांकों की गणना करता हैः

  • atr ((): एटीआर सूचकांक की गणना, रोक को सेट करने के लिए;
  • max/min: एक K लाइन पर सबसे ज्यादा/सबसे कम कीमत दर्ज करें;
  • is_uptrend: यह पता लगाने के लिए कि क्या कोई प्रवृत्ति बढ़ रही है;
  • प्रवेशः स्टॉप लॉस लाइन;

इस प्रवृत्ति के लिए मुख्य तर्क यह हैः

यदि क्लोज़ पहले गिरने वाली स्टॉप लाइन वीस्टॉप से अधिक है, तो इसे अपट्रेंड के रूप में माना जाता है; यदि क्लोज़ पहले बढ़ने वाली स्टॉप लाइन वीस्टॉप से कम है, तो इसे डाउनट्रेंड के रूप में माना जाता है।

रुझान में बदलाव के दौरान स्टॉप-लॉस लाइन की स्थिति को समायोजित करें

विशेष रूप से, जब यह ऊपर की ओर बढ़ता है, तो स्टॉप लॉस लाइन को एटीआर को घटाकर पूर्व के लाइन के उच्चतम मूल्य के रूप में परिभाषित किया जाता है; जब यह नीचे की ओर बढ़ता है, तो स्टॉप लॉस लाइन को एटीआर के मूल्य के साथ पूर्व के लाइन के निम्नतम मूल्य के रूप में परिभाषित किया जाता है।

यह ट्रेंड ट्रैकिंग स्टॉप लॉस को लागू करता है।

ट्रेडिंग नियमों के हिस्से में, स्टॉपलॉस लाइन को तोड़ने के लिए स्थिति खोलने पर अधिक कास्ट करें।

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

इस रणनीति के निम्नलिखित फायदे हैं:

  1. प्रवृत्ति की दिशा का आकलन करने के लिए गतिशीलता तकनीक का उपयोग करें, समय पर मोड़ को पकड़ें और झूठे ब्रेक से बचें।
  2. एटीआर स्टॉप लॉस उच्चतम/न्यूनतम कीमतों को ट्रैक करता है, जो जोखिम को अच्छी तरह से नियंत्रित करता है।
  3. रणनीति तर्क सरल और स्पष्ट है और इसे लागू करना आसान है।
  4. ट्रेडों के बीच कम और ज्यादा खरीदने और बेचने के लिए स्पैम ट्रेडिंग की अनुमति है।

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

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

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

यह निम्नलिखित तरीकों से अनुकूलित किया जा सकता हैः

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

अनुकूलन दिशा

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

  1. विभिन्न एटीआर मापदंडों का परीक्षण करें और सबसे अच्छा संयोजन खोजें। लाभ-जोखिम अनुपात का आकलन करने के लिए कई संयोजनों का परीक्षण करें।

  2. एटीआर के आधार पर अस्थिरता सूचक के साथ संयोजन में स्टॉप-लॉस लाइनों को अनुकूलित करना। अस्थिरता सूचक को पेश किया जा सकता है, जब अस्थिरता बढ़ जाती है तो स्टॉप-लॉस को उचित रूप से ढीला किया जा सकता है।

  3. प्रवृत्ति फ़िल्टरिंग के साथ, यह अस्थिर बाजारों से बचने के लिए आवश्यक नहीं है। आप प्रवृत्ति के आंकलन के संकेतकों को बढ़ा सकते हैं, केवल जब प्रवृत्ति स्पष्ट हो तो स्थिति खोलें।

  4. बढ़ी हुई स्थिति प्रबंधन प्रणाली। स्थिति को पूंजी उपयोगिता, लगातार स्टॉप लॉस की संख्या आदि के आधार पर समायोजित किया जा सकता है।

  5. रात के अंतराल के जोखिम नियंत्रण को बढ़ाएं। रात के अंतराल की कीमतों को कम करने के लिए बंद होने से पहले सक्रिय रूप से बंद हो सकता है।

संक्षेप

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

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

रणनीति स्रोत कोड
/*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