
यह रणनीति एक लघु-रेखा ट्रेडिंग रणनीति है जो कई संकेतकों के आधार पर प्रवृत्ति का आकलन करती है। यह WOW, BMA, BarColor, SuperTrend, DI, TTS, RSI और WTO सहित 8 संकेतकों का व्यापक रूप से उपयोग करती है।
रणनीति पहले WOW, BMA, BarColor, SuperTrend, DI, TTS, RSI और WTO के 8 संकेतकों के रुझान की दिशा की गणना करती है।
WOW संकेतक कीमतों में इकाई की स्थिति के आधार पर एक बहुमुखी प्रवृत्ति का न्याय करता है। यदि इकाई की स्थिति ऊपरी पट्टी के करीब है, तो इसे उछाल के रूप में माना जाता है; यदि यह नीचे की पट्टी के करीब है, तो इसे गिरावट के रूप में माना जाता है।
बीएमए सूचकांक एसएमए ओवरफ्लो के आधार पर प्रवृत्ति का आकलन करता है, यदि समापन मूल्य एसएमए पर खुला है तो एसएमए बुलडोजर है और नीचे गिरावट है।
BarColor सूचक K लाइन के रंग के आधार पर प्रवृत्ति का न्याय करने के लिए है, लगातार कई सूर्य रेखाओं को उज्ज्वल और नयन रेखाओं को गिरावट के लिए।
सुपरट्रेंड सूचक औसत उतार-चढ़ाव की सीमा के आधार पर कीमतों के रुझान का आकलन करता है। कीमतें ऊपरी पट्टी के ऊपर आशावादी होती हैं और नीचे की पट्टी के नीचे आशावादी होती हैं।
डीआई संकेतक का अर्थ होता है कि एक प्रवृत्ति के लिए एक उच्च गतिशीलता की तुलना में एक उच्च गतिशीलता की तुलना में एक उच्च गतिशीलता की तुलना में एक उच्च गतिशीलता की तुलना में एक उच्च गतिशीलता है।
टीटीएस सूचक मूल्य और औसत रेखा की स्थिति के संबंध के आधार पर बहुभाषी प्रवृत्ति का न्याय करता है।
आरएसआई सूचकांक प्रवृत्ति की दिशा का आकलन करने के लिए मजबूत सूचकांक की तुलना में कमजोर सूचकांक की स्थिति का उपयोग करता है।
डब्ल्यूटीओ सूचकांक प्रवृत्ति की दिशा का आकलन करने के लिए अस्थिरता सूचकांक की अधिकता का उपयोग करता है।
फिर, रणनीति इन 8 संकेतकों के लिए सकारात्मक की संख्या की गणना करती है और इसके आधार पर SILA सकारात्मक समर्थन और नकारात्मक प्रतिरोध रेखाओं को चित्रित करती है। समर्थन और प्रतिरोध रेखाओं की संख्या जितनी अधिक होगी, प्रवृत्ति संकेत उतना ही मजबूत होगा।
जब कई संकेतक ऊपर होते हैं, तो यदि समापन मूल्य निम्नतम स्तर के समर्थन रेखा के ऊपर होता है, तो एक खरीद संकेत उत्पन्न होता है; जब कई संकेतक नीचे होते हैं, तो यदि समापन मूल्य निम्नतम स्तर के प्रतिरोध रेखा के नीचे होता है, तो एक बेचने का संकेत उत्पन्न होता है।
इसके अलावा, यह रणनीति एक K-लाइन आकृति का उपयोग करती है ताकि यह पता लगाया जा सके कि क्या एक संक्षिप्त समय में एक पलटाव की संभावना है, और जब रुझान पलटता है तो एक अधिक लाभदायक प्रवेश बिंदु की तलाश करें।
यह रणनीति एक एकल सूचक पर निर्भर नहीं करती है, बल्कि 8 सामान्य रूप से उपयोग किए जाने वाले रुझान आकलन सूचकांकों का समग्र उपयोग करती है, जो रुझानों का बहु-दिशात्मक आकलन करती है, जिससे निर्णय की सटीकता और विश्वसनीयता बढ़ जाती है।
यह रणनीति कई संकेतकों पर आधारित है, जो SILA प्रणाली का उपयोग करके समर्थन और प्रतिरोध लाइनों के कई स्तरों को रेखांकित करती है। लाइनों की अधिक संख्या से संकेत मिलता है कि प्रवृत्ति संकेत मजबूत है। यह व्यापारियों को संकेत की ताकत को और अधिक पहचानने में मदद कर सकता है।
यह रणनीति न केवल रुझान संकेतकों के आधार पर दिशा का आकलन करती है, बल्कि यह भी किलोग्राम के साथ संरेखित की जाती है ताकि आप अल्पकालिक पलटाव के अवसरों की तलाश कर सकें, और रुझान के पलटने पर प्रवेश कर सकें, जिससे आप बेहतर प्रवेश बिंदु प्राप्त कर सकें।
इस रणनीति में कई संकेतकों का उपयोग किया गया है, जो कुछ मामलों में उन संकेतकों के बीच निर्णय लेने में असहमति पैदा कर सकते हैं, जिससे व्यापारियों को निर्णय लेने में कठिनाई बढ़ जाती है।
इस नीति में कई मापदंडों में डिफ़ॉल्ट पैरामीटर का उपयोग किया गया है, और वास्तविक अनुप्रयोगों में पैरामीटर को अनुकूलित करने की आवश्यकता हो सकती है ताकि सर्वोत्तम प्रभाव प्राप्त हो सके।
यदि कोई बड़ी ब्लैक स्वान घटना होती है, तो प्रणालीगत जोखिम सामान्य तकनीकी संकेतकों को विफल कर सकता है, और बाजार में प्रणालीगत जोखिम का आकलन करने पर ध्यान देना आवश्यक है।
प्रवृत्ति के अनुसार, ट्रेडों की वापसी विस्तार के चरणों में अधिक हो सकती है, और एक ट्रेड के आकार को नियंत्रित करने के लिए सावधानी बरतने की आवश्यकता होती है ताकि वापसी को सीमित किया जा सके।
एक अधिक प्रणालीगत दृष्टिकोण के माध्यम से प्रत्येक सूचक के पैरामीटर जैसे कि चक्र की लंबाई, संख्यात्मक आकार आदि को अनुकूलित किया जा सकता है, जो कि पैरामीटर के सर्वोत्तम संयोजन की तलाश में है।
एक कदम आगे बढ़ाना या प्रतिशत रोकना एक वापसी को नियंत्रित करने के लिए विचार किया जा सकता है
MAVP, OBV और प्रवृत्ति संकेतकों के संयोजन के रूप में क्वांटिटेटिव संकेतकों को पेश किया जा सकता है, जिससे रणनीतिक निर्णय लेने की सटीकता में सुधार हो सकता है।
विभिन्न बाजार चरणों में स्थिति रखने के अनुपात का अध्ययन किया जा सकता है ताकि प्रवृत्ति अधिक स्पष्ट होने पर स्थिति बढ़ाई जा सके।
Overall रणनीति एक बहु-सूचक ट्रैक प्रवृत्ति के लिए एक लघु-रेखा व्यापार रणनीति है। यह कई संकेतकों का व्यापक रूप से उपयोग करके प्रवृत्ति की दिशा का न्याय करता है, सिला प्रणाली का उपयोग करके संकेत की ताकत की पहचान करता है, और के-लाइन के रूप में प्रवेश का अनुकूलन करता है। यह रणनीति निर्णय की सटीकता में सुधार कर सकती है, लेकिन विभिन्न संकेतकों के असंगत जोखिमों पर ध्यान देने की आवश्यकता है। अगले चरण में, इस रणनीति को पैरामीटर अनुकूलन, स्टॉप-लॉस अनुकूलन, मात्रा और ऊर्जा संयोजन आदि के माध्यम से और बेहतर बनाया जा सकता है।
/*backtest
start: 2023-10-16 00:00:00
end: 2023-11-15 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// (c) Noro
//2017
//@version=2
strategy(title="Noro's SILA v1.6L Strategy", shorttitle="SILA v1.6L str", overlay=true)
//settings
sensup = input(5, title="Uptrend-sensivity", minval = -8, maxval = 8)
sensdn = input(5, title="Downtrend-sensivity", minval = -8, maxval = 8)
usewow = input(true, title="Use trend-indicator WOW?")
usebma = input(true, title="Use trend-indicator BestMA?")
usebc = input(true, title="Use trend-indicator BarColor?")
usest = input(true, title="Use trend-indicator SuperTrend?")
usedi = input(true, title="Use trend-indicator DI?")
usetts = input(true, title="Use trend-indicator TTS?")
usersi = input(true, title="Use trend-indicator RSI?")
usewto = input(true, title="Use trend-indicator WTO?")
dist = input(100, title="Distance SILA-lines", minval = 0, maxval = 100)
usetl = input(true, title="Need SILA-lines?")
usebgup = input(true, title="Need uptrend-background?")
usebgdn = input(true, title="Need downtrend-background?")
usealw = input(true, title="Need background always?")
usearr = input(true, title="Need new-trend-arrows?")
useloco = input(true, title="Need locomotive-arrows?")
usemon = input(true, title="Need money?") //joke
// WOW 1.0 method
lasthigh = highest(close, 30)
lastlow = lowest(close, 30)
center = (lasthigh +lastlow) / 2
body = (open + close) / 2
trend1 = body > center ? 1 : body < center ? -1 : trend1[1]
trend2 = center > center[1] ? 1 : center < center[1] ? -1 : trend2[1]
WOWtrend = usewow == true ? trend1 == 1 and trend2 == 1 ? 1 : trend1 == -1 and trend2 == -1 ? -1 : WOWtrend[1] : 0
// BestMA 1.0 method
SMAOpen = sma(open, 30)
SMAClose = sma(close, 30)
BMAtrend = usebma == true ? SMAClose > SMAOpen ? 1 : SMAClose < SMAOpen ? -1 : BMAtrend[1] : 0
// BarColor 1.0 method
color = close > open ? 1 : 0
score = color + color[1] + color[2] + color[3] + color[4] + color[5] + color[6] + color[7]
BARtrend = usebc == true ? score > 5 ? 1 : score < 3 ? -1 : BARtrend[1] : 0
// SuperTrend mehtod
Up = hl2 - (7 * atr(3))
Dn = hl2 + (7 * atr(3))
TrendUp = close[1] > TrendUp[1] ? max(Up, TrendUp[1]) : Up
TrendDown = close[1] < TrendDown[1] ? min(Dn, TrendDown[1]) : Dn
SUPtrend = usest == true ? close > TrendDown[1] ? 1: close < TrendUp[1]? -1 : SUPtrend[1] : 0
//DI method
th = 20
TrueRange = max(max(high-low, abs(high-nz(close[1]))), abs(low-nz(close[1])))
DirectionalMovementPlus = high-nz(high[1]) > nz(low[1])-low ? max(high-nz(high[1]), 0): 0
DirectionalMovementMinus = nz(low[1])-low > high-nz(high[1]) ? max(nz(low[1])-low, 0): 0
SmoothedTrueRange = nz(SmoothedTrueRange[1]) - (nz(SmoothedTrueRange[1])/14) + TrueRange
SmoothedDirectionalMovementPlus = nz(SmoothedDirectionalMovementPlus[1]) - (nz(SmoothedDirectionalMovementPlus[1])/14) + DirectionalMovementPlus
SmoothedDirectionalMovementMinus = nz(SmoothedDirectionalMovementMinus[1]) - (nz(SmoothedDirectionalMovementMinus[1])/14) + DirectionalMovementMinus
DIPlus = SmoothedDirectionalMovementPlus / SmoothedTrueRange * 100
DIMinus = SmoothedDirectionalMovementMinus / SmoothedTrueRange * 100
DItrend = usedi == true ? DIPlus > DIMinus ? 1 : -1 : 0
//TTS method (Trend Trader Strategy)
//Start of HPotter's code
//Andrew Abraham' idea
avgTR = wma(atr(1), 21)
highestC = highest(21)
lowestC = lowest(21)
hiLimit = highestC[1]-(avgTR[1] * 3)
loLimit = lowestC[1]+(avgTR[1] * 3)
ret = iff(close > hiLimit and close > loLimit, hiLimit, iff(close < loLimit and close < hiLimit, loLimit, nz(ret[1], 0)))
pos = iff(close > ret, 1, iff(close < ret, -1, nz(pos[1], 0)))
//End of HPotter's code
TTStrend = usetts == true ? pos == 1 ? 1 : pos == -1 ? -1 : TTStrend[1] : 0
//RSI method
RSIMain = (rsi(close, 13) - 50) * 1.5
rt = iff(RSIMain > -10, 1, iff(RSIMain < 10, -1, nz(pos[1], 0)))
RSItrend = usersi == true ? rt : 0
//WTO ("WaveTrend Oscilator") method by LazyBear
//Start of LazyBear's code
esa = ema(hlc3, 10)
d = ema(abs(hlc3 - esa), 10)
ci = (hlc3 - esa) / (0.015 * d)
tci = ema(ci, 21)
//End of LazyBear's code
WTOtrend = usewto == true ? tci > 0 ? 1 : tci < 0 ? -1 : 0 : 0
//plots
trends = usemon == true ? WOWtrend + BMAtrend + BARtrend + SUPtrend + DItrend + TTStrend + RSItrend + WTOtrend: -1 * (WOWtrend + BMAtrend + BARtrend + SUPtrend + DItrend + TTStrend + RSItrend + WTOtrend)
pricehi = sma(high, 10)
pricelo = sma(low, 10)
per = usetl == 1 ? dist / 10000 : 0
color1 = usetl == true ? trends > 0 ? blue : na : na
plot(pricelo * (1 - per), color=color1, linewidth=1, title="SILA-line")
color2 = usetl == true ? trends > 1 ? blue : na : na
plot(pricelo * (1 - 2 * per), color=color2, linewidth=1, title="SILA-line")
color3 = usetl == true ? trends > 2 ? blue : na : na
plot(pricelo * (1 - 3 * per), color=color3, linewidth=1, title="SILA-line")
color4 = usetl == true ? trends > 3 ? blue : na : na
plot(pricelo * (1 - 4 * per), color=color4, linewidth=1, title="SILA-line")
color5 = usetl == true ? trends > 4 ? blue : na : na
plot(pricelo * (1 - 5 * per), color=color5, linewidth=1, title="SILA-line")
color6 = usetl == true ? trends > 5 ? blue : na : na
plot(pricelo * (1 - 6 * per), color=color6, linewidth=1, title="SILA-line")
color7 = usetl == true ? trends > 6 ? blue : na : na
plot(pricelo * (1 - 7 * per), color=color7, linewidth=1, title="SILA-line")
color8 = usetl == true ? trends > 7 ? blue : na : na
plot(pricelo * (1 - 8 * per), color=color8, linewidth=1, title="SILA-line")
color10 = usetl == true ? trends < 0 ? black : na : na
plot(pricehi * (1 + per), color=color10, linewidth=1, title="SILA-line")
color11 = usetl == true ? trends < -1 ? black : na : na
plot(pricehi * (1 + 2 * per), color=color11, linewidth=1, title="SILA-line")
color12 = usetl == true ? trends < -2 ? black : na : na
plot(pricehi * (1 + 3 * per), color=color12, linewidth=1, title="SILA-line")
color13 = usetl == true ? trends < -3 ? black : na : na
plot(pricehi * (1 + 4 * per), color=color13, linewidth=1, title="SILA-line")
color14 = usetl == true ? trends < -4 ? black : na : na
plot(pricehi * (1 + 5 * per), color=color14, linewidth=1, title="SILA-line")
color15 = usetl == true ? trends < -5 ? black : na : na
plot(pricehi * (1 + 6 * per), color=color15, linewidth=1, title="SILA-line")
color16 = usetl == true ? trends < -6 ? black : na : na
plot(pricehi * (1 + 7 * per), color=color16, linewidth=1, title="SILA-line")
color17 = usetl == true ? trends < -7 ? black : na : na
plot(pricehi * (1 + 8 * per), color=color17, linewidth=1, title="SILA-line")
//background
col = usebgup == true and trends >= sensup ? 1 : usebgdn == true and trends <= (-1 * sensdn) ? -1 : usealw == true ? col[1] : 0
bgcolor = col == 1 ? lime : col == -1 ? red : na
//bgcolor(bgcolor, transp=70)
//arrows
posi = trends >= sensup ? 1 : trends <= (-1 * sensdn) ? -1 : posi[1]
arr = usearr == true ? posi == 1 and posi[1] < 1 ? 1 : posi == -1 and posi[1] > -1 ? -1 : na : na
//plotarrow(arr == 1 ? 1 : na, title="UpArrow", colorup=blue, maxheight=60, minheight=50, transp=0)
//plotarrow(arr == -1 ? -1 : na, title="DnArrow", colordown=blue, maxheight=60, minheight=50, transp=0)
//locomotive
bar = close > open ? 1 : close < open ? -1 : 0
locotop = bar == -1 and bar[1] == 1 and bar[2] == 1 ? 1 : 0
locobot = bar == 1 and bar[1] == -1 and bar[2] == -1 ? 1 : 0
entry = useloco == false ? 1 : posi == posi[1] ? (locotop == 1 and posi == -1) or (locobot == 1 and posi == 1) ? 1 : entry[1] : 0
//plotarrow(locobot == 1 and entry[1] == 0 and posi == 1 ? 1 : na, title="UpLocomotive", colorup=yellow, maxheight=60, minheight=50, transp=0)
//plotarrow(locotop == 1 and entry[1] == 0 and posi == -1 ? -1 : na, title="DnLocomotive", colordown=yellow, maxheight=60, minheight=50, transp=0)
longCondition = arr == 1
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = arr == -1
if (shortCondition)
strategy.entry("Short", strategy.short)