র্যান্ডম ওসিলেশন স্ট্র্যাটেজি ইচিমোকু কিনকো হিয়ো, এমএসিডি এবং হাল মুভিং এভারেজ সহ একাধিক প্রযুক্তিগত সূচককে একীভূত করে একটি পদ্ধতিগত ট্রেডিং সিদ্ধান্ত ব্যবস্থা গঠন করে। এটি ওসিলেটিং বাজারের সময় প্রবণতা বিপরীত পয়েন্ট এবং সম্ভাব্য সুযোগগুলি ক্যাপচার করার লক্ষ্যে।
প্রথমত, ইচিমোকু কিনকো হিয়োর টেনকান-সেন এবং কিজুন-সেন গৃহীত হয়। টেনকান-সেন গত 9 টি সময়ের মধ্যে সর্বোচ্চ উচ্চ এবং সর্বনিম্ন নিম্নের গড় হিসাবে গণনা করা হয়। কিজুন-সেন গত 24 টি সময়ের মধ্যে সর্বোচ্চ উচ্চ এবং সর্বনিম্ন নিম্নের গড়। মূল্য এবং কিজুন-সেনের ক্রসওভারগুলি ট্রেডিং সংকেত হিসাবে কাজ করে।
দ্বিতীয়ত, এমএসিডি সূচকটি একটি গুরুত্বপূর্ণ প্রবণতা অনুসরণকারী গতির সূচক হিসাবে অন্তর্ভুক্ত করা হয়। এটি মূল্যের দুটি ইএমএর মধ্যে সম্পর্ক দেখায়। এমএসিডি এবং এর সংকেত লাইনের ক্রসওভারগুলি ট্রেডিং সংকেত তৈরি করে।
তৃতীয়ত, হুল চলমান গড়টি চলমান গড়গুলির বিলম্বিত ইস্যু উন্নত করতে এবং মূল্য বিপরীতমুখী ধরার সংবেদনশীলতা বাড়ানোর জন্য চালু করা হয়েছে। এটি অর্ধ, পূর্ণ এবং বর্গমূল সময়ের ডাব্লুএমএ ব্যবহার করে গণনা করা হয়। দ্রুত এবং ধীর হুল এমএগুলির মধ্যে ক্রসওভারগুলি সহায়ক সংকেত হিসাবেও কাজ করে।
অবশেষে, কৌশলটি উপরে উল্লিখিত সমস্ত সূচককে একত্রিত করে একটি শক্তিশালী ট্রেডিং সিস্টেম গঠন করে। প্রকৃত প্রবেশ এবং প্রস্থান কেবল তখনই ঘটে যখন একাধিক সূচক সর্বসম্মতিক্রমে সংকেত দেয়।
একাধিক সূচকের মাধ্যমে বৈচিত্র্য একক পয়েন্ট ব্যর্থতা হ্রাস করে।
সমন্বয় একটি সামগ্রিক মডেলের মাধ্যমে সিদ্ধান্ত গ্রহণের ক্ষমতা বৃদ্ধি করে।
প্রতিটি সিগন্যাল অন্যদের দ্বারা যাচাই করা হয় হিসাবে মিথ্যা সংকেত হ্রাস।
শুধুমাত্র উচ্চ-সংকেত সংকেতের উপর কাজ করে দক্ষতা বৃদ্ধি।
পরিবর্তনশীল বাজারের সাথে কৌশলটি মানিয়ে নিতে কাস্টমাইজযোগ্য পরামিতি।
হুল মুভিং গড় থেকে কম বিলম্ব এবং দ্রুত প্রতিক্রিয়া।
ভ্রান্ত সংকেত বৃদ্ধি সঙ্গে ব্যাপ্তি, অস্থির বাজারে উচ্চ ঝুঁকি।
যদি সূচক পরামিতিগুলি সঠিকভাবে অপ্টিমাইজ করা না হয় তবে এটি কার্যকর নয়।
বিপ্লবের দিকে মনোনিবেশ করে ট্রেন্ডিং মুভস মিস করে।
হুল এমএ তুলনামূলকভাবে নতুন এবং দীর্ঘমেয়াদে প্রমাণিত নয়।
বিরল ট্রেডিং কিছু সুযোগ হারাতে পারে।
বোলিংজার ব্যান্ডের মতো আরও সূচক যোগ করা সিস্টেমকে আরও উন্নত করতে পারে।
বিভিন্ন সম্পদ এবং সময়সীমার জন্য সর্বোত্তম সমন্বয় খুঁজে পেতে প্যারামিটার টিউনিং।
একক ট্রেড হ্রাস নিয়ন্ত্রণের জন্য গতিশীল স্টপ চালু করুন।
ট্রেন্ড রাইড মিস করা এড়াতে ট্রেন্ড ফিল্টার অন্তর্ভুক্ত করুন।
বাজারের অবস্থার উপর ভিত্তি করে ফ্রিকোয়েন্সি এবং আকার সামঞ্জস্য করে পজিশন সাইজিং অপ্টিমাইজ করুন।
এলোমেলো দোলন কৌশলটি পরিসীমা-সীমাবদ্ধ বাজারে সুযোগগুলি ক্যাপচার করার জন্য একাধিক প্রযুক্তিগত বিশ্লেষণ কৌশলকে একত্রিত করে। এটি সূচক সংহতকরণ, কম মিথ্যা সংকেত এবং উন্নত দক্ষতার সুবিধাগুলি সরবরাহ করে। তবে এটি অন্তর্নিহিত ঝুঁকিও বহন করে যা আরও অপ্টিমাইজেশন এবং অভিযোজন প্রয়োজন। সামগ্রিকভাবে, এটি দোলন বাজারের ব্যবসায়ের জন্য একটি শক্তিশালী, ব্যবহারিক পদ্ধতির প্রতিনিধিত্ব করে।
/*backtest start: 2022-10-30 00:00:00 end: 2023-11-05 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Ichimoku Kinko Hyo + HULL-MA_X + MacD", shorttitle="@m", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=1000, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0) keh=input(title="Double HullMA",defval=12, minval=1) n2ma=2*wma(close,round(keh/2)) nma=wma(close,keh) diff=n2ma-nma sqn=round(sqrt(keh)) n2ma1=2*wma(close[1],round(keh/2)) nma1=wma(close[1],keh) diff1=n2ma1-nma1 sqn1=round(sqrt(keh)) n1=wma(diff,sqn) n2=wma(diff1,sqn) b=n1>n2?lime:red c=n1>n2?green:red d=n1>n2?red:green TenkanSenPeriods = input(9, minval=1, title="Tenkan Sen Periods") KijunSenPeriods = input(24, minval=1, title="Kijun Sen Periods") SenkouSpanBPeriods = input(51, minval=1, title="Senkou Span B Periods") displacement = input(24, minval=1, title="Displacement") donchian(len) => avg(lowest(len), highest(len)) TenkanSen = donchian(TenkanSenPeriods) KijunSen = donchian(KijunSenPeriods) SenkouSpanA = avg(TenkanSen, KijunSen) SenkouSpanB = donchian(SenkouSpanBPeriods) LS=close, offset = -displacement MACD_Length = input(9) MACD_fastLength = input(12) MACD_slowLength = input(24) MACD = ema(close, MACD_fastLength) - ema(close, MACD_slowLength) aMACD = ema(MACD, MACD_Length) a1=plot(n1,color=c) a2=plot(n2,color=c) plot(cross(n1, n2) ? n1 : na, style = circles, color=b, linewidth = 4) plot(cross(n1, n2) ? n1 : na, style = line, color=d, linewidth = 3) plot(TenkanSen, color=blue, title="Tenkan Sen", linewidth = 2) plot(KijunSen, color=maroon, title="Kijun Sen", linewidth = 3) plot(close, offset = -displacement, color=orange, title="Chikou Span", linewidth = 2) p1=plot (SenkouSpanA, offset = displacement, color=green, title="Senkou Span A", linewidth = 2) p2=plot (SenkouSpanB, offset = displacement, color=red, title="Senkou Span B", linewidth = 3) fill(p1, p2, color = SenkouSpanA > SenkouSpanB ? green : red) closelong = n1<n2 and close<n2 and (MACD<aMACD or TenkanSen<KijunSen or close<KijunSen) if (closelong) strategy.close("Long") closeshort = n1>n2 and close>n2 and (MACD>aMACD or TenkanSen>KijunSen or close>KijunSen) if (closeshort) strategy.close("Short") longCondition = n1>n2 and close>n2 and MACD>aMACD and (TenkanSen>KijunSen or close>KijunSen) if (longCondition) strategy.entry("Long",strategy.long) shortCondition = n1<n2 and close<n2 and MACD<aMACD and (TenkanSen<KijunSen or close<KijunSen) if (shortCondition) strategy.entry("Short",strategy.short)