पुनरावर्ती चलती प्रवृत्ति औसत 123 रिवर्स पैटर्न रणनीति के साथ संयुक्त

लेखक:चाओझांग, दिनांकः 2024-02-21 16:02:32
टैगः

img

अवलोकन

यह रणनीति स्थिरता और लाभप्रदता में सुधार के लिए पुनरावर्ती चलती प्रवृत्ति औसत और 123 रिवर्सल पैटर्न को एक समग्र संकेत में जोड़ती है।

सिद्धांत

123 उल्टा पैटर्न

यह भाग उलफ जेनसेन की पुस्तक How I Tripped My Money in the Futures Market से प्रेरित है। यह तब खरीदता है जब बंद मूल्य लगातार दो दिनों के लिए बढ़ता है और 9-दिवसीय STO SLOWK 50 से नीचे होता है। यह तब बेचता है जब बंद मूल्य लगातार दो दिनों के लिए गिरता है और 9-दिवसीय STO FASTK 50 से ऊपर होता है।

पुनरावर्ती चलती प्रवृत्ति औसत

इस तकनीक को पुनरावर्ती बहुपद फिटिंग कहा जाता है। यह कल की कीमत की भविष्यवाणी करने के लिए पिछले कुछ दिनों की कीमतों और आज की कीमत का उपयोग करता है। यह तब छोटा हो जाता है जब भविष्यवाणी की गई कीमत कल की वास्तविक कीमत से अधिक होती है, और अन्यथा लंबा हो जाता है।

लाभ

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

जोखिम और समाधान

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

सुधार के लिए निर्देश

  • इष्टतम जोड़ी खोजने के लिए अवधि मापदंडों के विभिन्न संयोजनों का परीक्षण करें।
  • ऑटो स्टॉप-लॉस तंत्र का परिचय दें।
  • विभिन्न उत्पादों और बाजार वातावरण के आधार पर मापदंडों को समायोजित करें।
  • अधिक मजबूत प्रणालियों को बनाने के लिए अन्य रणनीतियों या संकेतकों के साथ संयोजन पर विचार करें।

निष्कर्ष

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


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 01/06/2021
// 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
// Taken from an article "The Yen Recused" in the December 1998 issue of TASC, 
// written by Dennis Meyers. He describes the Recursive MA in mathematical terms 
// as "recursive polynomial fit, a technique that uses a small number of past values 
// of the estimated price and today's price to predict tomorrows price."
// Red bars color - short position. Green is long.
//
// 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


RMTA(Length) =>
    pos = 0.0
    Bot = 0.0
    nRes = 0.0
    Alpha = 2 / (Length+1)
    Bot := (1-Alpha) * nz(Bot[1],close) + close
    nRes := (1-Alpha) * nz(nRes[1],close) + (Alpha*(close + Bot - nz(Bot[1], 0)))
    pos:= iff(nRes > close[1], -1,
    	     iff(nRes < close[1], 1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Recursive Moving Trend Average", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Recursive Moving Trend Average ----")
LengthRMTA = input(21, minval=3)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posRMTA = RMTA(LengthRMTA)
pos = iff(posReversal123 == 1 and posRMTA == 1 , 1,
	   iff(posReversal123 == -1 and posRMTA == -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 )

अधिक