अवधारणा:
बड़ी संख्या में चलती औसत उपलब्ध हैं।
हालांकि, वे अलग तरह से प्रभावी होते हैं।
रुझानों की पुष्टि और अनुवर्ती कार्रवाई के लिए बड़ी संख्या में चलती औसत का अलग-अलग तरीके से उपयोग करना आवश्यक है।
यहाँ अवधारणा एक संयोजन चलती औसत उत्पन्न करने के लिए है, प्रत्येक एमए प्रकार को प्रवृत्ति की पुष्टि की उच्च डिग्री प्रदान करने के लिए भारित किया जा सकता है।
वजन सेटिंग्स में विन्यास योग्य हैं, और एक नमूना के रूप में 50 लंबाई का उपयोग किया गया है।
एटीआर ने अच्छा परिणाम नहीं दिया, इसलिए इसे वैकल्पिक रखा गया है।
स्रोत को संशोधित किया जा सकता है।
यह सूचक बड़े समय सीमा में अच्छा प्रतिरोध समर्थन मूल्य प्रदान करता है. और यह भी एक ब्रेकआउट और ब्रेकडाउन संकेत प्रदान करता है. के माध्यम से पालन ज्यादातर प्रभावी है.
सतर्कता की स्थिति को इस प्रकार बनाया गया है कि इसे सीधे डिस्कॉर्ड पर ले जाया जा सके।
अलर्ट के लिए किसी को अपना संदेश कॉन्फ़िगर करना होगा।
खुश व्यापार.
/*backtest start: 2022-04-11 00:00:00 end: 2022-05-10 23:59:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © bhavishya //@version=5 indicator("ESSMA", overlay=true) //inputs source = input(close, "Source", group="Source") length1 = input(50, "Length1", group = "Length") w1 = input.float(2.0, "SMA Weight", group="Weights") w2 = input.float(2.0, "EMA Weight", group="Weights") w3 = input.float(2.0, "WMA Weight", group="Weights") w4 = input.float(2.0, "SMMA Weight", group="Weights") w5 = input.float(2.0, "RMA Weight", group="Weights") useatr = input.bool(false, "Use ATR", group="ATR") atrLen = input.int(title="ATR Length", defval=14, group="ATR") // functions smma(src, length) => smma = 0.0 smma := na(smma[2]) ? ta.sma(src, length) : (smma[2] * (length - 1) + src) / length smma essma(src,length) => essma = 0.0 smma = smma(src * w4,length) ema = ta.ema(src * w2, length) sma = ta.sma(src * w1, length) wma = ta.wma(src * w3, length) rma = ta.rma(src * w5, length) essma := (smma/w4+ema/w2+sma/w1 - wma/w3 - rma/w5 + open + close)/(3) essma // calucations // atr and MAs atr = ta.atr(atrLen) usesource = useatr ? atr : source essma1 = essma(usesource, length1) sessma1 = ta.wma(essma1, length1) // plots p1 = plot(essma1, "ESSMA", color.green) ps1 = plot(sessma1, "ESSMA Smooth", color.red) bool up = na bool down = na if (ta.crossover(essma1,sessma1)) up := true if (ta.crossunder(essma1, sessma1)) down := true plotshape(up, style=shape.labelup, location = location.belowbar, color=color.lime, text="B", textcolor=color.black) plotshape(down, style=shape.labeldown, location = location.abovebar, color=color.orange, text="S", textcolor=color.black) // alerts alertcondition(up, "ESSMA UP", '{"content":"ESSMA BUY @ {{close}}" : "{{ticker}} int : {{interval}} - essma : {{plot_0}} / sessma {{plot_1}}"}') alertcondition(down, "ESSMA DOWN", '{"content":"ESSMA SELL @ {{close}}" : "{{ticker}} int : {{interval}} - essma :{{plot_0}} /sessma : {{plot_1}}"}') if up strategy.entry("Enter Long", strategy.long) else if down strategy.entry("Enter Short", strategy.short)