
यह रणनीति चलती औसत के सुनहरे कांटे के सिद्धांत पर आधारित है। यह तीन अलग-अलग पैरामीटर सेट की छोटी, मध्यम और लंबी अवधि की चलती औसत को जोड़ती है। यह तीनों औसत की तुलना करके बाजार के खालीपन का आकलन करती है और व्यापारिक संकेत उत्पन्न करती है।
इस रणनीति में तीन चलती औसत हैं, एक अल्पकालिक सरल चलती औसत, एक मध्यम अवधि की भारित चलती औसत और एक दीर्घकालिक सूचकांक चलती औसत। विशेष रूप से, 1 की लंबाई वाली SMA लाइन, 20 की लंबाई वाली WMA लाइन और 25 की लंबाई वाली EMA लाइन।
जब अल्पकालिक SMA रेखा पर मध्यवर्ती WMA रेखा को पार करता है और समापन मूल्य WMA रेखा से अधिक होता है, तो यह दर्शाता है कि बाजार नीचे से ऊपर की ओर मुड़ता है, एक बहु-हेड सिग्नल बनाता है; जब अल्पकालिक SMA रेखा के नीचे मध्यवर्ती WMA रेखा को पार करता है या समापन मूल्य WMA रेखा से कम होता है, तो यह एक शून्य-हेड सिग्नल है। इसलिए, यह रणनीति तीन औसत रेखाओं के उच्च, निम्न और क्रॉसिंग की तुलना करके बाजार की बहु-हेड स्थिति का न्याय करती है।
इस रणनीति में तीन अलग-अलग समकक्ष रेखाएं शामिल हैं, लघु, मध्यम और लंबी, जो विभिन्न चक्रों में बाजार में बदलाव का जवाब देती हैं, जिससे प्रवृत्ति को पकड़ने की सटीकता में सुधार होता है। विशेष रूप से, मध्यावधि डब्ल्यूएमए में बेहतर शोर-रोक प्रभाव होता है, जो गलत संकेतों को प्रभावी ढंग से फ़िल्टर कर सकता है। इसके अलावा, यह रणनीति केवल तब ही स्टॉक सिग्नल देती है जब एसएमए और समापन मूल्य के कई सिग्नल उच्च संगतता प्राप्त करते हैं, जिससे व्हीपसॉव से बचा जाता है और प्रत्येक प्रविष्टि की प्रभावशीलता सुनिश्चित होती है।
इस रणनीति में गलत सूचना का जोखिम हो सकता है। जब अल्पकालिक SMA त्रुटि संकेत उत्पन्न करता है, तो यह रणनीति एसएमए लाइन के संकेतों पर सख्ती से निर्भर होने के कारण अनावश्यक नुकसान का कारण बन सकती है। इसके अलावा, यह रणनीति पैरामीटर के प्रति अधिक संवेदनशील है और जब बाजार में उतार-चढ़ाव के क्षेत्र में प्रवेश होता है और पैरामीटर गलत समय पर सेट होते हैं, तो बहुत सारे गलत ट्रेडों का उत्पादन होता है।
इन जोखिमों से बचने के लिए, औसत रेखा की लंबाई को समायोजित करने, ट्रेडिंग शर्तों को उचित रूप से ढीला करने और एकल नुकसान को नियंत्रित करने के लिए स्टॉप-लॉस सेट करने की सिफारिश की जाती है। जब बाजार की प्रवृत्ति स्पष्ट नहीं होती है, तो रणनीतिक व्यापार को अस्थायी रूप से रोक दिया जा सकता है।
इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः
अधिक प्रकार के औसत रेखा संकेतक जोड़ें, जैसे कि केसी लाइन, सूचक सेट बनाने के लिए, निर्णय की सटीकता में सुधार
वॉल्यूम में वृद्धि के कारक, जैसे कि वॉल्यूम में वृद्धि
उतार-चढ़ाव के संकेतकों के संयोजन के साथ, अस्थिरता से बचें
प्रशिक्षण और पैरामीटर का अनुकूलन मशीन सीखने जैसे साधनों का उपयोग करके
यह रणनीति तीन समान रेखाओं के क्रॉसिंग और समापन मूल्य के वास्तविक समय के संबंध के आधार पर बाजार की खुलेपन की स्थिति का आकलन करने के लिए सरल और विश्वसनीय है। यह विभिन्न लंबाई के बीच औसत रेखाओं को जोड़ती है, जिससे प्रवृत्ति का पता लगाना संभव हो जाता है, और संकेत की गुणवत्ता अधिक होती है। पैरामीटर को ठीक से समायोजित करके और अधिक सहायक संकेतकों को पेश करके, यह रणनीति लक्ष्यीकरण और स्थिरता को और बढ़ा सकती है।
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("EMA Candle Close Strategy KHANH 11/11/2023", overlay=true, initial_capital=100, commission_type=strategy.commission.percent, commission_value=0.0000005, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
len1 = input.int(1, title="SMA #1 Length", minval=1)
src1 = input(close, title="SMA Source #1")
out1 = ta.sma(src1, len1)
plot(out1, title="SMA #1", color=close >= out1 ? color.rgb(120, 123, 134, 100) : color.rgb(120, 123, 134, 100), linewidth=1)
len2 = input.int(20, title="HMA #2 Length", minval=1)
src2 = input(close, title="HMA Source #2")
out2 = ta.hma(src2, len2)
plot(out2, title="HMA #2", color=close >= out2 ? color.rgb(253, 255, 254, 100) : color.rgb(255, 255, 255, 100), linewidth=1)
len3 = input.int(25, title="EMA #3 Length", minval=1)
src3 = input(close, title="EMA Source #3")
out3 = ta.ema(src3, len3)
plot(out3, title="EMA #3", color=close >= out3 ? color.blue : color.blue, linewidth=1)
// Define the long condition
longCondition = (out1 > out2 and close > out2)
// Define the short condition
shortCondition = (out1 < out2 or close < out2)
// Entry conditions
if (longCondition)
strategy.entry("Long",strategy.long)
else if (shortCondition)
strategy.entry("Short", strategy.short)
// Trade channel plot
PeriodLookBack = input(55, title="Period Look Back")
xHighest55 = request.security(syminfo.tickerid, timeframe.period, ta.highest(PeriodLookBack))
xLowest55 = request.security(syminfo.tickerid, timeframe.period, ta.lowest(PeriodLookBack))
plot(xHighest55[1], color=color.red, title="HH")
plot(xLowest55[1], color=color.green, title="LL")
//@version=5
//indicator("Custom Moving Averages", shorttitle="CMA", overlay=true)
shortLength = input(defval=40, title="Short Length")
longLength = input(defval=80, title="Long Length")
// Sử dụng khung thời gian của biểu đồ đang sử dụng thay vì cố định là "D"
shortTopBorder = request.security(syminfo.tickerid, timeframe.period, ta.highest(high, shortLength))
shortBottomBorder = request.security(syminfo.tickerid, timeframe.period, ta.lowest(low, shortLength))
longTopBorder = request.security(syminfo.tickerid, timeframe.period, ta.highest(high, longLength))
longBottomBorder = request.security(syminfo.tickerid, timeframe.period, ta.lowest(low, longLength))
shortAverageLine = (shortTopBorder + shortBottomBorder) / 2
longAverageLine = (longTopBorder + longBottomBorder) / 2
plot(shortAverageLine, color=color.new(#fc0000, 0))
plot(longAverageLine, color=color.new(#01ff27, 0))