इस रणनीति का मुख्य विचार मूल्य प्रवृत्तियों की पहचान करने के लिए समतल हेकेन आशि की गणना करने के लिए समतल चलती औसत का उपयोग करना है, और जब कीमत में समतल हेकेन आशि के साथ स्वर्ण क्रॉस होता है, तो लंबा जाना, और जब मृत्यु क्रॉस होता है तो छोटा जाना।
रणनीति में सबसे पहले एक फलन smoothedMovingAvg को smoothed moving average की गणना के लिए परिभाषित किया गया है, जो पिछले अवधि के चलती औसत मूल्य और वर्तमान अवधि के चलती औसत की गणना के लिए नवीनतम मूल्य का उपयोग कुछ भारों के आधार पर करता है।
फिर यह ओपन, हाई, लो और क्लोज प्राइस के आधार पर हेकेन आशि क्लोजिंग प्राइस की गणना करने के लिए एक फंक्शन getHAClose को परिभाषित करता है।
मुख्य रणनीति तर्क में, यह पहले विभिन्न अवधियों की मूल कीमतों को प्राप्त करता है, फिर सुचारू चलती औसत की गणना करने के लिए smoothedMovingAvg फ़ंक्शन का उपयोग करता है, और फिर getHAClose फ़ंक्शन के माध्यम से सुचारू हेकेन एशी समापन मूल्य की गणना करता है।
अंत में, जब कीमत समतल हेकेन आशि समापन मूल्य से ऊपर जाती है, तो यह लंबी जाती है, और जब कीमत इसके नीचे जाती है, तो स्थिति बंद हो जाती है। जब कीमत समतल हेकेन आशि समापन मूल्य से नीचे जाती है, तो यह छोटी हो जाती है, और जब कीमत इसके ऊपर जाती है, तो स्थिति बंद हो जाती है।
इस रणनीति का सबसे बड़ा लाभ यह है कि चिकनी हुई हेकेन आशि की गणना करने के लिए चिकनी हुई चलती औसत का उपयोग करके, यह अधिक सटीक रूप से मूल्य रुझानों का निर्धारण कर सकता है और हिचकिचाहट वाले समय के दौरान गलत संकेत उत्पन्न करने से बचने के लिए कुछ शोर को फ़िल्टर कर सकता है। इसके अलावा, हेकेन आशि के पास खुद रुझानों को उजागर करने का लाभ है, जो कीमतों के साथ संयुक्त होने पर निर्णय की सटीकता में और सुधार कर सकता है।
इस रणनीति के मुख्य जोखिम निम्नलिखित हैंः
चिकनाई के अनुचित पैरामीटर सेटिंग्स के कारण रणनीति मूल्य उलट अवसरों को याद कर सकती है या गलत संकेत उत्पन्न कर सकती है। बार-बार बैकटेस्टिंग और अनुकूलन के माध्यम से इष्टतम मापदंडों को खोजने की आवश्यकता है।
जब कीमतें तेजी से उतार-चढ़ाव करती हैं, तो चिकनी चलती औसत मूल्य परिवर्तनों से पीछे रह सकती है, जिसके परिणामस्वरूप स्टॉप लॉस ट्रिगर होता है या रिवर्स के अवसरों को याद किया जाता है। इस समय जोखिम को कम करने के लिए स्थिति का आकार कम करना आवश्यक है।
उपरोक्त जोखिमों से निपटने के लिए जोखिम को कम करने और रणनीति की स्थिरता में सुधार के लिए समतलता मापदंडों को समायोजित करने, स्टॉप लॉस तंत्र की शुरूआत, प्रति व्यापार स्थिति के आकार को कम करने जैसे तरीकों का उपयोग किया जा सकता है।
इस रणनीति को निम्नलिखित पहलुओं में भी अनुकूलित किया जा सकता हैः
बाजार में अस्थिरता बढ़ने पर स्वचालित रूप से पैरामीटर समायोजित करने के लिए अनुकूलनशील चिकनाई मापदंडों को पेश करें।
मूल्य समेकन के दौरान गलत संकेत जारी करने से बचने के लिए फिल्टर के रूप में अन्य संकेतकों के साथ संयोजन करें। उदाहरण एमएसीडी, केडी आदि हैं।
प्रति व्यापार हानि को नियंत्रित करने के लिए स्टॉप लॉस तंत्र जोड़ें। प्रतिशत स्टॉप लॉस या अस्थिरता स्टॉप लॉस सेट किया जा सकता है।
सबसे अधिक लाभ वाले उत्पादों और सत्रों पर ध्यान केंद्रित करने के लिए ट्रेडिंग उत्पादों, ट्रेडिंग सत्रों आदि का अनुकूलन करें।
उपरोक्त अनुकूलन के माध्यम से, रणनीति के वक्र फिट जोखिम को और कम किया जा सकता है और रणनीति की अनुकूलन क्षमता और स्थिरता में सुधार किया जा सकता है।
इस रणनीति का समग्र तर्क स्पष्ट और समझने में आसान है। मूल्य रुझानों को निर्धारित करने और तदनुसार लंबी और छोटी स्थिति बनाने के लिए चिकनी हेकेन आशी की गणना करके। इसका सबसे बड़ा लाभ कुछ शोर को फ़िल्टर करने और सिग्नल निर्णय की सटीकता में सुधार करने में सक्षम है। लेकिन पैरामीटर अनुकूलन में कुछ कठिनाइयां और तेजी से उलट जाने के जोखिम भी हैं। इसे गहन शोध के लायक बनाने के लिए अनुकूली तंत्रों की शुरुआत, संकेतक संयोजनों का विस्तार आदि के माध्यम से आगे अनुकूलन किया जा सकता है।
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Smoothed Heiken Ashi Strategy", overlay=true) // Inputs g_TimeframeSettings = 'Display & Timeframe Settings' time_frame = input.timeframe(title='Timeframe for HA candle calculation', defval='', group=g_TimeframeSettings) g_SmoothedHASettings = 'Smoothed HA Settings' smoothedHALength = input.int(title='HA Price Input Smoothing Length', minval=1, maxval=500, step=1, defval=10, group=g_SmoothedHASettings) // Define a function for calculating the smoothed moving average smoothedMovingAvg(src, len) => smma = 0.0 smma := na(smma[1]) ? ta.sma(src, len) : (smma[1] * (len - 1) + src) / len smma // Function to get Heiken Ashi close getHAClose(o, h, l, c) => ((o + h + l + c) / 4) // Calculate smoothed HA candles smoothedHAOpen = request.security(syminfo.tickerid, time_frame, open) smoothedMA1close = smoothedMovingAvg(request.security(syminfo.tickerid, time_frame, close), smoothedHALength) smoothedHAClose = getHAClose(smoothedHAOpen, smoothedHAOpen, smoothedHAOpen, smoothedMA1close) // Plot Smoothed Heiken Ashi candles plotcandle(open=smoothedHAOpen, high=smoothedHAOpen, low=smoothedHAOpen, close=smoothedHAClose, color=color.new(color.blue, 0), wickcolor=color.new(color.blue, 0)) // Strategy logic longCondition = close > smoothedHAClose shortCondition = close < smoothedHAClose strategy.entry("Buy", strategy.long, when=longCondition) strategy.close("Buy", when=shortCondition) plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar) plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)