जिगज़ैग संकेतक पर आधारित ट्रेंड फॉलोइंग ट्रेडिंग रणनीति


निर्माण तिथि: 2024-01-08 10:13:24 अंत में संशोधित करें: 2024-01-08 10:13:24
कॉपी: 0 क्लिक्स: 1089
1
ध्यान केंद्रित करना
1617
समर्थक

जिगज़ैग संकेतक पर आधारित ट्रेंड फॉलोइंग ट्रेडिंग रणनीति

अवलोकन

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

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

इस रणनीति का मुख्य भाग है कि ZigZag सूचक का उपयोग मूल्य के चरम बिंदुओं को निर्धारित करने और मूल्य प्रवृत्ति को प्रदर्शित करने के लिए किया जाता है। ZigZag सूचक उच्च और निम्न कीमतों के एक्सपोनेंशियल मूविंग एवरेज से बना होता है। विशेष रूप से, इसे निम्नलिखित चरणों में बनाया गया हैः

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

  2. यह निर्धारित करने के लिए कि क्या कीमतें ऊपर की ओर जा रही हैं। यानी, क्या वर्तमान मध्य रेखा पिछले K लाइन की मध्य रेखा से अधिक है।

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

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

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

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

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

ZigZag सूचकांक का उपयोग करके मूल्य प्रवृत्तियों को निर्धारित करने और मूल्य चरम बिंदुओं को ट्रैक करने के लिए स्टॉक बनाने के फायदे हैंः

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

  2. इस प्रकार, व्यापारिक संकेतों के आधार पर कीमतों के उच्च और निम्न स्तरों के माध्यम से व्यापार किया जा सकता है, जिससे लाभ की संभावना बढ़ जाती है।

  3. ZigZag लाइनें चिकनी होती हैं और झूठे संकेतों को कम करती हैं।

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

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

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

  1. लंबे समय तक चलने के लिए, बाजार में भारी उतार-चढ़ाव के कारण इसे बंद कर दिया जा सकता है।

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

  3. ट्रेंड ट्रैक करने की रणनीति ट्रेंड की स्थिति पर अधिक निर्भर करती है। यदि कोई आघात होता है, तो यह रणनीति बहुत प्रभावी नहीं होती है।

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

अनुकूलन दिशा

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

  1. बढ़ी हुई रोक-टोक, जैसे कि चलती रोक या मूल्य वापसी की सीमा को रोकना

  2. अन्य संकेतकों के साथ संयोजन में फ़िल्टर करें। जैसे कि संवर्धित ऊर्जा संकेतक, यह सुनिश्चित करने के लिए कि पर्याप्त गतिज ऊर्जा है; या लेन-देन की मात्रा संकेतक, यह सुनिश्चित करने के लिए कि वजन की विशेषता है।

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

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

संक्षेप

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

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