এই কৌশলটি একটি বিস্তৃত ট্রেডিং সিস্টেম যা ইচিমোকু ক্লাউড, আপেক্ষিক শক্তি সূচক (আরএসআই), চলমান গড় ঘনিষ্ঠতা বৈষম্য (এমএসিডি), উচ্চতর সময় ফ্রেম (এইচটিএফ) বৈষম্য এবং এক্সপোনেনশিয়াল চলমান গড় (ইএমএ) ক্রসওভার সহ একাধিক প্রযুক্তিগত সূচককে একত্রিত করে। কৌশলটি আরও নির্ভরযোগ্য ট্রেডিং সুযোগগুলি ক্যাপচার করার জন্য বিভিন্ন সময় ফ্রেম থেকে বাজার তথ্য ব্যবহার করার সময় ট্রেডিংয়ের নির্ভুলতা উন্নত করতে একাধিক সংকেত নিশ্চিতকরণ ব্যবহার করে।
কৌশলটির মূল নীতি হল মাল্টি-লেয়ার প্রযুক্তিগত বিশ্লেষণের মাধ্যমে ট্রেডিং সংকেতগুলি নিশ্চিত করা। এটি সামগ্রিক বাজারের প্রবণতা নির্ধারণের জন্য ইচিমোকু ক্লাউড উপাদানগুলি ব্যবহার করে, বাজারের ওভারবয়ড / ওভারসোল্ড শর্তগুলি বিচার করতে আরএসআইকে একত্রিত করে, ট্রেন্ডের গতির পরিবর্তনগুলি সনাক্ত করতে এমএসিডি ব্যবহার করে এবং এইচটিএফ আরএসআই এবং এমএসিডি বিচ্যুতির মাধ্যমে সম্ভাব্য প্রবণতা বিপরীত সংকেতগুলি ক্যাপচার করে। উপরন্তু, কৌশলটি EMA50 এবং EMA100 ক্রসওভারগুলিকে নিশ্চিত করার জন্য অন্তর্ভুক্ত করে, EMA200 এর সাথে একটি প্রাথমিক ট্রেন্ড ফিল্টার হিসাবে, একটি মাল্টি-লেয়ার ট্রেডিং নিশ্চিতকরণ সিস্টেম তৈরি করে।
এই কৌশলটি একাধিক প্রযুক্তিগত সূচক সমন্বয়ের মাধ্যমে একটি অপেক্ষাকৃত সম্পূর্ণ ট্রেডিং সিস্টেম তৈরি করে। এর শক্তিটি এর বহু-মাত্রিক সংকেত নিশ্চিতকরণ প্রক্রিয়াতে রয়েছে, যখন প্যারামিটার অপ্টিমাইজেশন এবং বাজারের অভিযোজনযোগ্যতার ক্ষেত্রেও চ্যালেঞ্জের মুখোমুখি হয়। প্রস্তাবিত অপ্টিমাইজেশান দিকগুলির মাধ্যমে, কৌশলটির দৃust়তা বজায় রেখে বিভিন্ন বাজারের পরিবেশে এর কর্মক্ষমতা আরও বাড়ানোর সম্ভাবনা রয়েছে।
/*backtest start: 2024-01-17 00:00:00 end: 2025-01-16 00:00:00 period: 3h basePeriod: 3h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=6 strategy("Ichimoku + RSI + MACD + HTF Divergence + EMA Cross Strategy", overlay=true) // تنظیمات تایمفریم بالاتر htf_timeframe = input.timeframe("D", title="تایمفریم بالاتر") // تنظیمات پارامترهای ایچیموکو tenkan_period = input(9, title="Tenkan Sen Period") kijun_period = input(26, title="Kijun Sen Period") senkou_span_b_period = input(52, title="Senkou Span B Period") displacement = input(26, title="Displacement") // محاسبه خطوط ایچیموکو tenkan_sen = (ta.highest(high, tenkan_period) + ta.lowest(low, tenkan_period)) / 2 kijun_sen = (ta.highest(high, kijun_period) + ta.lowest(low, kijun_period)) / 2 senkou_span_a = (tenkan_sen + kijun_sen) / 2 senkou_span_b = (ta.highest(high, senkou_span_b_period) + ta.lowest(low, senkou_span_b_period)) / 2 chikou_span = close // قیمت بسته شدن فعلی // رسم خطوط ایچیموکو plot(tenkan_sen, color=color.blue, title="Tenkan Sen") plot(kijun_sen, color=color.red, title="Kijun Sen") plot(senkou_span_a, offset=displacement, color=color.green, title="Senkou Span A") plot(senkou_span_b, offset=displacement, color=color.orange, title="Senkou Span B") plot(chikou_span, offset=-displacement, color=color.purple, title="Chikou Span") // رنگآمیزی ابر ایچیموکو fill(plot(senkou_span_a, offset=displacement, color=color.green, title="Senkou Span A"), plot(senkou_span_b, offset=displacement, color=color.orange, title="Senkou Span B"), color=senkou_span_a > senkou_span_b ? color.new(color.green, 90) : color.new(color.red, 90), title="Cloud") // تنظیمات RSI rsi_length = input(14, title="RSI Length") rsi_overbought = input(70, title="RSI Overbought Level") rsi_oversold = input(30, title="RSI Oversold Level") // محاسبه RSI rsi_value = ta.rsi(close, rsi_length) // تنظیمات MACD fast_length = input(12, title="MACD Fast Length") slow_length = input(26, title="MACD Slow Length") signal_smoothing = input(9, title="MACD Signal Smoothing") // محاسبه MACD [macd_line, signal_line, hist_line] = ta.macd(close, fast_length, slow_length, signal_smoothing) // شناسایی واگراییها در تایمفریم بالاتر f_find_divergence(src, lower, upper) => var int divergence = na // تعریف نوع متغیر بهصورت صریح if (src >= upper and src[1] < upper) divergence := 1 // واگرایی نزولی else if (src <= lower and src[1] > lower) divergence := -1 // واگرایی صعودی divergence // محاسبه RSI و MACD در تایمفریم بالاتر htf_rsi_value = request.security(syminfo.tickerid, htf_timeframe, rsi_value) htf_macd_line = request.security(syminfo.tickerid, htf_timeframe, macd_line) // شناسایی واگراییها در تایمفریم بالاتر htf_rsi_divergence = f_find_divergence(htf_rsi_value, rsi_oversold, rsi_overbought) htf_macd_divergence = f_find_divergence(htf_macd_line, 0, 0) // فیلتر روند با EMA 200 ema_200 = ta.ema(close, 200) // اضافه کردن EMA 50 و 100 ema_50 = ta.ema(close, 50) ema_100 = ta.ema(close, 100) // کراسهای EMA ema_cross_up = ta.crossover(ema_50, ema_100) // کراس صعودی EMA 50 و 100 ema_cross_down = ta.crossunder(ema_50, ema_100) // کراس نزولی EMA 50 و 100 // شرایط ورود و خروج long_condition = (close > senkou_span_a and close > senkou_span_b) and // قیمت بالای ابر (rsi_value > 50) and // RSI بالای 50 (macd_line > signal_line) and // MACD خط سیگنال را قطع کرده (htf_rsi_divergence == -1 or htf_macd_divergence == -1) and // واگرایی صعودی در تایمفریم بالاتر (close > ema_200) and // قیمت بالای EMA 200 (ema_cross_up) // کراس صعودی EMA 50 و 100 short_condition = (close < senkou_span_a and close < senkou_span_b) and // قیمت زیر ابر (rsi_value < 50) and // RSI زیر 50 (macd_line < signal_line) and // MACD خط سیگنال را قطع کرده (htf_rsi_divergence == 1 or htf_macd_divergence == 1) and // واگرایی نزولی در تایمفریم بالاتر (close < ema_200) and // قیمت زیر EMA 200 (ema_cross_down) // کراس نزولی EMA 50 و 100 // نمایش نقاط ورود در چارت plotshape(series=long_condition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY", size=size.small) plotshape(series=short_condition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL", size=size.small) // اجرای استراتژی if (long_condition) strategy.entry("Long", strategy.long) if (short_condition) strategy.entry("Short", strategy.short)