ADX সূচকের উপর ভিত্তি করে ট্রেন্ড রিভার্সাল কৌশল


সৃষ্টির তারিখ: 2023-09-13 17:02:31 অবশেষে সংশোধন করুন: 2023-09-13 17:02:31
অনুলিপি: 3 ক্লিকের সংখ্যা: 915
1
ফোকাস
1617
অনুসারী

এই কৌশলটির নাম হল ADX-এর উপর ভিত্তি করে প্রবণতা বিপরীতকরণ কৌশল। এই কৌশলটি ADX-এর উপর ভিত্তি করে প্রবণতার শক্তি নির্ধারণ করে এবং ওভারবয় ওভারসোলের সময় বিপরীতকরণের সুযোগকে ধরে রাখে।

ADX হল গড় প্রবণতা সূচক, যা প্রবণতার শক্তিকে প্রতিফলিত করে। ADX এর মান যত বেশি, প্রবণতা তত বেশি শক্তিশালী। যখন ADX 25 এর চেয়ে বড় হয়, তখন একটি স্পষ্ট প্রবণতা বলে মনে করা হয়।

ডিএমআই এর মধ্যে ডিআই+ এবং ডিআই- দুইটি লাইন রয়েছে। ডিআই+ উপরে উঠার প্রবণতা দেখায়, ডিআই- উপরে নেমে যাওয়ার প্রবণতা দেখায়।

এই কৌশলটির লেনদেনের যুক্তিঃ

  1. যখন এডিএক্স ৪৫ এর উপরে থাকে, তখন প্রবণতা খুব শক্তিশালী বলে মনে করা হয়।

  2. এই সময়ে যদি ডিআই+ ডিআই-এর চেয়ে কম হয়, তবে এটি একটি ওভারসোল্ড অবস্থা হিসাবে বিবেচিত হয়, প্রবণতাটি বিপরীত হওয়ার সুযোগ রয়েছে এবং আরও বেশি করা উচিত।

  3. বিপরীতে, যদি ডিআই-ডিআই-এর চেয়ে কম হয়, তবে এটি একটি ওভারবয় হিসাবে বিবেচিত হয়, একটি বিপরীতমুখী সুযোগ এবং খালি করা হয়।

  4. “এখন আমরা আমাদের লক্ষ্যে পৌঁছাতে পারবো না।

এই কৌশলটির সুবিধা হল যে এটি শক্তিশালী প্রবণতার বিপরীত দিক নির্ধারণের জন্য ADX ব্যবহার করে। উচ্চ ADX মানগুলি কার্যকরভাবে অস্থির বাজারের মিথ্যা সংকেতগুলিকে ফিল্টার করতে পারে। তবে ADX প্যারামিটারগুলি অপ্টিমাইজ করা দরকার এবং স্টপ লস কৌশলগুলিও গুরুত্বপূর্ণ।

সামগ্রিকভাবে, এডিএক্স সূচকটি শক্তিশালী প্রবণতা বিপরীত হওয়ার সময় নির্ধারণের জন্য ভাল। তবে ব্যবসায়ীদের আরও অনেক বিষয়ের দিকে মনোযোগ দিতে হবে, এডিএক্স কেবলমাত্র একটি সহায়ক বিচার সূচক হিসাবে কাজ করে।

কৌশল সোর্স কোড
/*backtest
start: 2023-08-13 00:00:00
end: 2023-09-12 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(shorttitle='DMI swings',title='DMI swings', overlay=true, initial_capital = 100, process_orders_on_close=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, commission_type=strategy.commission.percent, commission_value=0.1)

//Backtest dates
fromMonth = input(defval = 1,    title = "From Month",      type = input.integer, minval = 1, maxval = 12)
fromDay   = input(defval = 1,    title = "From Day",        type = input.integer, minval = 1, maxval = 31)
fromYear  = input(defval = 2021, title = "From Year",       type = input.integer, minval = 1970)
thruMonth = input(defval = 1,    title = "Thru Month",      type = input.integer, minval = 1, maxval = 12)
thruDay   = input(defval = 1,    title = "Thru Day",        type = input.integer, minval = 1, maxval = 31)
thruYear  = input(defval = 2112, title = "Thru Year",       type = input.integer, minval = 1970)

showDate  = input(defval = true, title = "Show Date Range", type = input.bool)

start     = timestamp(fromYear, fromMonth, fromDay, 00, 00)        // backtest start window
finish    = timestamp(thruYear, thruMonth, thruDay, 23, 59)        // backtest finish window
window()  => true        // create function "within window of time"

[pos_dm, neg_dm, avg_dm] = dmi(14, 14)

//Entry 
strategy.entry(id="long", long = true, when = avg_dm > 45 and pos_dm < neg_dm and window())

//Exit
strategy.close("long", when = avg_dm > 45 and pos_dm > neg_dm and window())