মাল্টি-ইন্ডিকেটর ডিসিশন ট্রি স্ট্র্যাটেজিঃ আইএমএসিডি, ইএমএ এবং ইচিমোকু

লেখক:চাওঝাং, তারিখঃ ২০২৪-০১-২২ ১১ঃ২৫ঃ৫৬
ট্যাগঃ

img

সারসংক্ষেপ

এই কৌশলটি ট্রেডিং সিগন্যাল তৈরির জন্য একটি বিস্তৃত সিদ্ধান্ত গাছের মডেল তৈরি করতে আইএমএসিডি, ইএমএ এবং ইচিমোকুর মতো একাধিক প্রযুক্তিগত সূচককে একীভূত করে।

কৌশলগত যুক্তি

  1. আইএমএসিডিঃ ইম্পলসএমএসিডি এবং ইম্পলসহিস্টোর মাধ্যমে বাজারের প্রবণতা আরও ভালভাবে ধরার জন্য উন্নত এমএসিডি
  2. ইচিমোকু: প্লট রূপান্তর লাইন, বেস লাইন, নেতৃস্থানীয় স্প্যান এ, নেতৃস্থানীয় স্প্যান বি সমর্থন এবং প্রতিরোধের স্তর সনাক্ত করতে
  3. EMA 40: প্রবণতার দিক নির্ধারণে সহায়তা করে
  4. দীর্ঘ/সংক্ষিপ্ত সংকেতগুলি IMACD, ক্লাউড উপাদান এবং EMA 40 এর মধ্যে নির্দিষ্ট অবস্থার উপর ভিত্তি করে সক্রিয় করা হয়

দীর্ঘ সংকেতঃ যখন আইএমএসিডি একটি নির্দিষ্ট রঙ এবং ইএমএ 40 মেঘের উপরে থাকে, তখন দীর্ঘ যান

সংক্ষিপ্ত সংকেতঃ যখন আইএমএসিডি লাল হয় এবং ইএমএ 40 মেঘের নীচে থাকে, তখন সংক্ষিপ্ত হয়

সুবিধা বিশ্লেষণ

  1. একাধিক সূচকের সংমিশ্রণ প্রবণতা মূল্যায়নের নির্ভুলতা উন্নত করে
  2. সিদ্ধান্তের গাছের মডেলের স্পষ্ট শ্রেণীবিভাগ অনস্বীকার্য ট্রেডিং সংকেত তৈরি করে
  3. প্রবণতা নির্ধারণে আরও ভাল সহায়তার জন্য নমনীয় EMA দৈর্ঘ্য
  4. মেঘ এবং প্রবণতা সূচকগুলির সাথে সমর্থন এবং প্রতিরোধের স্তরগুলি আরও ভালভাবে সনাক্ত করুন

ঝুঁকি বিশ্লেষণ

  1. একাধিক সূচক সহ জটিল পরামিতি সুরক্ষা
  2. ভুল EMA দৈর্ঘ্যের কারণে ভুল সংকেত সক্রিয় হতে পারে
  3. একই সময়ে অনেক সূচক পর্যবেক্ষণে অসুবিধা

ঝুঁকি সমাধানঃ পরামিতি সেটিং অপ্টিমাইজ করুন, EMA দৈর্ঘ্য সামঞ্জস্য করুন, কর্মপ্রবাহকে সহজ করুন।

অপ্টিমাইজেশান নির্দেশাবলী

  1. প্যারামিটার অপ্টিমাইজ করার মাধ্যমে স্থিতিশীলতা বৃদ্ধি করুন
  2. স্টপ লস স্ট্র্যাটেজি ব্যবহার করে ক্ষতির সীমাবদ্ধতা
  3. বিপুল সংখ্যক তথ্য দিয়ে ব্যাকটেস্টিং করে সংকেতের গুণমান উন্নত করুন
  4. মেশিন লার্নিং দিয়ে অভিযোজিত সিদ্ধান্ত গাছের মডেল তৈরি করুন

সংক্ষিপ্তসার

এই কৌশলটি ট্রেডিং সংকেত উত্পাদন করার জন্য একাধিক সূচক ব্যবহার করে একটি সিদ্ধান্ত গাছ মডেল নির্মাণের জন্য প্রবণতা চিহ্নিত করে। পেশাদাররা উচ্চমানের এবং সঠিক সংকেত। ধ্রুবক অপ্টিমাইজেশনের জন্য জায়গা রয়েছে। দীর্ঘমেয়াদী স্থিতিশীল রিটার্নের জন্য ঝুঁকি নিয়ন্ত্রণের জন্য পরামিতি টিউনিং এবং স্টপ লসনে ফোকাস প্রয়োজন।


/*backtest
start: 2024-01-14 00:00:00
end: 2024-01-21 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Decision Tree Strategy: IMACD, EMA and Ichimoku [cryptoonchain]", overlay=true)

lengthMA = input(34, title="Length MA")
lengthSignal = input(9, title="Length Signal")
conversionPeriods = input.int(9, minval=1, title="Conversion Line Length")
basePeriods = input.int(26, minval=1, title="Base Line Length")
laggingSpan2Periods = input.int(52, minval=1, title="Leading Span B Length")
displacement = input.int(26, minval=1, title="Lagging Span")
emaLength = input(40, title="EMA Length")  // Added user-configurable EMA length

calc_smma(src, len) =>
    smma = float(na)
    smma := na(smma[1]) ? ta.sma(src, len) : (smma[1] * (len - 1) + src) / len
    smma

calc_zlema(src, length) =>
    ema1 = ta.ema(src, length)
    ema2 = ta.ema(ema1, length)
    d = ema1 - ema2
    ema1 + d

src = ohlc4
hi = calc_smma(high, lengthMA)
lo = calc_smma(low, lengthMA)
mi = calc_zlema(src, lengthMA)

md = (mi > hi) ? (mi - hi) : (mi < lo) ? (mi - lo) : 0
sb = ta.sma(md, lengthSignal)
sh = md - sb
mdc = src > mi ? (src > hi ? color.rgb(128, 255, 0, 26) : color.green) : (src < lo ? color.red : color.orange)

colorCondition = color.rgb(128, 255, 0, 26)

conversionLine = math.avg(ta.lowest(conversionPeriods), ta.highest(conversionPeriods))
baseLine = math.avg(ta.lowest(basePeriods), ta.highest(basePeriods))
leadLine1 = math.avg(conversionLine, baseLine)
leadLine2 = math.avg(ta.lowest(laggingSpan2Periods), ta.highest(laggingSpan2Periods))

// Use user-configurable length for EMA
ema40 = ta.ema(close, emaLength)

ebc = input(false, title="Enable bar colors")
barcolor(ebc ? mdc : na)

conversionLinePlot = plot(conversionLine, color=#2962FF, title="Conversion Line", display=display.none)
baseLinePlot = plot(baseLine, color=#B71C1C, title="Base Line", display=display.none)
laggingSpanPlot = plot(close, offset=-displacement + 1, color=#43A047, title="Lagging Span", display=display.none)
leadLine1Plot = plot(leadLine1, offset=displacement - 1, color=#A5D6A7, title="Leading Span A", display=display.none)
leadLine2Plot = plot(leadLine2, offset=displacement - 1, color=#EF9A9A, title="Leading Span B", display=display.none)
kumoCloudUpperLinePlot = plot(leadLine1 > leadLine2 ? leadLine1 : leadLine2, offset=displacement - 1, title="Kumo Cloud Upper Line", display=display.none)
kumoCloudLowerLinePlot = plot(leadLine1 < leadLine2 ? leadLine1 : leadLine2, offset=displacement - 1, title="Kumo Cloud Lower Line", display=display.none)
fill(kumoCloudUpperLinePlot, kumoCloudLowerLinePlot, color=leadLine1 > leadLine2 ? color.green : color.red)

a = (leadLine1 > leadLine2 ? leadLine1 : leadLine2) 
b = (leadLine1 < leadLine2 ? leadLine1 : leadLine2)  

if mdc == colorCondition and ema40 > a[displacement - 1]
    strategy.entry("Long", strategy.long)

if mdc == color.red and ema40 < b[displacement - 1]
    strategy.entry("Short", strategy.short)


আরো