এই কৌশলটি প্রবণতার দিক নির্ধারণ এবং প্রবণতা অনুসরণ করার জন্য গড় দিকনির্দেশক সূচক (এডিএক্স), দিকনির্দেশক আন্দোলন সূচক (ডিএমআই) এবং পণ্য চ্যানেল সূচক (সিসিআই) সহ গতির সূচকগুলি ব্যবহার করে। এটি যখন এডিএক্স এবং প্রবণতা সূচকগুলি একটি প্রবণতা নিশ্চিত করে এবং সিসিআই ওভারস্ট্যান্ডেড হয় তখন এটি অবস্থান প্রবেশ করে।
ADX, DMI এবং CCI সূচক গণনা করুন।
ট্রেন্ডের দিকনির্দেশনা নির্ধারণ করুন।
অবস্থান প্রবেশ করান.
স্টপ লস সহ পজিশনের প্রস্থান।
ADX দুর্বল প্রবণতার সময় ট্রেডিং ফিল্টার করে।
ডিএমআই ট্রেন্ড সনাক্তকরণে ভুল হ্রাস করে।
সিসিআই-র অতিরিক্ত সম্প্রসারণে প্রবেশ করা সময়কে উন্নত করে এবং ঝুঁকি হ্রাস করে।
গতির সূচক একত্রিত করা সঠিকতা বৃদ্ধি করে।
ট্রেড প্রতি স্টপ লস লস সীমাবদ্ধ করে।
যখন ADX কমে যায় তখন Whipsaws। ADX প্রান্তিক বৃদ্ধি যথেষ্ট শক্তিশালী প্রবণতা নিশ্চিত করতে।
ডিএমআই প্রবণতার প্রাথমিক পর্যায়ে পিছিয়ে আছে। সুযোগ চিহ্নিত করতে অন্যান্য বিশ্লেষণ যোগ করুন।
উচ্চ সিসিআই ট্রেডিং ফ্রিকোয়েন্সি। শব্দ ফিল্টার করতে সিসিআই পরিসীমা প্রসারিত করুন।
সামগ্রিক পজিশন ঝুঁকি সুরক্ষার জন্য লং এবং শর্ট পজিশনের সময় মার্কেট নিউট্রাল স্ট্র্যাটেজি বিবেচনা করুন।
শব্দ ফিল্টারিং এবং ধরা প্রবণতা ভারসাম্য ADX পরামিতি অপ্টিমাইজ করুন।
বিলম্ব এবং সংবেদনশীলতা ভারসাম্য বজায় রাখার জন্য ডিএমআই পরামিতিগুলি অপ্টিমাইজ করুন।
ট্রেডিং ফ্রিকোয়েন্সি এবং বিপরীতমুখী পরিস্থিতির প্রতিরোধের জন্য সিসিআই পরামিতিগুলি অপ্টিমাইজ করা।
আরও ভাল সংমিশ্রণের জন্য সূচক যোগ বা সংশোধন পরীক্ষা করুন। উদাহরণস্বরূপ MACD, KDJ।
সেরা ফিট খুঁজে পেতে বিভিন্ন পণ্য পরীক্ষা করুন।
ট্রেন্ড ট্র্যাকিং বজায় রেখে ঝুঁকি নিয়ন্ত্রণের জন্য পজিশন সাইজিং অপ্টিমাইজ করুন।
কৌশলটি প্রবণতার জন্য এডিএক্স, দিকনির্দেশের জন্য ডিএমআই এবং বিপরীতের জন্য সিসিআই ব্যবহার করে। তবে ঝুঁকি নিয়ন্ত্রণের জন্য পরামিতিগুলির অপ্টিমাইজেশান এবং অবস্থানের আকারের প্রয়োজন। সঠিকভাবে সুরক্ষিত এবং ট্রেন্ডিং পণ্যগুলিতে প্রয়োগ করা হলে, এটি স্থিতিশীল রিটার্ন সরবরাহ করতে পারে। ব্যবসায়ীদের পরিবর্তনশীল বাজারের জন্য গতিশীলভাবে সামঞ্জস্য করা উচিত।
/*backtest start: 2023-10-02 00:00:00 end: 2023-11-01 00:00:00 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("ADX Strategy", currency = "USD", initial_capital = 1000, overlay=true) adxlen = input(9, title="ADX Smoothing") dilen = input(14, title="DI Length") ADX_Entry = input(25, title="ADX Entry") dirmov(len) => up = change(high) down = -change(low) truerange = rma(tr, len) plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, len) / truerange) minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, len) / truerange) [plus, minus] adx(dilen, adxlen) => [plus, minus] = dirmov(dilen) sum = plus + minus adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen) [adx, plus, minus] [sig, up, down] = adx(dilen, adxlen) cci_length = input(20, minval=1, title="CCI Length") cci_ma = sma(close, cci_length) cci = (close - cci_ma) / (0.015 * dev(close, cci_length)) stop_loss = syminfo.mintick * 100 open_longs = strategy.position_size > 0 open_shorts = strategy.position_size < 0 possible_bull = false possible_bull := not open_longs ? (possible_bull[1] and not crossunder(up,down) ? true : false) : false possible_bear = false possible_bear := not open_shorts ? (possible_bear[1] and not crossunder(down,up) ? true : false) : false bool bull_entry = crossover(up,down) if(bull_entry and up < ADX_Entry and cci < 0) possible_bull := true bull_entry := false if(possible_bull and up > ADX_Entry and cci > -100) bull_entry := true bool bear_entry = crossover(down,up) if(bear_entry and down < ADX_Entry and cci > 0) possible_bear := true bear_entry := false if(possible_bear and down >= ADX_Entry and cci < 100) bear_entry := true strategy.entry("Short", strategy.short, qty = 1,comment="Short", stop=high[1] - stop_loss, when = bear_entry) strategy.entry("Long", strategy.long, qty = 1, comment="Long", stop=low[1] - stop_loss, when = bull_entry ) strategy.close_all(when = (open_shorts and (crossover(up,down) or crossover(sig,down))) or (open_longs and ( crossover(down,up) or crossover(sig, up))))