تابع PRICE در اکسل
تابع PRICE در اکسل برای محاسبه قیمت پاک (clean price) یک اوراق بهادار (مثلاً اوراق قرضه با پرداخت کوپن) بر مبنای تاریخ تسویه، تاریخ سررسید، نرخ کوپن و بازده مورد انتظار استفاده میشود. این تابع برای تحلیلگران مالی، حسابداران و مدیران پرتفوی ابزاری ساده و دقیق جهت برآورد قیمت تئوریک اوراق است.
فرمول و پارامترها
ساختار تابع PRICE به صورت زیر است:
=PRICE(settlement, maturity, rate, yld, redemption, frequency, [basis])توضیحات پارامترها:
| پارامتر | توضیح |
|---|---|
| settlement | تاریخ تسویه (تاریخی که خریدار اوراق را دریافت میکند). باید زودتر از maturity باشد. |
| maturity | تاریخ سررسید اوراق (تاریخی که اصل و آخرین کوپن پرداخت میشود). |
| rate | نرخ کوپن سالانه (به صورت اعشاری، مثلاً 0.06 برای 6%). |
| yld | بازده سالانه مورد انتظار یا نرخ بازده (به صورت اعشاری). |
| redemption | مبلغ بازخرید در سررسید (عموماً 100 یا 1000 — تابع قیمت را برحسب 100 نشان میدهد). |
| frequency | تعداد پرداخت کوپن در سال: 1 (سالانه)، 2 (نیمسالانه)، 4 (فصلی). |
| basis | قواعد شمارش روزها برای محاسبه بهره (اختیاری): 0 تا 4 مطابق با استانداردهای مختلف (Default = 0). |
مثال کاربردی
فرض کنید اوراقی با مشخصات زیر داریم:
- تاریخ تسویه: 2025-01-01
- تاریخ سررسید: 2028-01-01
- نرخ کوپن سالانه: 6%
- بازده مورد انتظار: 5%
- بازخرید در سررسید: 100
- فرکانس: 2 (نیمسالانه)
- basis: 0 (سیستم 30/360)
=PRICE("2025-01-01","2028-01-01",0.06,0.05,100,2,0)این فرمول قیمت هر 100 واحد از اصل را محاسبه میکند. (برای این مثال قیمت حدوداً برابر با 102.68 خواهد بود که نشاندهنده این است که اوراق بالاتر از ارزش اسمی معامله میشود زیرا کوپن آن بیشتر از بازده بازار است.)
توضیح عددی مختصر: در این حالت پرداختهای دورهای 3% بهصورت نیمساله داریم (0.06/2 = 0.03) و نرخ تنزیل دورهای 2.5% است (0.05/2). مجموع ارزش فعلی جریانهای نقدی بهدست آمده قیمتی در حدود 102.68 میدهد.
نکات عملی و خطاهای رایج
- قالب تاریخ: مطمئن شوید که پارامترهای تاریخ بهعنوان تاریخ در اکسل وارد شده باشند؛ وارد کردن متن میتواند منجر به #VALUE! شود.
- order of dates: اگر settlement >= maturity باشد، تابع خطای #NUM! میدهد.
- frequency: فقط مقادیر 1، 2 یا 4 مجاز است؛ سایر مقادیر #NUM! خواهند داد.
- basis: عدد بین 0 تا 4 باید باشد؛ در غیر این صورت خطا رخ میدهد.
- قیمت پاک و ناخالص: تابع PRICE قیمت پاک (بدون احتساب بهره معوقه) را برمیگرداند. برای محاسبه قیمت ناخالص باید accrued interest را نیز اضافه کنید (تابع ACCRINT یا ACCRINTM مفید است).
نمونه جدول برای تحلیل سریع
| پارامتر | مقدار |
|---|---|
| settlement | 2025-01-01 |
| maturity | 2028-01-01 |
| rate | 6% |
| yld | 5% |
| redemption | 100 |
| frequency | 2 |
| basis | 0 |
| PRICE | ≈ 102.68 |
مثال کد VBA (اختیاری)
Sub ExamplePrice()
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets(1)
Dim priceVal As Double
priceVal = Application.WorksheetFunction.Price(#1/1/2025#, #1/1/2028#, 0.06, 0.05, 100, 2, 0)
ws.Range("A1").Value = priceVal
End Subاین ماکرو مقدار تابع PRICE را محاسبه کرده و در سلول A1 قرار میدهد. توجه داشته باشید که هنگام استفاده از WorksheetFunction نام تابع با حرف بزرگ Price و پارامترها بهصورت تاریخ یا رشته تاریخ پاس داده میشوند.
روابط متقابل و جایگزینها
- برای یافتن بازده متناظر با قیمت مشخص از تابع YIELD استفاده کنید: YIELD(settlement,maturity,rate,price,redemption,frequency,[basis]).
- اگر اوراق تخفیفی (بدون کوپن) دارید، از PRICEDISC یا PRICEFRAC بسته به نیازتان استفاده کنید.
- برای محاسبه بهره معوقه و رفتن از clean price به dirty price از ACCRINT یا محاسبه دستی دورهای بهره استفاده کنید.
نکات پیشرفته و بهترین روشها
- همیشه واحد نرخها را بررسی کنید (نرخ سالانه باید به صورت اعشاری وارد شود یا از درصد استفاده شده در سلولها مطمئن شوید).
- در مدلهای حساسیت، تغییر یک بار پارامتر yld و مشاهده PRICE کمک میکند تا منحنی قیمت-بازده را تحلیل کنید.
- برای اندازهگیری سود یا زیان بین دو تاریخ از ترکیب PRICE، ACCRINT و توابع زمانبندی استفاده کنید.
- در گزارشنویسی، مقدار برگردانده شده توسط PRICE معمولاً برای هر 100 واحد اصل آورده میشود؛ برای مقیاسهای دیگر (مثلاً 1000) باید محاسبه را متناسب کنید.
تابع PRICE ابزاری قدرتمند و نسبتاً ساده برای محاسبه قیمت تئوریک اوراق با کوپن است. با درک پارامترها و قواعد تاریخشماری میتوانید از آن برای تحلیل پرتفوی، تعیین قیمت منصفانه و مدلسازی سناریوهای بازده استفاده کنید.
آیا این مطلب برای شما مفید بود ؟




