
यह रणनीति एक बहु-कारक संयोजन रणनीति है, जो बाजार में पलटाव के अवसरों को खोजने के लिए एक पलटाव कारक और गतिशीलता कारक का उपयोग करती है। रणनीति पहले लंबे नकारात्मक पलटाव कारक का उपयोग करती है, जो पट्टे के बाद पलटाव के अवसरों की पहचान करती है, फिर गतिशीलता सूचक का उपयोग करके दूसरी बार फ़िल्टरिंग करती है, जो बड़े रुझान के तहत पलटाव के झूठे संकेतों को फ़िल्टर करती है, जिससे शॉर्ट-लाइन पलटाव के अवसरों को लॉक किया जा सकता है।
इस रणनीति के दो भाग हैं:
यह भाग एक दिन के भीतर पलटाव की सोच का उपयोग करता है, जो पिछले दिन के समापन मूल्य और पिछले दो दिनों के समापन मूल्य के बीच संबंध का आकलन करता है, जो धीमी गति से K लाइन की पहचान के साथ पलटाव की संभावनाओं के साथ काम करता है। विशिष्ट तर्क हैः
खरीद संकेतः लगातार दो दिनों के लिए बंद मूल्य में गिरावट के बाद दिन के लिए बंद मूल्य में वृद्धि, और नौ दिन धीमी गति से K लाइन 50 से नीचे है, तो खरीद संकेत उत्पन्न होता है;
बेचने का संकेतः लगातार दो दिनों के लिए समापन मूल्य में वृद्धि के बाद समापन मूल्य में गिरावट, और नौ दिन के लिए तेजी से K लाइन 50 से अधिक है, तो एक बेचने का संकेत उत्पन्न होता है।
यह भाग गतिशीलता सूचक का निर्माण करने के लिए तीन ईएमए की गतिशीलता की गतिशीलता का उपयोग करता है। सूचक सूत्र इस प्रकार हैः
xPrice1 = close - close[1]
xPrice2 = abs(close - close[1])
xSMA_R = EMA(EMA(EMA(xPrice1,r), s), u)
xSMA_aR = EMA(EMA(EMA(xPrice2, r), s), u)
xTSI = xSMA_R / xSMA_aR * 100
xEMA_TSI = EMA(xTSI, N)
इसमें, xSMA_R मूल्य गतिशीलता का ईएमए स्लीव है, xSMA_aR मूल्य उतार-चढ़ाव की आयाम का ईएमए स्लीव है, xTSI दोनों के अनुपात का एक गतिशीलता सूचक है, और xEMA_TSI एक्सटीएसआई का फिर से ईएमए स्लीव है। यह सूचक एक्सटीएसआई और एक्सईएमए_टीएसआई के संबंधों का न्याय करता है, एक ट्रेडिंग सिग्नल के रूप में।
अंत में, रणनीति ने दो भागों के संकेतों को AND ऑपरेशन में रखा, और वास्तविक व्यापारिक निर्देश केवल तभी उत्पन्न होते हैं जब दोनों भागों के कारकों ने सिग्नल को समोच्च किया हो।
इस रणनीति का सबसे बड़ा लाभ यह है कि यह एक बहु-कारक डिजाइन है जो झूठे संकेतों को फ़िल्टर करने और उच्च गुणवत्ता वाले व्यापारिक अवसरों को खोजने में मदद करता है। विशेष रूप से, मुख्य रूप से निम्नलिखित तीन बिंदु हैंः
123 रिवर्स फैक्टर संचित गिरावट के बाद अल्पकालिक उछाल बिंदुओं की पहचान कर सकता है।
एर्गेडिक गतिशीलता संकेतक बड़े रुझानों की दिशा को प्रभावी ढंग से निर्धारित कर सकता है, और बड़े रुझानों के दौरान रिवर्स सिग्नल से बचने के लिए झूठे संकेतों को फ़िल्टर कर सकता है।
दोनों भागों में संकेतों को एंड ऑपरेशन द्वारा संचालित किया जाता है, जिससे संकेत की गुणवत्ता में सुधार होता है और रणनीति की स्थिरता को बढ़ाया जाता है।
हालांकि रणनीति में जोखिम को नियंत्रित करने के लिए एक बहु-कारक डिजाइन है, निम्नलिखित प्रमुख जोखिम हैंः
एक रिवर्स सिग्नल एक अस्थिर प्रवृत्ति के दौरान उत्पन्न हो सकता है और लाभ नहीं ले सकता है।
दो कारकों के बीच पैरामीटर सेट करना व्यक्तिपरक है और यह किसी विशेष नस्ल के लिए उपयुक्त हो सकता है।
एक बार कीमतों में बदलाव के बाद, यह नुकसान के जोखिम को बढ़ा सकता है।
इन जोखिमों को अधिक किस्मों के लिए पैरामीटर को अनुकूलित करने, रिवर्स के बाद होल्डिंग समय को नियंत्रित करने, वास्तविक समय में सूचकांक संबंधों में परिवर्तन की निगरानी करने आदि के माध्यम से कम किया जा सकता है।
इस रणनीति को निम्नलिखित क्षेत्रों में अनुकूलित किया जा सकता हैः
दो कारकों के लिए पैरामीटर को समायोजित करें और अधिक मिलान डेटा नमूने खोजें।
एक और स्टॉप लॉस रणनीति, एकल नुकसान को नियंत्रित करना
प्रवृत्ति और आघात के लिए विभिन्न मापदंडों का उपयोग करें।
कारक भार को बढ़ाकर, बेहतर प्रदर्शन करने वाले कारकों को अधिक वजन दें।
मशीन लर्निंग एल्गोरिदम को जोड़ना, पैरामीटर का स्वचालित अनुकूलन और अद्यतन करना।
यह रणनीति सफलतापूर्वक रिवर्स फैक्टर और गतिशीलता को जोड़ती है, जिससे मल्टी-फैक्टर ऑप्टिमाइज़ेशन डिज़ाइन संभव हो जाता है। यह अल्पकालिक रिवर्स अवसरों की प्रभावी पहचान कर सकता है, और गतिशीलता को संकेतों के लिए दोहरी सत्यापन के लिए उपयोग कर सकता है, जिससे रणनीति की जीत की दर बढ़ जाती है। हालांकि रणनीति में कुछ सुधार की जगह है, लेकिन इसके मूल विचार मात्रात्मक रणनीति के डिजाइन के लिए एक अच्छा संदर्भ प्रदान करते हैं।
/*backtest
start: 2023-10-21 00:00:00
end: 2023-11-20 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 30/07/2020
// 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
// r - Length of first EMA smoothing of 1 day momentum 4
// s - Length of second EMA smoothing of 1 day smoothing 8
// u- Length of third EMA smoothing of 1 day momentum 6
// Length of EMA signal line 3
// Source of Ergotic TSI Close
//
// This is one of the techniques described by William Blau in his book "Momentum,
// Direction and Divergence" (1995). If you like to learn more, we advise you to
// read this book. His book focuses on three key aspects of trading: momentum,
// direction and divergence. Blau, who was an electrical engineer before becoming
// a trader, thoroughly examines the relationship between price and momentum in
// step-by-step examples. From this grounding, he then looks at the deficiencies
// in other oscillators and introduces some innovative techniques, including a
// fresh twist on Stochastics. On directional issues, he analyzes the intricacies
// of ADX and offers a unique approach to help define trending and non-trending periods.
//
// 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
ETSI(r,s,u,SmthLen) =>
pos = 0
xPrice = close
xPrice1 = xPrice - xPrice[1]
xPrice2 = abs(xPrice - xPrice[1])
xSMA_R = ema(ema(ema(xPrice1,r), s),u)
xSMA_aR = ema(ema(ema(xPrice2, r), s),u)
Val1 = 100 * xSMA_R
Val2 = xSMA_aR
xTSI = iff (Val2 != 0, Val1 / Val2, 0)
xEMA_TSI = ema(xTSI, SmthLen)
pos:= iff(xTSI > xEMA_TSI, 1,
iff(xTSI < xEMA_TSI, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Ergodic TSI", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
r = input(4, minval=1)
s = input(8, minval=1)
u = input(6, minval=1)
SmthLen = input(3, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posETSI = ETSI(r,s,u,SmthLen)
pos = iff(posReversal123 == 1 and posETSI == 1 , 1,
iff(posReversal123 == -1 and posETSI == -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 )