Skip to content
সব অপশন ও ফিউচারস গাইড
একটি সিস্টেমে দীর্ঘমেয়াদি সম্পর্কের সংখ্যা অনুমান করুন১৫ মিনিট পাঠ

Johansen Cointegration Test: Rank, Trace ও Maximum-Eigenvalue

Johansen test-এর cointegration rank কী গণনা করে, trace ও maximum-eigenvalue test-এর পার্থক্য, এবং lag ও deterministic term কেন গুরুত্বপূর্ণ—তা বুঝুন।

এই গাইডেCointegration rank স্বাধীন stationary সম্পর্কের সংখ্যা গণনা করে

সংক্ষিপ্ত সারাংশ

Johansen পদ্ধতি multivariate time-series system-এর long-run matrix-এর rank পরীক্ষা করে। rank \(r\) নির্দিষ্ট model-এর অধীনে পরস্পর স্বাধীন stationary combination-এর সংখ্যা গণনা করে। এই মান একাই tradable portfolio শনাক্ত করে না, causality প্রমাণ করে না, বা অনুমিত সম্পর্ক ভবিষ্যতেও থাকবে বলে নিশ্চয়তা দেয় না।

Cointegration rank স্বাধীন stationary সম্পর্কের সংখ্যা গণনা করে

ধরা যাক, \(y_t\)-তে \(k\)টি variable আছে এবং নির্দিষ্ট data-generating setup-এ প্রতিটি \(I(1)\) হিসেবে বিবেচিত। Cointegration rank \(r\) হলো তাদের level-এর linear combination-এর মধ্যে পরস্পর স্বাধীন stationary সম্পর্কের সংখ্যা। \(r=0\) হলে সেই specification-এ এমন combination পাওয়া যায়নি। \(0<r<k\) হলে \(r\)টি স্বাধীন long-run relation আছে এবং প্রচলিত \(I(1)\) system condition-এ \(k-r\)টি common stochastic trend থাকে। rank 1 মানে পুরো system জুড়ে একটি relation; এটি যে স্পষ্ট কোনো একটি asset pair-ই হবে, তা নয়।

এটি system-level প্রশ্ন। দুই ধাপের Engle–Granger পদ্ধতিতে একটি normalized long-run equation estimate করে তার fitted residual পরীক্ষা করা হয়। Johansen-এর likelihood পদ্ধতি vector autoregression-এর cointegrating space-এর dimension estimate ও test করে, তাই একাধিক স্বাধীন relation-ও উপস্থাপন করতে পারে। দুটি পদ্ধতি সম্পর্কিত কিন্তু আলাদা প্রশ্নের উত্তর দেয়; finite sample বা lag ও deterministic specification বদলালে ফল ভিন্ন হতে পারে।

VECM-এ rank স্পষ্টভাবে দেখা যায়

এখানে deterministic term বাদ দিয়ে, level VAR-কে সরলীকৃত vector error-correction form-এ লেখা যায়:

\[ \Delta y_t = \Pi y_{t-1} + \sum_{j=1}^{p-1}\Gamma_j\Delta y_{t-j}+\varepsilon_t, \qquad \Pi=\alpha\beta^{\mathsf T}. \]

এখানে \(p\) হলো level VAR-এর lag order। \(\beta\)-এর column long-run combination বর্ণনা করে, আর \(\alpha\)-তে adjustment loading থাকে, যা আগের disequilibrium-কে বর্তমান পরিবর্তনের সঙ্গে যুক্ত করে। \(\Pi\)-এর rank \(r\) হলে একে \(k\times r\) মাত্রার \(\alpha\) ও \(\beta\) matrix-এ factor করা যায়। system-এ error-correction term কতটি থাকবে, তা variable-এর সংখ্যা একা নয়, matrix-এর rank নির্ধারণ করে।

সব \(k\)টি series সত্যিই \(I(1)\) হলে প্রচলিত cointegrated case-এ \(r<k\)। full-rank ফল মানে fitted specification-এ অনুমোদিত deterministic term-এর চারপাশে level-গুলো stationary হতে পারে; তাই শুরুতে ধরা integration order আবার যাচাই করুন। rank zero প্রমাণ করে না যে variable-গুলোর কোনো ধরনের সম্পর্কই নেই। এর অর্থ নির্বাচিত model পরীক্ষিত rank-এ stationary level combination খুঁজে পায়নি।

দীর্ঘমেয়াদি সাধারণ প্রবণতা ভাগ করেও স্বল্পমেয়াদে ভিন্নভাবে ওঠানামা করা তিনটি সিরিজের ধারণাচিত্র
বহুচর সহসমাকলনের একটি সম্ভাব্য বিন্যাসের ধারণাচিত্র; এটি বাস্তব বাজার-তথ্য নয় এবং কোনো নির্দিষ্ট rank, সম্পর্ক বা ট্রেড সংকেত নির্ধারণ করে না।

Trace ও maximum-eigenvalue test-এর alternative আলাদা

অনুমিত eigenvalue-গুলোকে \(1>\hat\lambda_1\ge\hat\lambda_2\ge\cdots\ge\hat\lambda_k\ge0\) ক্রমে সাজান। এগুলো likelihood পদ্ধতির reduced-rank problem থেকে আসে; সাধারণ variance-explained percentage নয়। candidate rank \(r\)-এর জন্য trace statistic হলো:

\[ \operatorname{LR}_{\mathrm{trace}}(r)=-T\sum_{i=r+1}^{k}\ln(1-\hat\lambda_i), \]

এটি \(H_0:\operatorname{rank}(\Pi)\le r\) বনাম \(H_A:\operatorname{rank}(\Pi)>r\) পরীক্ষা করে এবং অবশিষ্ট eigenvalue-গুলোর প্রমাণ একত্র করে। maximum-eigenvalue statistic হলো:

\[ \operatorname{LR}_{\max}(r,r+1)=-T\ln(1-\hat\lambda_{r+1}), \]

এটি rank \(r\)-কে পরের rank \(r+1\)-এর সঙ্গে তুলনা করে। অর্থাৎ trace test জিজ্ঞেস করে মোট relation \(r\)-এর বেশি কি না, আর maximum-eigenvalue test জিজ্ঞেস করে পরের relation যোগ করার পক্ষে তথ্য আছে কি না। rank null-এর জন্য কোনো test-ই সাধারণ chi-square reference distribution ব্যবহার করে না।

কাল্পনিক eigenvalue ফল দিয়ে হিসাব দেখুন

তিনটি variable, ২০০টি ব্যবহারযোগ্য observation, এবং সাজানো eigenvalue \(0.16\), \(0.05\), \(0.01\)—এমন একটি system কল্পনা করুন। এগুলো ব্যাখ্যার জন্য বানানো মান, market estimate নয়। \(r=0\) হলে trace statistic তিনটি term যোগ করে প্রায় \(47.14\), আর maximum-eigenvalue statistic শুধু প্রথমটি নিয়ে প্রায় \(34.87\)। \(r=1\) হলে মান দুটি প্রায় \(12.27\) ও \(10.26\); \(r=2\) হলে দুটিই শেষ eigenvalue ব্যবহার করে প্রায় \(2.01\) হয়।

এই হিসাব test statistic দেয়, rank-এর সিদ্ধান্ত নয়। সিদ্ধান্ত নিতে নির্দিষ্ট deterministic case ও test sequence-এর উপযোগী critical value বা p-value-এর সঙ্গে তুলনা করুন। যেমন, software table-এ “\(r=0\) reject” মানে table-এর assumptions ও নির্বাচিত significance level-এর অধীনে rank zero-এর বিরুদ্ধে evidence আছে; কোনো নির্দিষ্ট asset spread stationary হওয়ার সরাসরি probability নয়। p-value cutoff-এর ওপরে হলে ওই rank null reject করা যায়নি—এতে null সত্য প্রমাণ হয় না।

Lag order ও deterministic term পরীক্ষাধীন system নির্ধারণ করে

rank ব্যাখ্যার আগে যুক্তিসঙ্গত VAR lag order বেছে নিন। level VAR-এর order \(p\) হলে VECM-এ \(p-1\)টি lagged difference থাকে। lag খুব কম হলে residual-এ serial correlation থেকে যেতে পারে; বেশি হলে degrees of freedom কমে finite-sample inference অস্থিতিশীল হতে পারে। Information criterion candidate সাজাতে সাহায্য করতে পারে, তবে residual diagnostics, sample size ও অর্থনৈতিক timing-ও গুরুত্বপূর্ণ। কীভাবে order বেছে নিয়েছেন জানান এবং যুক্তিসঙ্গত বিকল্প পরীক্ষা করুন।

intercept ও trend cointegrating relation-এর বাইরে থাকবে, relation-এর ভেতরে সীমাবদ্ধ থাকবে, নাকি maintained model-এ থাকবে না—তা ঠিক করুন। এতে long-run behavior ও rank-test distribution বদলে যায়। সবচেয়ে অনুকূল p-value খুঁজে specification বাছবেন না; প্রশ্ন ও data অনুযায়ী নির্বাচন করুন। নির্দিষ্ট deterministic case, variable-এর সংখ্যা ও implementation-এর সঙ্গে মেলে এমন critical value নিন। Johansen rank statistic-এর distribution nonstandard। MacKinnon, Haug ও Michelis নির্দিষ্ট Johansen-type likelihood-ratio test-এর response-surface distribution গণনা করেছেন; এর মধ্যে exogenous \(I(1)\) variable অনুমোদনকারী extension-ও আছে। এই মান সব rank-test setup-এ ব্যবহার করা যায় না।

Deterministic term কোথায় বসে, তা software-এর cosmetic option নয়। প্রচলিত parameterization-এ cointegrating relation-এর ভেতরে সীমাবদ্ধ constant equilibrium combination-কে nonzero mean নিতে দেয়; relation-এর বাইরে unrestricted constant level-এ অন্য ধরনের deterministic drift অনুমোদন করতে পারে। Trend restriction-ও model যে long-run path ধরে, তা বদলায়। শুধু “constant included” লিখলে যথেষ্ট নয়; constant-এর অবস্থান এবং প্রতিটি restriction জানান।

Estimated vector-এর normalization ও অর্থনৈতিক ব্যাখ্যা দরকার

মূল estimate হলো cointegrating space। rank-one model-এ \(\beta\) vector-কে যেকোনো nonzero constant দিয়ে গুণ করলেও কোন level combination stationary, তা বদলায় না। তাই analyst একটি normalization বেছে নেন, যেমন একটি coefficient-কে 1 করা। rank বেশি হলে একই space তৈরি করতে একাধিক basis সম্ভব; software-এ দেখানো vector-গুলো স্বয়ংক্রিয়ভাবে অনন্য অর্থনৈতিক সম্পর্ক নয়। নির্দিষ্ট vector ব্যাখ্যা করতে restriction বা অতিরিক্ত theory দরকার, এবং normalization জানাতে হবে।

adjustment matrix \(\alpha\) দেখায় fitted system-এ disequilibrium-এর প্রতিক্রিয়ায় কোন variable বদলায়। এর sign নির্বাচিত normalization-এর ওপর নির্ভরশীল; প্রতিটি entry system-এর শর্তাধীন coefficient, আলাদা causal effect নয়। ছোট বা শূন্য loading weak-exogeneity hypothesis-এর ইঙ্গিত দিতে পারে, কিন্তু উপসংহারের জন্য maintained model-এর অধীনে সংশ্লিষ্ট formal restriction test দরকার। শুধু cointegration rank থেকে কোন variable “lead” করে, কোন relation অর্থনৈতিকভাবে অর্থপূর্ণ, বা shock ভবিষ্যৎ price-এ কী প্রভাব ফেলবে—তা জানা যায় না।

এই nonuniqueness শুধু display-এর বিষয় নয়, matrix factorization-এর বৈশিষ্ট্য। Nonsingular \(H\)-এর জন্য \(\beta H\) এবং \(\alpha(H^{-1})^{\mathsf T}\) একই long-run matrix \(\Pi\) দেয়। তাই estimated space identified হলেও প্রদর্শিত আলাদা vector-গুলো unique নাও হতে পারে। কোনো vector-কে tradable spread হিসেবে বেছে নিতে স্পষ্ট normalization বা economic restriction দরকার; unit ও risk আলাদাভাবে বিশ্লেষণ করতে হবে।

Sequential decision ও model uncertainty rank-এর দাবিকে সীমিত করে

সাধারণত candidate rank শূন্য থেকে ক্রমানুসারে test করা হয় এবং প্রথম যে null reject হয় না, সেখানে থামা হয়। নির্বাচিত rank হলো নির্বাচিত significance level ও specification-এর অধীনে একটি model choice। trace ও maximum-eigenvalue ফল ভিন্ন হলে মতভেদ লুকাবেন না; lag length, deterministic term, দুর্বল test power, structural break ও sample sensitivity পরীক্ষা করে দুই ফলই জানান।

Likelihood-ratio critical value nonstandard এবং system specification-এর ওপর নির্ভরশীল। unit root-এর কাছাকাছি আচরণ, ছোট sample, outlier, regime shift, \(I(2)\) variable বা exogenous integrated regressor থাকলে সরল \(I(1)\) setup অনুপযুক্ত হতে পারে। সাধারণ rank table এসব case স্বয়ংক্রিয়ভাবে সামলায় না। Johansen-এর মূল কাজ Gaussian VAR assumption-এর অধীনে likelihood inference গড়ে তোলে; পরবর্তী response-surface calculation নির্দিষ্ট test setup-এর reference distribution দেয়, সব ধরনের data problem-এর নয়।

যেমন, trace test \(r=0\) এবং \(r=1\) reject করলেও \(r=2\) reject না করলে প্রচলিত sequential procedure ওই specification ও significance level-এ rank 2 বেছে নেয়। এর মানে rank সত্যিই 2 হওয়ার probability 1 নয়। Maximum-eigenvalue test পাশাপাশি থাকা rank null তুলনা করে, তাই তার সিদ্ধান্তও দেখান। এক test-এর critical value অন্য test statistic-এ ব্যবহার করবেন না।

নির্বাচিত rank sample period-এর ওপরও নির্ভর করে। Economic relation, market structure বা variable definition বদলালে sample-এর শুরুর ও শেষের অংশের estimate আলাদা হতে পারে। Sensitivity analysis অস্থিতিশীলতা দেখাতে পারে, কিন্তু বহু endpoint খুঁজলে আরেকটি multiple-testing সমস্যা তৈরি হয়। কোন window আগে থেকে স্থির করেছিলেন তা জানান; পরে খুঁজে নেওয়া split-কে exploratory evidence হিসেবে দেখুন।

Cointegration rank পেয়ার-ট্রেডিং সংকেত নয়

Trading study-তে estimated \(\beta\) vector spread নির্ধারণের একটি candidate হতে পারে, কিন্তু rank থেকে entry ও exit level, position size বা expected return পাওয়া যায় না। একাধিক cointegrating vector থাকলে একটি combination বেছে নিতে normalization, constraint ও data selection লাগে। Statistical relation অনুমিত হলেও weight short position, leverage বা কম liquidity বোঝাতে পারে।

প্রতিটি decision date-এ যে তথ্য পাওয়া যেত শুধু তা দিয়ে system estimate করুন এবং selection ও re-estimation-সহ পুরো প্রক্রিয়াটি chronologicalভাবে যাচাই করুন। sample-এর বাইরে relation স্থিতিশীল কি না দেখুন; প্রাসঙ্গিক হলে dividend, contract roll, currency conversion, financing, borrow availability, bid–ask spread, market impact ও execution timing ধরুন। কোনো rank null reject হওয়া নির্দিষ্ট model-এর প্রমাণ, profitability claim নয়। Engle–Granger test ও error correction এক-equation বিকল্পটি ব্যাখ্যা করে; পেয়ার ট্রেডিংয়ে cointegration বনাম correlation দেখায় correlation আলাদা বৈশিষ্ট্য।

Rank test পুনরায় করার মতো তথ্য জানান

\(k\)টি variable, transformation, observation frequency, sample date ও integration-order evidence লিখুন। level VAR lag order, deterministic term-এর অবস্থান, effective sample size, trace ও maximum-eigenvalue statistic, মেলা critical value বা p-value, significance level এবং sequential rank decision জানান। দুই test-এর ফল এক ছিল কি না, পরের ধাপে কোন rank ব্যবহার করেছেন এবং sensitivity check-এ ফল বদলেছে কি না উল্লেখ করুন।

vector দেখালে normalization, restriction ও সংশ্লিষ্ট adjustment loading দিন। Trading application-এ প্রতিটি rebalance-এর সময় পাওয়া data, vector-selection rule, out-of-sample design, cost ও failure handling প্রকাশ করুন। Johansen-এর ১৯৮৮ সালের cointegration-vector বিশ্লেষণ90041-3) cointegrating space ও rank-এর likelihood পদ্ধতি গড়ে তোলে। তাঁর ১৯৯১ সালের Gaussian VAR আলোচনা rank inference ও vector নিয়ে hypothesis পরীক্ষা করে। MacKinnon, Haug ও Michelis cointegration likelihood-ratio test-এর response-surface distribution দিয়েছেন। সম্পর্কিত নির্দেশিকায় আছে stationarity ও unit root।

সাধারণ প্রশ্ন

Q1rank 1 কি বোঝায় যে ঠিক দুটি asset একটি pair গঠন করে?

না। পুরো system-এ একটি স্বাধীন stationary combination আছে—এটাই বোঝায়। সম্পর্কে একাধিক variable থাকতে পারে এবং ব্যাখ্যার জন্য উপযুক্ত normalization দরকার।

Q2trace ও maximum-eigenvalue test কি একই rank বেছে নেবে?

অবশ্যই নয়। তাদের alternative আলাদা, তাই ফল ভিন্ন হতে পারে। দুই ফল জানান এবং model, lag, deterministic term ও sample sensitivity পরীক্ষা করুন।

Q3rank zero reject করলে কি প্রমাণ হয় spread লাভজনক হবে?

না। এটি নির্দিষ্ট model-এর অধীনে no-cointegration null-এর বিরুদ্ধে evidence। Trading rule, sample-এর বাইরের stability বা execution cost-এর পর net return এটি দেয় না। ---

উৎস ও আরও পড়ুন

সমস্যা জানান

এই নিবন্ধের লিংকসহ একটি ইমেল তৈরি হবে। পাঠানোর পরেই Mark প্রতিবেদনটি পাবে

দ্রুত যাচাই

গাইডটি পড়ার পর 3টি প্রশ্নে নিজেকে যাচাই করুন

প্রশ্ন 1 / 3

প্রশ্ন 01

I(1) হিসেবে বিবেচিত তিন-variable system-এ cointegration rank 1 বলতে কী বোঝায়?

ব্যাখ্যা দেখতে একটি উত্তর বেছে নিন

অপশন শব্দকোষ

residual দেখে দীর্ঘমেয়াদি সম্পর্ক বোঝাEngle–Granger cointegration test: residual ও error correctionEngle–Granger-এর দুই ধাপের cointegration test, residual-এর unit-root পরীক্ষায় বিশেষ critical value কেন লাগে, এবং error-correction model কীভাবে ব্যাখ্যা করবেন—জানুন।কেন সহ-আন্দোলন একটি স্থিতিশীল বিস্তারের জন্য যথেষ্ট নয়পেয়ারস ট্রেডিং-এ কোইনটিগ্রেশন বনাম পারস্পরিক সম্পর্কইন্টিগ্রেশন অর্ডার, সমন্বিত ভেক্টর, ত্রুটি সংশোধন, ইঙ্গেল-গ্রেঞ্জার এবং জোহানসেন পরীক্ষা, হেজ অনুপাত, স্প্রেড স্থায়িত্ব, বিরতি এবং জোড়া-বাণিজ্যের ঝুঁকি সহ দীর্ঘমেয়াদী সমন্বিতকরণের সাথে স্বল্পমেয়াদী পারস্পরিক সম্পর্ক তুলনা করুন।তিনটি ধারণা প্রায়শই প্রতিশব্দ হিসাবে বিবেচিত হয় কিন্তু বিভিন্ন প্রশ্নের উত্তর দেয়স্থিরতা, ইউনিট রুট, এবং অর্থের গড় বিপরীতকঠোর এবং দুর্বল স্থিরতা, এলোমেলো হাঁটা, ইউনিট শিকড়, অধ্যবসায়, গড় প্রত্যাবর্তন, অর্ধ-জীবন, নকল রিগ্রেশন, ADF এবং KPSS পরীক্ষা, কাঠামোগত বিরতি এবং আর্থিক ডায়াগনস্টিকগুলি বোঝুনঅপশনের ভিত্তিইন-দ্য-মানি, অ্যাট-দ্য-মানি ও আউট-অফ-দ্য-মানি বলতে কী বোঝায়?অপশনের স্ট্রাইক কীভাবে অন্তর্নিহিত দামের সঙ্গে তুলনা হয় এবং কল ও পুটে অর্থ কেন আলাদা তা জানুনঅপশনের ভিত্তিকল অপশন: ক্রেতার অধিকার ও বিক্রেতার ঝুঁকিকল ক্রেতা ও বিক্রেতার পার্থক্য, পঞ্চাশ ডলারের স্ট্রাইকের অর্থ, প্রিমিয়াম কীভাবে ব্রেক-ইভেন বদলায় এবং কখন অর্পণ হতে পারে তা দেখুন