दोहरे संतुलित बैल और भालू रणनीति

लेखक:चाओझांग, दिनांकः 2023-10-30 10:31:17
टैगः

img

अवलोकन

डबल बैलेंस्ड बुल्स एंड बीयर्स रणनीति एक संयोजन रणनीति है जिसमें 123 रिवर्सल रणनीति और बुल्स एंड बीयर्स बैलेंस संकेतक शामिल हैं। इसका उद्देश्य अधिक विश्वसनीय बाजार प्रवेश के लिए 123 रिवर्सल रणनीति से संकेतों को बुल्स एंड बीयर्स बैलेंस संकेतक के साथ सत्यापित करना है।

सिद्धांत

इस रणनीति में दो उप-रणनीतियां शामिल हैंः

  1. 123 रिवर्स रणनीति. यह संकेत उत्पन्न करता है जब अंतिम दो समापन कीमतें उलट दिखाती हैं, अर्थात जब पिछली दो समापन कीमतें गिर रही थीं, जबकि तीसरी समापन कीमत बढ़ रही थी, और जब पिछली दो समापन कीमतें बढ़ रही थीं, जबकि तीसरी समापन कीमत गिर रही थी, तो यह संकेत देता है। यह केवल संकेत लेने के लिए स्टोच संकेतक को भी शामिल करता है जब स्टोच ओवरसोल्ड या ओवरबॉट स्थितियां दिखाता है।

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

संयुक्त रणनीति दो उप-रणनीतियों द्वारा उत्पन्न संकेतों से अपने ट्रेडिंग संकेतों का स्रोत है। यह केवल एक संकेत लेगा, उदाहरण के लिए, जब दो उप-रणनीतियां सुसंगत संकेत देती हैं, अर्थात दोनों संकेत लंबे समय तक जाने के लिए। यदि दो उप-रणनीतियों के संकेत अलग हैं, तो संयुक्त रणनीति उस संकेत को छोड़ देगी और साइडलाइन रहेगी।

लाभ

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

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

जोखिम

सबसे बड़ा जोखिम यह है कि उप-रणनीतियों से गलत संकेतों की संभावना दोगुनी हो जाती है। हालांकि संयुक्त रणनीति के लिए लगातार संकेतों की आवश्यकता होती है, यदि दोनों उप-रणनीतियां एक ही समय में गलत संकेत देती हैं, तो संयुक्त रणनीति अभी भी व्यापार में प्रवेश करेगी, जिससे दोगुना नुकसान होगा।

इसके अलावा, उप-रणनीतियों के बीच संघर्ष उत्पन्न हो सकते हैं, जिसमें से एक संकेत देता है कि लंबे समय तक जाना है जबकि दूसरा छोटा है। संयुक्त रणनीति तब अवसरों को याद करेगी। लंबे समय तक संघर्ष संयुक्त रणनीति को लंबे समय तक प्रवेश करने से रोक सकते हैं, जिससे पूंजी दक्षता कम हो जाती है।

अनुकूलन

एक तीसरी उप-रणनीति के रूप में एक प्रवृत्ति-वापसी रणनीति को शामिल करने पर विचार करें। यह दीर्घकालिक प्रवृत्ति को निर्धारित करने में मदद कर सकता है और जब प्रवृत्ति उलट जाती है तो संकेत दे सकता है। बाजार की प्रवृत्ति का न्याय करने के लिए एक रणनीति जोड़ना झूठे संकेतों को और फ़िल्टर कर सकता है और स्थिरता बढ़ा सकता है।

एक अन्य दिशा अधिक संरेखित संकेतों के लिए उप-रणनीतियों के मापदंडों को समायोजित करना है। उदाहरण के लिए, कमजोर रुझानों को पकड़ने और उलट रणनीति का पूरक होने के लिए बुल्स और बीयर्स बैलेंस रणनीति के सीमा मापदंडों को समायोजित करना।

उप-रणनीतियों के बीच लंबे समय तक संघर्षों को संभालने पर भी शोध किया जा सकता है। उदाहरण के लिए, संघर्षों के लिए अधिकतम सहिष्णुता स्तर निर्धारित करना, जिसके बाद एक व्यक्तिगत उप-रणनीति से संकेत लिया जाएगा। इससे कुछ हद तक अवसर हानि को कम किया जा सकता है।

निष्कर्ष

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


/*backtest
start: 2023-09-29 00:00:00
end: 2023-10-29 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 03/07/2019
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
//    This new indicator analyzes the balance between bullish and
//    bearish sentiment.
//    One can cay that it is an improved analogue of Elder Ray indicator.
//    To get more information please see "Bull And Bear Balance Indicator" 
//    by Vadim Gimelfarb. 
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

BullAndBearBalance(SellLevel, BuyLevel) =>
    pos = 0
    value =  iff (close < open , 
              iff (close[1] > open ,  max(close - open, high - low), high - low), 
               iff (close > open, 
                 iff(close[1] > open, max(close[1] - low, high - close), max(open - low, high - close)), 
                  iff(high - close > close - low, 
                   iff (close[1] > open, max(close[1] - open, high - low), high - low), 
                     iff (high - close < close - low, 
                      iff(close > open, max(close - low, high - close),open - low), 
                       iff (close > open, max(close[1] - open, high - close),
                         iff(close[1] < open, max(open - low, high - close), high - low))))))

    value2 = iff (close < open , 
              iff (close[1] < open ,  max(high - close[1], close - low), max(high - open, close - low)), 
               iff (close > open, 
                 iff(close[1] > open,  high - low, max(open - close[1], high - low)), 
                  iff(high - close > close - low, 
                   iff (close[1] < open, max(high - close[1], close - low), high - open), 
                     iff (high - close < close - low, 
                      iff(close[1] > open,  high - low, max(open - close, high - low)), 
                       iff (close[1] > open, max(high - open, close - low),
                         iff(close[1] < open, max(open - close, high - low), high - low))))))
    nBBB = value2 - value
    pos := iff(nBBB < SellLevel, -1,
    	   iff(nBBB >= BuyLevel, 1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Bull And Bear Balance", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SellLevel = input(-15, step=0.01)
BuyLevel = input(15, step=0.01)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posBullAndBearBalance = BullAndBearBalance(SellLevel, BuyLevel)
pos = iff(posReversal123 == 1 and posBullAndBearBalance == 1 , 1,
	   iff(posReversal123 == -1 and posBullAndBearBalance == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

अधिक