এই কৌশলটি ডিএমআই সূচকের উপর ভিত্তি করে নির্মিত হয়, স্টক মূল্যের প্রবণতা দিক নির্ধারণের জন্য + ডিআই এবং - ডিআই এর ক্রসওভার পর্যবেক্ষণ করে এবং প্রবণতা ট্র্যাকিং অর্জনের জন্য প্রবণতার শক্তি সনাক্ত করতে এডিএক্স সূচক ব্যবহার করে। যখন + ডিআই - ডিআই এর উপরে অতিক্রম করে, তখন দীর্ঘ যান; যখন স্টপ লস মূল্যটি ট্রিগার করা হয় বা - ডিআই + ডিআই এর নীচে অতিক্রম করে, অবস্থানটি বন্ধ করুন।
এই কৌশলটি ডিএমআই সূচকের দুটি উপাদান ব্যবহার করেঃ + ডিআই এবং - ডিআই। + ডিআই আপগ্রেড গতিবেগ পরিমাপ করে। - ডিআই এর উপর + ডিআই এর আপগ্রেড ক্রসওভার আপগ্রেড গতিবেগকে শক্তিশালী করে। - ডিআই ডাউনগ্রেড গতিবেগ পরিমাপ করে। + ডিআই এর নীচে - ডিআই এর ডাউনগ্রেড ক্রসওভার ডাউনগ্রেড গতিবেগকে শক্তিশালী করে।
যখন +ডিআই -ডিআই এর উপরে অতিক্রম করে, তখন একটি আপট্রেন্ড উদীয়মান হয় এবং কৌশলটি দীর্ঘ হয়। পজিশনে প্রবেশের পরে, একটি ট্রেইলিং লিনিয়ার স্টপ লস সর্বোচ্চ মূল্যের একটি নির্দিষ্ট শতাংশ ট্র্যাক করে। যখন দামটি পিছনে টানবে, স্টপ লস দামটি সেই অনুযায়ী নেমে যাবে, কিছু পূর্ববর্তী মুনাফা কিছুটা অবরুদ্ধ করে।
যখন -ডিআই +ডিআই এর নীচে অতিক্রম করে, তখন একটি ডাউনট্রেন্ড গ্রহণ করে এবং কৌশলটি তার অবস্থানটি বন্ধ করে দেয়। এডিএক্স সূচকটি প্রবণতার শক্তি সনাক্ত করতে ব্যবহার করা যেতে পারে। এডিএক্স যত বেশি হবে, প্রবণতা তত বেশি স্পষ্ট হবে। যেমন, কৌশলটি এডিএক্সকে প্রবেশের জন্য একটি সহায়ক সূচক হিসাবে ব্যবহার করে, কেবলমাত্র যখন এডিএক্স একটি নির্দিষ্ট পরিসরের মধ্যে থাকে তখনই একটি অবস্থানে প্রবেশ করে।
সংক্ষেপে, এই কৌশলটি চলমান গড় প্রবণতা ট্র্যাকিং বাস্তবায়নের জন্য মূল্য প্রবণতার inflection পয়েন্টগুলি ক্যাপচার করে।
এই কৌশলটির প্রধান সুবিধাগুলি তিনটি দিক থেকে প্রতিফলিত হয়ঃ
দামের প্রবণতা নির্ধারণের জন্য ডিএমআই সূচক ব্যবহার করা সঠিক এবং নির্ভরযোগ্য। সাধারণ চলমান গড় এবং অন্যান্য সূচকগুলির তুলনায় ডিএমআই প্রবণতা বিপরীত বিচার করতে আরও সঠিক।
প্রবণতার শক্তি চিহ্নিত করার জন্য ADX সূচকটি প্রয়োগ করা ঝামেলাপূর্ণ বাজারে ঘন ঘন ট্রেডিং এড়ায়, যা কৌশলটিকে আরও শক্তিশালী করে তোলে।
লিনিয়ার ট্রেইলিং স্টপ মেকানিজমটি স্টপ লস পজিশনকে গতিশীলভাবে সামঞ্জস্য করতে পারে এবং প্রবণতা বিপরীত হলে তাড়াতাড়ি বেরিয়ে আসতে পারে, ঝুঁকি কার্যকরভাবে নিয়ন্ত্রণ করতে আংশিক মুনাফা লক করতে পারে।
কৌশল নিয়মগুলি সহজ এবং পরিষ্কার, সহজেই বোঝা এবং বাস্তবায়ন করা যায়, অ্যালগরিদমিক ট্রেডিংয়ের জন্য উপযুক্ত।
এই কৌশলটির প্রধান ঝুঁকিগুলি হলঃ
ডিএমআই সূচক নির্দিষ্ট বিশেষ বাজারে ব্যর্থ হওয়ার সম্ভাবনা। ডিএমআই সমস্ত বাজারে প্রযোজ্য নয়। প্রবণতা স্পষ্ট না হলে এটি মিথ্যা সংকেত তৈরি করতে পারে।
স্টপ লস লেভেলের নিচে দামের ফাঁক হওয়ার ঝুঁকি। কিছু বাফার রুম ছেড়ে দেওয়া এই ধরনের ঝুঁকিগুলি হ্রাস করতে পারে।
ভুল ADX পরামিতি সেটিংস থেকে ঝুঁকি। ADX পরামিতি সরাসরি কৌশল সময় ফলাফল প্রভাবিত। কর্মক্ষমতা খুব বেশি বা খুব কম সেট করা হলে প্রভাবিত হবে।
রৈখিক ট্রেইলিং স্টপ পদ্ধতির কারণে দ্রুত অগ্রসর হওয়া আপট্রেন্ডে বন্ধ হওয়ার সহজতা। নির্দিষ্ট পরিস্থিতির উপর ভিত্তি করে ট্রেইলিং স্টপ পরামিতিগুলি সামঞ্জস্য করা যেতে পারে।
প্যারামিটার টিউনিং, কঠোর স্টপ লস, প্রোগ্রাম আর্কিটেকচার অপ্টিমাইজ করা ইত্যাদির মাধ্যমে ঝুঁকি আরও হ্রাস করা যেতে পারে।
এই কৌশলটি বেশ কয়েকটি দিক থেকে অপ্টিমাইজ করা যেতে পারেঃ
কৌশলগত স্থিতিশীলতা বাড়ানোর জন্য সহায়ক মূল্যায়নের জন্য এমএসিডি, কেডিজে এর মতো অন্যান্য সূচক ব্যবহার করুন।
বিভিন্ন স্টপ লস পদ্ধতি যেমন কার্ভ ট্রেইলিং স্টপ, টাইম-ভিত্তিক ট্রেইলিং স্টপ ইত্যাদি পরীক্ষা করুন।
ট্রেন্ডের দিকনির্দেশ নিশ্চিত হওয়ার পর ধীরে ধীরে পজিশন তৈরির জন্য পজিশন সাইজিং প্রক্রিয়া যুক্ত করুন, লাভজনকতা উন্নত করুন।
উচ্চতর বুদ্ধিমত্তার জন্য ডিএমআই এবং এডিএক্স পরামিতিগুলিকে গতিশীলভাবে অনুকূলিত করতে উচ্চ ফ্রিকোয়েন্সি ফ্যাক্টর, মেশিন লার্নিং ইত্যাদি অন্তর্ভুক্ত করুন।
সর্বাধিক ড্রাউনডাউনকে কঠোরভাবে পরিচালনা করার জন্য ঝুঁকি বাজেটিং ইত্যাদি ব্যবহার করে প্রোগ্রাম্যাটিক ঝুঁকি নিয়ন্ত্রণ মডিউল যুক্ত করুন।
কৌশলগত দক্ষতা, স্থিতিশীলতা এবং নিরাপত্তা কার্যকরভাবে বাড়ানোর জন্য বিভিন্ন উপায় একত্রিত করা যেতে পারে।
এই কৌশলটির সামগ্রিক যুক্তি স্পষ্ট এবং বোঝা সহজ, দামের প্রবণতার দিকনির্দেশ নির্ধারণের জন্য ডিএমআই সূচক এবং প্রবণতার শক্তির একটি সহায়ক পরিমাপ হিসাবে এডিএক্স সূচক ব্যবহার করে, রৈখিক ট্রেলিং স্টপগুলি কার্যকরভাবে ঝুঁকি নিয়ন্ত্রণ করে। কৌশলটি তুলনামূলকভাবে স্থিতিশীল তবে এখনও নির্দিষ্ট ঝুঁকিগুলির বিরুদ্ধে সতর্কতার আহ্বান জানায়। ক্রমাগত অপ্টিমাইজেশন এবং পরীক্ষার মাধ্যমে কৌশল দৃust়তা এবং দক্ষতার জন্য ধারাবাহিক উন্নতি করা যেতে পারে। বিশ্বাস করা হয় যে এই কৌশলটির প্রবণতা ট্র্যাকিং কৌশলগুলির একটি দুর্দান্ত প্রতিনিধি হওয়ার সম্ভাবনা রয়েছে।
/*backtest start: 2023-02-13 00:00:00 end: 2024-02-19 00:00:00 period: 1d basePeriod: 1h 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/ //@version=5 //1.0 - 240202 @caddjax strategy(title = "+DI Crossover", overlay=false) //DMI + ADX Chart w/ overlay // © jrregencia lensig = input.int(14, title="ADX Smoothing", minval=1, maxval=50) len = input.int(6, minval=1, title="DI Length") up = ta.change(high) down = -ta.change(low) plusDM = na(up) ? na : (up > down and up > 0 ? up : 0) minusDM = na(down) ? na : (down > up and down > 0 ? down : 0) trur = ta.rma(ta.tr, len) plus = fixnan(100 * ta.rma(plusDM, len) / trur) minus = fixnan(100 * ta.rma(minusDM, len) / trur) sum = plus + minus adx = 100 * ta.rma(math.abs(plus - minus) / (sum == 0 ? 1 : sum), lensig) adxmax = input.int(50, title="ADX Max Buying Area", minval=1, maxval=100) adxmin = input.int(0, title="ADX Min Buying Area", minval=0, maxval=99) //DI cross alert DIPcross = ta.crossover(plus, minus) ? plus : na plotshape(DIPcross, style = shape.cross , color=color.white, location=location.absolute) plot(adx, color=color.rgb(255, 238, 0, 23), title="ADX", linewidth=2) p1 = plot(plus, color=color.rgb(16, 137, 0, 31), title="+DI", linewidth=1) p2 = plot(minus, color=color.rgb(143, 82, 255, 25), title="-DI", linewidth=1) adxmaxl = hline(adxmax, title="ADX MaxLine", color=color.silver, linestyle=hline.style_solid) adxminl = hline(adxmin, title="ADX MinLine", color=color.silver, linestyle=hline.style_solid) fill(p1, p2, title="Cloud Fill", color = plus > minus ? color.teal : color.red, transp=50) fill(adxmaxl, adxminl, title="ADX Fill", color=color.silver, transp=90) // Configure trail stop level with input options (optional) longTrailPerc = input.float(3, title="Trail Long Loss (%)", minval=0.0, step=0.1) * 0.01 // Determine trail stop loss prices longStopPrice = 0.0 // Determine entry condition enterLong = ta.crossover(plus, minus) ? plus : na longStopPrice := if strategy.position_size > 0 stopValue = high[1] * (1 - longTrailPerc) math.max(stopValue, longStopPrice[1]) else 0 // Submit entry orders if enterLong strategy.entry("EL", strategy.long) // Submit exit orders for trail stop loss price if strategy.position_size > 0 strategy.exit("XL TRL STP", stop=longStopPrice)