ডিএমআই সূচক গণনা এবং প্রয়োগ

লেখক:ভাল, তৈরিঃ 2019-08-03 14:24:10, আপডেটঃ 2023-11-08 20:43:17

img

ডিএমআই সূচকগুলির ভূমিকা

ডিএমআই সূচকটিকে গতি সূচক বা প্রবণতা সূচকও বলা হয়, এর সম্পূর্ণ নাম ডিরেকশনাল মুভমেন্ট ইনডেক্স (ডিএমআই) । এটি আমেরিকান প্রযুক্তিগত বিশ্লেষণ গুরু ওয়েলস ওয়াইল্ডার দ্বারা তৈরি করা হয়েছিল, এটি একটি মাঝারি এবং দীর্ঘমেয়াদী বাজার প্রযুক্তিগত বিশ্লেষণ পদ্ধতি।

ডিএমআই সূচক হল দামের বৃদ্ধি এবং পতনের প্রক্রিয়াতে ক্রেতা এবং বিক্রেতাদের ভারসাম্য পয়েন্টের পরিবর্তন, অর্থাৎ, লং এবং শর্ট উভয় পক্ষের শক্তির পরিবর্তন মূল্যের ওঠানামা দ্বারা প্রভাবিত হয় এবং ভারসাম্য থেকে ভারসাম্যহীনতা পর্যন্ত চক্রীয় প্রক্রিয়া ঘটে, এইভাবে প্রবণতা বিচার করার জন্য একটি প্রযুক্তিগত সূচক সরবরাহ করে।

সূচক গণনা

সম্প্রতি, পরিমাণগত ট্রেডিং ব্যবসায়ের বেশ কয়েকটি বন্ধু আমাকে FMZ Quant পরিমাণগত ট্রেডিং প্ল্যাটফর্মে DMI সূচকটি কীভাবে ব্যবহার করবেন সে সম্পর্কে পরামর্শ করেছে। আমি ভেবেছিলাম এটি একটি খুব সহজ সমস্যা, এবং আমি এই সূচক ফাংশনটি খুঁজে পেতে API ডকুমেন্টেশনটি খুললাম। খুঁজে পেয়েছি যে এই সূচকটি বহুমুখী তালিব সূচক লাইব্রেরিতে পাওয়া যায় না। কিছু গুগলিংয়ের পরে, আমি কিছু তথ্য পেয়েছি।

এটি পাওয়া যায় যে এই সূচকটি চারটি সূচক নিয়ে গঠিত। অ্যালগরিদমটি খুব জটিল নয়। কেবল অ্যালগরিদমটি অনুসরণ করুন এবং ঠিক থাকবে।

অ্যালগরিদমের ঠিকানাঃhttps://www.fmz.com/strategy/154050

  • উৎস কোড

// indicator function
function AdX(MDI, PDI, adx_period) {
    if(typeof(MDI) == "undefined" || typeof(PDI) == "undefined"){
        Return false
    }

    if(MDI.length < 10 || PDI.length < 10){
        Return false
    }

    /*
    dX = abs(DIPlus-DIMinus) / (DIPlus+DIMinus)*100
    AdX = sma(dX, len)
    */

    var dx = []
    for(var i = 0; i < MDI.length; i++){
        if(!MDI[i] || !PDI[i]){
            continue
        }
        var dxValue = Math.abs((PDI[i] - MDI[i])) / (PDI[i] + MDI[i]) * 100
        var obj = {
            close : dxValue,
        }
        dx.push(obj)
    }

    if(dx.length < adx_period){
        Return false
    }

    var adx = talib.SMA(dx, adx_period)

    Return adx
}

function DMI(records, pdi_period, mdi_period, adxr_period, adx_period) {
    var recordsHLC = []
    for(var i = 0; i < records.length ; i++){
        var bar = {
            High : records[i].High,
            Low : records[i].Low,
            close : records[i].close,
        }
        recordsHLC.push(bar)
    }
    
    var m_di = talib.MINUS_DI(recordsHLC, mdi_period)
    var p_di = talib.PLUS_DI(recordsHLC, pdi_period)

    var adx = AdX(m_di, p_di, adx_period)
    
    // adXR=(AdX of the day before the AdX+ AX)÷2
    var n = 0
    var adxr = []
    for (var j = 0 ; j < adx.length; j++) {
        if (typeof(adx[j]) == "number") {
            n++
        }
        
        if (n >= adxr_period) {
            var curradxr = (adx[j] + adx[j - adxr_period]) / 2
            adxr.push(curradxr)
        } else {
            adxr.push(NaN)
        }
    }
    
    Return [m_di, p_di, adx, adxr]
}
  • তুলনা

FMZ Quant এর ডেটা লাইব্রেরি ব্যবহার করে, একটি চার্ট আঁকতে এবং অন্যান্য চার্টের সাথে DMI তুলনা করা সহজ।

img img

একাধিক কে-লাইন বারগুলিতে সূচক মানগুলির তুলনা করে, মানগুলি মূলত একই (সামান্য ঘূর্ণিত বিচ্যুতি) ।

  • ব্যবহার

সরাসরি ডিএমআই ফাংশন ব্যবহার করুন (যেমন উদাহরণে প্রধান ফাংশনে বলা উপায়), কে লাইন ডেটা পাস করুন, সূচক পরামিতিগুলি সেট করুন, যা সাধারণত 14 হয়।

ফাংশন দ্বারা ফেরত দেওয়া তথ্য হল চারটি লাইন প্রতিনিধিত্বকারী একটি দ্বি-মাত্রিক অ্যারে।

ডিআই-: এম_ডি ডিআই+: পি_ডি অ্যাডএক্স: অ্যাডএক্স adXR: adxr

DMI সূচকের এই চারটি লাইনের মধ্যে DI- এবং DI+ হল লং এবং শর্ট সূচক, যা লং এবং শর্ট পজিশনের শক্তিকে প্রতিফলিত করে।

AdX এবং adXR হল একসাথে ব্যবহৃত সূচক লাইনগুলির একটি জোড়া, যা প্রবণতা সূচক, যা বাজারের বর্তমান প্রবণতা এবং দিক প্রতিফলিত করে।

ডিআই +, সূচকটির মান যত বেশি, বর্তমান ষাঁড়ের বাজার তত শক্তিশালী, অন্যথায় ষাঁড়ের বাজার ততই দুর্বল। ডিআই, উপরের বিপরীত। ডিআই+, ডিআই- প্রায়ই পরস্পরের সাথে যুক্ত হয়, এবং মূল্যের মধ্যে যত কাছাকাছি হয়, বাজারটি একটি ঘাটতিতে থাকে। বিপরীতভাবে, প্রবণতা জোরদার হয়।

সিগন্যাল

  • দামের নীচের সিগন্যাল

দীর্ঘমেয়াদী মূল্য হ্রাসের পরে, যদি নিম্নলিখিত শর্তগুলি স্বল্পমেয়াদে পূরণ করা হয় তবে এটি নির্দেশ করে যে স্বল্পমেয়াদী মূল্যের নীচে পৌঁছেছে এবং একটি রিবাউন্ড বা বিপরীত হতে পারে।

লং ক্রয়ের শক্তির প্রতিনিধিত্বকারী ডিআই+ লাইনটি ১০ এর নিচে এবং লাইনটি ওভারসোল্ড পজিশনে উপরে ফিরে আসে এবং ডিআই-লাইনটি উচ্চ পজিশনে থাকে।

প্রবণতা প্রতিনিধিত্বকারী AdX রেখাটি 65 এর উপরে উচ্চতর অবস্থানে রয়েছে, যা নেমে যায় এবং adXR রেখার সাথে একটি নিচে ক্রস গঠন করে।

  • দামের শীর্ষ সংকেত

দীর্ঘমেয়াদী বৃদ্ধির পর, যদি নিম্নলিখিত শর্তগুলি স্বল্পমেয়াদে পূরণ করা হয়, তবে স্বল্পমেয়াদী উচ্চমূল্য পৌঁছেছে এবং স্বল্পমেয়াদী সমন্বয় বা বিপরীতমুখী হতে পারে।

শর্ট-সেলিং শক্তির প্রতিনিধিত্বকারী ডিআই-লাইন ১০ এর নিচে, এবং লাইনটি নিম্ন অবস্থানে উপরের দিকে ঘুরিয়ে দেওয়া হয়, এবং ডিআই + লাইনটি উচ্চ অবস্থানে রয়েছে।

প্রবণতা প্রতিনিধিত্বকারী AdX রেখাটি 65 এর উপরে উচ্চতর অবস্থানে রয়েছে, যা নেমে যায় এবং adXR রেখার সাথে একটি নিচে ক্রস গঠন করে।

  • প্রবণতা বাড়ছে

মূল্য আন্দোলনের একটি সময়ের পরে, ডিএমআই এর চারটি সূচক লাইন নিম্ন মূল্যে আন্তঃসংযুক্ত হয়, এবং তারপরে হঠাৎ করেই একটি দীর্ঘ ইতিবাচক কে-লাইন থাকে যার বড় পরিমাণে মূল্য 5% এরও বেশি বৃদ্ধি পায়। ডিআই + লাইনটি দুই দিনের মধ্যে ডিআই-লাইন, অ্যাডএক্স লাইন এবং অ্যাডএক্সআর লাইনকে অবিচ্ছিন্নভাবে অতিক্রম করে, এটি নির্দেশ করে যে একটি নতুন আপট্রেন্ড গঠিত হবে। ডিআই + লাইনটি শেষ সূচক লাইনটি অতিক্রম করার পরে আপনি অবস্থানটি খুলতে পারেন।


আরো