ऑसिलेटिंग चैनल ब्रेकआउट रणनीति

लेखक:चाओझांग, दिनांक: 2023-11-15 16:01:09
टैगः

img

अवलोकन

यह चैनल संकेतकों पर आधारित एक ब्रेकआउट ट्रेडिंग रणनीति है। यह चैनल बैंड की दोलन विशेषता का उपयोग करता है जब कीमत ऊपरी बैंड से ऊपर टूटती है और निचले बैंड से नीचे टूटने पर छोटी हो जाती है। यह प्रवृत्ति के बाद की रणनीति श्रेणी से संबंधित है।

रणनीति तर्क

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

विशेष रूप से, व्यापार का तर्क इस प्रकार है:

  1. मध्य रेखा की गणना करें: SMA (लगभग, N)

  2. ऊपरी बैंडः मध्य रेखा + पैरामीटर मान

  3. निचला बैंड: मध्य रेखा - पैरामीटर मान

  4. जब मूल्य ऊपरी सीमा से ऊपर टूट जाता है, यदि व्यापार की मात्रा पिछली अवधि के 2 गुना से अधिक है, तो लंबी हो जाती है।

  5. जब मूल्य चैनल में वापस गिरता है, तो लंबी स्थिति बंद करें।

  6. जब कीमत निचले बैंड से नीचे टूट जाती है, यदि ट्रेडिंग वॉल्यूम पिछली अवधि के 2 गुना से अधिक है, तो शॉर्ट करें।

  7. जब कीमत चैनल में वापस गिर जाती है, तो शॉर्ट पोजीशन बंद कर दें।

लाभ विश्लेषण

इस रणनीति के लाभ इस प्रकार हैंः

  1. चैनल संकेतक का प्रयोग करके प्रभावी ढंग से मूल्य रुझानों को ट्रैक किया जा सकता है।

  2. ट्रेडिंग वॉल्यूम में वृद्धि के साथ जोड़कर झूठे ब्रेकआउट को अच्छी तरह से फ़िल्टर किया जाता है।

  3. चैनल में वापस गिरना स्टॉप लॉस तंत्र के रूप में कार्य करता है और प्रति व्यापार हानि को सीमित करता है।

  4. दोलन विशेषता मध्यम अवधि के रुझानों को पकड़ने के लिए फिट होती है।

  5. सरल तर्क इसे समझने और लागू करने में आसान बनाता है।

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

कुछ जोखिम भी हैं:

  1. लगातार एक ही दिशा में व्यापार जब कीमत लंबे समय के लिए चैनल के एक तरफ चिपक जाती है, घाटे का जोखिम बढ़ता है।

  2. गलत चैनल पैरामीटर सेटिंग अत्यधिक झूठे संकेत का कारण बन सकती है।

  3. ट्रेडिंग वॉल्यूम में वृद्धि के लिए गलत मानदंड वास्तविक ब्रेकआउट संकेतों को याद कर सकते हैं।

  4. स्टॉप लॉस तंत्र बहुत रूढ़िवादी हो सकता है, बड़ी चालों को याद करता है।

अनुकूलन दिशाएँ

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

  1. विभिन्न बाजार विशेषताओं के अनुरूप चैनल मापदंडों का अनुकूलन करना।

  2. झूठे ब्रेकआउट से बचने के लिए खुले पद मानदंडों को बढ़ाएं, जैसे कि एमए क्रॉसओवर या कैंडलस्टिक पैटर्न पर विचार करना।

  3. स्टॉप लॉस तंत्र को अनुकूलित करें, समय से पहले बाहर निकलने से बचने के लिए व्यापक स्टॉप लॉस रेंज की अनुमति दें।

  4. बाजार की स्थितियों के आधार पर स्थिति के आकार और पूंजी उपयोग को समायोजित करने के लिए स्थिति आकार के नियम जोड़ें।

  5. सामान्य रुझान की दिशा निर्धारित करने के लिए अधिक संकेतकों को शामिल करें, प्रमुख रुझान के खिलाफ व्यापार से बचें।

सारांश

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


/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Copyright, 2022, Cache_that_pass.  You are free to use this script however you see fit and reproduce it in any manner.

//@version=5

            //////  Name the strategy between the 2 quotation marks.  Consider setting commission type and value in strategy header to match exchanges rates. //////

strategy("Oscillating SSL Channel Strategy", "O-SSL Strat", overlay=true, pyramiding=1, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, initial_capital = 100, calc_on_order_fills=true)



            //////  Inputs and calculations used by script  //////

period = input(title='Period', defval=25)
len = input(title='Period', defval=25)
smaHigh = ta.sma(high, len)
smaLow = ta.sma(low, len)
Hlv = int(na)
Hlv := close > smaHigh ? 1 : close < smaLow ? -1 : Hlv[1]
sslDown = Hlv < 0 ? smaHigh : smaLow
sslUp = Hlv < 0 ? smaLow : smaHigh

            //////  Show me the money  //////

plot(sslDown, linewidth=2, color=color.new(color.red, 0))
plot(sslUp, linewidth=2, color=color.new(color.lime, 0))


            //////  Trade execution logic  //////  
            
//pseudo-code//
        //Go long when high (or maybe close) breaks above the sslUp and volume is 2x or > Volume[1] and sslUp > sslDown
        //Close the above longs when sslUp crosses under sslDown (or set takeprofit and stop loss exits)
        //
        //Go short when low is lower than the sslUp and volume is 2x or > Volume[1] and sslDown > sslUp
        //Close shorts when sslDown crosses under sslUp

longCondition1 = (sslUp > sslDown)
longCondition2 = ta.crossover(high, sslUp)
//longCondition3 = (volume >= (volume[1]*1.89))
longCondition = ((longCondition1) and (longCondition2))// and (longCondition3))

longExit = ta.crossunder(sslUp, sslDown)

            //////  Bring It  //////
if (longCondition)
    strategy.entry("Bring It", strategy.long)

            //////  Sling It  //////
if (longExit)
    strategy.close("Bring It", comment="Sling It")


shortCondition1 = (sslDown) > (sslUp)
shortCondition2 = ta.crossunder(low, sslUp)
//shortCondition3 = (volume >= (volume[1]*1.89))
shortCondition = ((shortCondition1) and (shortCondition2))// and (shortCondition3))

shortExit = ta.crossunder(sslDown, sslUp)

            //////  Bring It  //////
if (shortCondition)
    strategy.entry("Bring It", strategy.long)

            //////  Sling It  //////
if (shortExit)
    strategy.close("Bring It", comment="Sling It")

            //////  Sling It  //////
if (shortCondition)
    strategy.entry("Sling It", strategy.short)

            //////  Bling It  //////
if (shortExit)
    strategy.close("Sling It", comment="Bring It")



अधिक