रणनीति का पालन करने वाला ज़िगज़ैग रुझान

लेखक:चाओझांग, दिनांकः 2024-01-08 10:13:24
टैगः

img

अवलोकन

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

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

इस रणनीति का मूल मूल्य के चरम बिंदुओं का पता लगाने और मूल्य के रुझानों को प्रदर्शित करने के लिए ज़िगज़ैग संकेतक का उपयोग करना है। ज़िगज़ैग संकेतक में उच्च और निम्न कीमतों का घातीय चलती औसत (ईएमए) होता है। विशेष रूप से, इसमें निम्नलिखित चरण होते हैंः

  1. बंद कीमतों के घातीय चलती औसत ईएमए की गणना करें, जिसमें तीन चलती औसत रेखाएं शामिल हैंः तेज रेखा, मध्य रेखा और धीमी रेखा।

  2. यह आंकलन करें कि क्या कीमतें ऊपर की ओर बढ़ रही हैं, यानी क्या मौजूदा मध्य रेखा पिछली के-लाइन की मध्य रेखा से अधिक है।

  3. यदि यह वर्तमान में ऊपर की ओर प्रवृत्ति में है, तो पता लगाया चक्र के भीतर निम्न बिंदुओं की पिछली लहर की शुरुआत से गिने गए सबसे कम मूल्य को ZigZag के मूल्य के रूप में खोजें।

  4. यदि यह वर्तमान में एक गिरावट की प्रवृत्ति में है, तो पता लगाया चक्र के भीतर उच्च बिंदुओं की पिछली लहर की शुरुआत से गिने गए उच्चतम मूल्य को ZigZag के मूल्य के रूप में खोजें।

  5. इस प्रकार, मूल्य उतार-चढ़ाव के चरम बिंदुओं को प्रतिबिंबित करने वाला ZigZag संकेतक बनता है।

इस आधार पर, हम मूल्य प्रवृत्ति का न्याय करने के लिए संदर्भ के रूप में ज़िगज़ैग रेखा का उपयोग करते हैं। अर्थात, जब मूल्य बढ़ता है और ज़िगज़ैग संकेतक रेखा को तोड़ता है, तो हम लंबे समय तक जाते हैं; जब मूल्य गिरता है और ज़िगज़ैग संकेतक रेखा को तोड़ता है, तो हम शॉर्ट जाते हैं।

लाभ विश्लेषण

स्थिति की स्थापना के रूप में मूल्य रुझानों और मूल्य चरम सीमाओं को निर्धारित करने के लिए ZigZag संकेतक का उपयोग करने के फायदे हैंः

  1. बाजार के शोर को प्रभावी ढंग से फ़िल्टर कर सकता है और प्रमुख रुझानों को पकड़ सकता है।

  2. नए उच्च और निम्न के ब्रेकआउट पर स्थापित ट्रेडिंग सिग्नल कुशलतापूर्वक लाभ कमा सकते हैं।

  3. ज़िगज़ैग लाइनें अपेक्षाकृत चिकनी होती हैं, जो झूठे संकेतों को कम कर सकती हैं।

  4. ZigZag मापदंडों को समायोजित करके रणनीतियों को अनुकूलित करना आसान है।

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

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

  1. बाजार में हिंसक उतार-चढ़ाव के कारण दीर्घकालिक चलना फंस सकता है। इस समय समय पर स्टॉप लॉस की आवश्यकता होती है।

  2. ZigZag संकेतक मापदंडों के प्रति संवेदनशील होते हैं। अनुचित सेटिंग्स व्यापार के अवसरों को याद कर सकती हैं या झूठे संकेत उत्पन्न कर सकती हैं। मापदंडों का परीक्षण और उचित रूप से अनुकूलित करने की आवश्यकता है।

  3. ट्रेंड ट्रैकिंग रणनीतियाँ ट्रेंडिंग बाजारों पर अधिक निर्भर करती हैं। यदि साइडवेज रेंज लिमिटेड है, तो इस रणनीति की प्रभावशीलता खराब है।

उपरोक्त जोखिमों के जवाब में, हम एकल हानि को नियंत्रित करने के लिए स्टॉप लॉस तंत्र सेट कर सकते हैं; साथ ही, पूर्ण स्थिति की तलाश के बजाय स्थिति के आकार को समायोजित करें; अंत में, विभिन्न प्रकार के रणनीति पोर्टफोलियो को मेल करें।

अनुकूलन दिशा

हम इस रणनीति को निम्नलिखित पहलुओं में और अधिक अनुकूलित कर सकते हैंः

  1. एक स्टॉप लॉस तंत्र जोड़ें. उदाहरण के लिए, मूल्य पुनरावृत्ति आयाम के लिए स्टॉप लॉस या स्टॉप लॉस चलाने के लिए सेट करें.

  2. स्थिति फ़िल्टर के लिए अन्य संकेतकों के साथ संयोजन करें। उदाहरण के लिए, पर्याप्त गति सुनिश्चित करने के लिए गति संकेतकों को बढ़ाएं; या उच्च व्यापारिक मात्रा सुनिश्चित करने के लिए व्यापारिक मात्रा संकेतकों।

  3. विभिन्न बाजार परिवेशों (जैसे बैल और भालू बाजार) के अनुसार अलग-अलग पैरामीटर कॉन्फ़िगरेशन अपनाएं।

  4. सर्वोत्तम पैरामीटर संयोजन खोजने के लिए विभिन्न ईएमए लाइन मापदंडों का परीक्षण करें।

निष्कर्ष

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


/*backtest
start: 2023-12-31 00:00:00
end: 2024-01-07 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title = "Noro's ZigTrend Strategy v1.0", shorttitle = "ZigTrend 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")
length = input(4)
ExtremeDetection = input(4)
src = input(close)
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")

//ZigZag
f_zz(_length, _detection)=>
    _hls = ema(ema(ema(src, _length), round(_length*0.66)), round(_length*0.33))
    _isRising = _hls >= _hls[1]
    _zigzag = _isRising and not _isRising[1] ? lowest(_detection) :  not _isRising and _isRising[1] ? highest(_detection) : na
zigzag = f_zz(length, ExtremeDetection)
plot(zigzag, color=black, linewidth=2)

//Signals
up = close > zigzag
dn = close < zigzag

//Trading
lot = 0.0
lot := strategy.position_size != strategy.position_size[1] ? strategy.equity / close * capital / 100 : lot[1]
if up
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot)

if dn
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot)


अधिक