নমিনাল বনাম ইফেক্টিভ ইন্টারেস্ট রেট
এই পাঠে যা শিখবেন
- নমিনাল রেট $r$ ও ইফেক্টিভ বার্ষিক রেট $i_{eff}$-এর ফরমাল সংজ্ঞা এবং এই দুটোকে গুলিয়ে ফেলা কেন বিপজ্জনক
- Python দিয়ে $m = 1, 2, 4, 12, 365$-এর জন্য ইফেক্টিভ রেট হিসাব করে একটি তুলনামূলক টেবিল তৈরি
- একটি নির্দিষ্ট কম্পাউন্ডিং ফ্রিকোয়েন্সি থেকে ভিন্ন একটি পিরিয়ডের (যেমন সেমিঅ্যানুয়াল) ইফেক্টিভ রেট বের করার সাধারণ সূত্র
- দুই ভিন্ন পথে হিসাব করা ইফেক্টিভ রেট একে অপরকে ভেরিফাই করে তা কোডে দেখানো
১ · নমিনাল রেট ও ইফেক্টিভ রেটের পার্থক্য
নমিনাল রেটNominal Interest Rateবিজ্ঞাপিত/স্টেটেড বার্ষিক সুদের হার $r$, যা বছরে $m$ বার কম্পাউন্ড হয় বলে উল্লেখ থাকে — কিন্তু $r$ নিজে সরাসরি প্রকৃত বার্ষিক প্রবৃদ্ধি নয়। প্রায়ই এভাবে বলা হয় — "১২% বার্ষিক, মাসিক কম্পাউন্ডেড।" এখানে প্রতি মাসের প্রকৃত সুদের হার $r/m$, এই উদাহরণে $12\%/12 = 1\%$ প্রতি মাসে। কিন্তু মাসিক কম্পাউন্ডিং-এর কারণে বছর শেষে প্রকৃত প্রবৃদ্ধি $12\%$-এর চেয়ে বেশি হয় — এই প্রকৃত বার্ষিক প্রবৃদ্ধিকেই বলা হয় ইফেক্টিভ বার্ষিক রেটEffective Annual Interest Rateএক বছরে কম্পাউন্ডিং-সহ প্রকৃতপক্ষে অর্জিত মোট সুদের হার।।
$$i_{eff} = \left(1 + \frac{r}{m}\right)^m - 1$$
যেখানে $r$ = নমিনাল বার্ষিক হার (দশমিকে), $m$ = বছরে কম্পাউন্ডিং সংখ্যা। লক্ষ্য করুন $m=1$ হলে $i_{eff} = r$ — অর্থাৎ বার্ষিক কম্পাউন্ডিং-এ নমিনাল ও ইফেক্টিভ রেট একই।
নমিনাল রেট নিজেই কোনো একক পিরিয়ডের সুদ নয় — প্রতি-পিরিয়ড রেট বের করতে $r$-কে $m$ দিয়ে ভাগ করতে হয়।
একই $r$-এ $m$ বাড়লে $i_{eff}$ সবসময় বাড়ে, কখনো কমে না।
২ · Python দিয়ে কম্পাউন্ডিং ফ্রিকোয়েন্সির প্রভাব
নিচে $12\%$ নমিনাল রেটে বিভিন্ন কম্পাউন্ডিং ফ্রিকোয়েন্সির ($m$) জন্য ইফেক্টিভ বার্ষিক রেট হিসাব করা হচ্ছে, তারপর সাধারণীকৃত সূত্র দিয়ে একটি ভিন্ন পিরিয়ডের (সেমিঅ্যানুয়াল) ইফেক্টিভ রেটও বের করা হচ্ছে।
# নমিনাল বনাম ইফেক্টিভ ইন্টারেস্ট রেট
def effective_rate(r, m):
return (1 + r / m) ** m - 1
r = 0.12
print(f"নমিনাল বার্ষিক হার r = {r*100:.0f}%")
print(f"{'m (বছরে কম্পাউন্ডিং)':>22} | {'ইফেক্টিভ বার্ষিক হার':>20}")
print("-" * 48)
for m in [1, 2, 4, 12, 365]:
ie = effective_rate(r, m)
print(f"{m:>22} | {ie*100:>18.4f}%")
# -- সাধারণীকৃত সূত্র: মাসিক কম্পাউন্ডিং থেকে ইফেক্টিভ সেমিঅ্যানুয়াল রেট --
m_comp = 12 # মাসিক কম্পাউন্ডিং
k = 2 # k = বছরে ২ বার (সেমিঅ্যানুয়াল পিরিয়ড)
i_period = (1 + r / m_comp) ** (m_comp / k) - 1
print()
print(f"মাসিক কম্পাউন্ডিং (m={m_comp}) থেকে ইফেক্টিভ সেমিঅ্যানুয়াল রেট (k={k} পিরিয়ড/বছর):")
print(f"i_period = (1 + r/m)^(m/k) - 1 = {i_period*100:.4f}%")
# -- ভেরিফাই: দুইবার সেমিঅ্যানুয়াল কম্পাউন্ড করলে বার্ষিক ইফেক্টিভ রেট (m=12) এর সমান হওয়া উচিত --
annual_from_semi = (1 + i_period) ** 2 - 1
annual_direct = effective_rate(r, 12)
print()
print(f"সেমিঅ্যানুয়াল রেটকে ২ বার কম্পাউন্ড করে বার্ষিকে ফিরিয়ে চেক: {annual_from_semi*100:.4f}%")
print(f"সরাসরি m=12 দিয়ে হিসাব করা বার্ষিক ইফেক্টিভ রেট: {annual_direct*100:.4f}%")
assert abs(annual_from_semi - annual_direct) < 1e-9
নমিনাল রেট শুধু একটি বিজ্ঞাপিত সংখ্যা — প্রকৃত তুলনার জন্য সবসময় ইফেক্টিভ রেট $i_{eff} = (1+r/m)^m - 1$ হিসাব করতে হবে, এবং কোন পিরিয়ডের জন্য ($m$) তা স্পষ্টভাবে বলতে হবে। এই সূত্রটি M8-এ ধারাবাহিক কম্পাউন্ডিং (continuous compounding) বোঝার ভিত্তি তৈরি করবে।
ভাবনার প্রশ্ন
প্রতিটি প্রশ্ন নিজে কিছুক্ষণ ভাবুন — তারপর "→ উত্তর" চাপুন।
প্র ০১ দুটো লোন অফার আছে — একটি "১২% নমিনাল, মাসিক কম্পাউন্ডেড," অন্যটি "১২.৫% নমিনাল, বার্ষিক কম্পাউন্ডেড।" কোনটা কম খরচের?
বার্ষিক কম্পাউন্ডেড ১২.৫%-এর ইফেক্টিভ রেট হলো ১২.৫% নিজেই (m=1)। মাসিক কম্পাউন্ডেড ১২%-এর ইফেক্টিভ রেট উপরের হিসাবে ১২.৬৮২৫%। যেহেতু ১২.৬৮২৫% > ১২.৫%, তাই "১২% মাসিক কম্পাউন্ডেড" লোনটিই আসলে বেশি খরচের — নমিনাল রেট কম দেখালেও ইফেক্টিভ রেট বেশি। এটিই দেখায় কেন সবসময় ইফেক্টিভ রেট দিয়ে তুলনা করতে হয়।
প্র ০২ যদি $m$ ১ থেকে অনেক বড় সংখ্যায় (যেমন প্রতি সেকেন্ডে কম্পাউন্ডিং) বাড়ানো হয়, ইফেক্টিভ রেট কি সীমাহীনভাবে বাড়তে থাকবে?
না — টেবিলে লক্ষ্য করুন $m=12$ থেকে $m=365$-এ বৃদ্ধি ($12.6825\% \to 12.7475\%$) $m=1$ থেকে $m=12$-এর বৃদ্ধির ($12.0000\% \to 12.6825\%$) তুলনায় অনেক ছোট। ইফেক্টিভ রেট একটি নির্দিষ্ট সীমার দিকে ধাবিত হয় — এই সীমাটাই M8-এ "কন্টিনিউয়াস কম্পাউন্ডিং" ($e^r - 1$) হিসেবে ফরমালি প্রতিষ্ঠিত হবে।
প্র ০৩ কোড সেলের শেষের ভেরিফিকেশন ধাপ কী প্রমাণ করছে, এবং কেন এটি গুরুত্বপূর্ণ?
এটি দেখায় সেমিঅ্যানুয়াল ইফেক্টিভ রেটকে ২ বার কম্পাউন্ড করলে ঠিক একই বার্ষিক ইফেক্টিভ রেট পাওয়া যায় যা সরাসরি $m=12$ দিয়ে হিসাব করা হয়েছিল — অর্থাৎ ভিন্ন পিরিয়ডে রূপান্তর করার সূত্রটি অভ্যন্তরীণভাবে সামঞ্জস্যপূর্ণ (consistent)। এই ধরনের "রাউন্ড-ট্রিপ" চেক ছাড়া সূত্রে ভুল থাকলেও তা ধরা পড়ত না।
অনুশীলন
-
চিন্তা করুন: একটি ক্রেডিট কার্ডের নমিনাল রেট $18\%$, মাসিক কম্পাউন্ডেড। ইফেক্টিভ বার্ষিক
রেট আনুমানিক কত হবে বলে মনে করেন — $18\%$-এর কাছাকাছি, নাকি উল্লেখযোগ্যভাবে বেশি?
$i_{eff} = (1 + 0.18/12)^{12} - 1 = (1.015)^{12} - 1 \approx 0.1956$, অর্থাৎ প্রায় $19.56\%$ — নমিনাল $18\%$-এর চেয়ে উল্লেখযোগ্যভাবে বেশি (প্রায় দেড় শতাংশ পয়েন্ট)। ক্রেডিট কার্ডের মতো উচ্চ নমিনাল রেটে ও ঘন ঘন (মাসিক) কম্পাউন্ডিং-এ এই ফারাক আরও স্পষ্ট হয়।
-
পরীক্ষা করুন: উপরের কোড সেলে
r = 0.12-কেr = 0.06-এ বদলে Run চেপে দেখুন — কম নমিনাল রেটে $m=1$ থেকে $m=365$ পর্যন্ত ইফেক্টিভ রেটের বৃদ্ধি কি $12\%$-এর তুলনায় বেশি না কম দেখায়?r=0.06হলে $m=1$-এ $6.0000\%$ আর $m=365$-এ প্রায় $6.1831\%$ — বৃদ্ধি মাত্র প্রায় $0.18$ শতাংশ পয়েন্ট, যা $12\%$-এর ক্ষেত্রে দেখা $0.75$ পয়েন্টের চেয়ে অনেক কম। কারণ কম্পাউন্ডিং-এর প্রভাব নমিনাল রেটের সাথে অনুপাতিকভাবে বাড়ে — রেট যত বেশি, কম্পাউন্ডিং ফ্রিকোয়েন্সির প্রভাবও তত বেশি।
আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ
- কোর্সের সম্পূর্ণ সিলেবাস দেখুন ৫৭টি পাঠ টাইম ভ্যালু অফ মানি, ক্যাশ ফ্লো সিরিজ, ওয়ার্থ-ভিত্তিক তুলনা, রেট অফ রিটার্ন, ডেপ্রিসিয়েশন, ট্যাক্স, ইনফ্লেশন, রিস্ক অ্যানালাইসিস ও ক্যাপিটাল বাজেটিং।
- Discrete Mathematics কোর্স সহোদর কোর্স সিকোয়েন্স ও সিরিজ অধ্যায় — কম্পাউন্ডিং-এর ঘাতীয় (exponential) আচরণের গাণিতিক ভিত্তি সেখানে তৈরি হয়েছে।
- সব Courses দেখুন ABCL TECH C, C++, Python, Java, JavaScript, DSA, DBMS, Discrete Mathematics, System Design, Cybersecurity, Cloud Computing & DevOps, Computer Networks, Operating Systems, Computer Architecture, Programming Languages & Compiler Design, Software Engineering & Git, Theory of Computation ও Engineering Economics — সব এক জায়গায়।