financialInternalRateOfReturn
أُضيف في: v25.7.0
يحسب معدل العائد الداخلي (IRR) لسلسلة من التدفقات النقدية التي تحدث على فترات منتظمة. وIRR هو معدل الخصم الذي عنده يساوي صافي القيمة الحالية (NPV) صفرًا.
يحاول IRR حل المعادلة التالية:
\sum_{i=0}^n \frac{cashflow_i}{(1 + irr)^i} = 0الصيغة
financialInternalRateOfReturn(cashflows[, guess])الوسيطات
cashflows— مصفوفة من التدفقات النقدية. تمثل كل قيمة دفعة (قيمة سالبة) أو دخلاً (قيمة موجبة).Array(Int8/16/32/64)أوArray(Float*)[, guess]— قيمة تخمين أولية اختيارية (قيمة ثابتة) لمعدل العائد الداخلي (القيمة الافتراضية 0.1).Float*
القيمة المُعادة
يُرجع معدل العائد الداخلي أو NaN إذا تعذّر تقارب الحساب، أو كانت مصفوفة الإدخال فارغة أو تحتوي على عنصر واحد فقط، أو كانت جميع التدفقات النقدية صفراً، أو حدثت أخطاء حسابية أخرى. Float64
أمثلة
simple_example
SELECT financialInternalRateOfReturn([-100, 39, 59, 55, 20])0.2809484211599611simple_example_with_guess
SELECT financialInternalRateOfReturn([-100, 39, 59, 55, 20], 0.1)0.2809484211599611financialInternalRateOfReturnExtended
مُقدَّم في: v25.7.0
يحسب معدل العائد الداخلي الموسَّع (XIRR) لسلسلة من التدفقات النقدية التي تقع على فترات غير منتظمة. XIRR هو معدل الخصم الذي تنعدم عنده صافي القيمة الحالية (NPV) لجميع التدفقات النقدية.
يسعى XIRR إلى حل المعادلة التالية (مثال لـ ACT_365F):
\sum_{i=0}^n \frac{cashflow_i}{(1 + rate)^{(date_i - date_0)/365}} = 0يجب أن تكون المصفوفات مرتَّبة بحسب التاريخ تصاعديًا، وأن تكون التواريخ فريدة.
Syntax
financialInternalRateOfReturnExtended(cashflow, date [, guess, daycount])Arguments
cashflow— مصفوفة من التدفقات النقدية المقابلة للتواريخ في المعامل الثاني.Array(Int8/16/32/64)أوArray(Float*)date— مصفوفة مرتَّبة من التواريخ الفريدة المقابلة للتدفقات النقدية.Array(Date)أوArray(Date32)[, guess]— اختياري. التخمين الأولي (قيمة ثابتة) لحساب XIRR.Float*[, daycount]— اصطلاح احتساب الأيام اختياري (القيمة الافتراضية ‘ACT_365F’). القيم المدعومة:- ‘ACT_365F’ - فعلي/365 ثابت: يستخدم العدد الفعلي للأيام بين التواريخ مقسومًا على 365
- ‘ACT_365_25’ - فعلي/365.25: يستخدم العدد الفعلي للأيام بين التواريخ مقسومًا على 365.25
String
Returned value
يُعيد قيمة XIRR. إذا تعذَّر إجراء الحساب، أعاد NaN. Float64
Examples
simple_example
SELECT financialInternalRateOfReturnExtended([-10000, 5750, 4250, 3250], [toDate('2020-01-01'), toDate('2020-03-01'), toDate('2020-10-30'), toDate('2021-02-15')])0.6342972615260243simple_example_with_guess
SELECT financialInternalRateOfReturnExtended([-10000, 5750, 4250, 3250], [toDate('2020-01-01'), toDate('2020-03-01'), toDate('2020-10-30'), toDate('2021-02-15')], 0.5)0.6342972615260243simple_example_daycount
SELECT round(financialInternalRateOfReturnExtended([100000, -110000], [toDate('2020-01-01'), toDate('2021-01-01')], 0.1, 'ACT_365_25'), 6) AS xirr_365_250.099785financialNetPresentValue
أُضيفت في: v25.7.0
تحسب صافي القيمة الحالية (NPV) لسلسلة من التدفقات النقدية، بافتراض تساوي الفواصل الزمنية بين كل تدفق نقدي وآخر.
الصيغة الافتراضية (start_from_zero = true):
\sum_{i=0}^{N-1} \frac{values_i}{(1 + rate)^i}الصيغة المتوافقة مع Excel (start_from_zero = false):
\sum_{i=1}^{N} \frac{values_i}{(1 + rate)^i}البنية
financialNetPresentValue(rate, cashflows[, start_from_zero])الوسائط
rate— معدل الخصم المطلوب تطبيقه.Float*cashflows— مصفوفة من التدفقات النقدية. تمثل كل قيمة دفعة (قيمة سالبة) أو دخلاً (قيمة موجبة).Array(Int8/16/32/64)أوArray(Float*)[, start_from_zero]— معلمة منطقية اختيارية تشير إلى ما إذا كان يجب بدء حساب NPV من الفترة0(true) أو من الفترة1(false، متوافق مع Excel). القيمة الافتراضية: true.Bool
القيمة المُعادة
يعيد صافي القيمة الحالية بوصفها قيمة Float64. Float64
أمثلة
default_calculation
SELECT financialNetPresentValue(0.08, [-40000., 5000., 8000., 12000., 30000.])3065.2226681795255excel_compatible_calculation
SELECT financialNetPresentValue(0.08, [-40000., 5000., 8000., 12000., 30000.], false)2838.1691372032656financialNetPresentValueExtended
Introduced in: v25.7.0
تحسب دالة صافي القيمة الحالية الممتدة (XNPV) لسلسلة من التدفقات النقدية التي تحدث بفترات غير منتظمة. تأخذ XNPV في الاعتبار توقيت كل تدفق نقدي عند حساب القيمة الحالية.
معادلة XNPV للمعيار ACT_365F:
XNPV=\sum_{i=1}^n \frac{cashflow_i}{(1 + rate)^{(date_i - date_0)/365}}يجب أن تكون المصفوفات مرتبة حسب التاريخ بترتيب تصاعدي. يجب أن تكون التواريخ فريدة.
Syntax
financialNetPresentValueExtended(rate, cashflows, dates[, daycount])Arguments
rate— معدل الخصم الذي يُطبق.Float*cashflows— مصفوفة التدفقات النقدية. تمثل كل قيمة دفعة (قيمة سالبة) أو دخل (قيمة موجبة). يجب أن تحتوي على قيمة موجبة واحدة على الأقل وقيمة سالبة واحدة على الأقل.Array(Int8/16/32/64)orArray(Float*)dates— مصفوفة التواريخ المقابلة لكل تدفق نقدي. يجب أن يكون حجمها مساويًا لمصفوفة التدفقات النقدية.Array(Date)orArray(Date32)[, daycount]— اصطلاح اختياري لاحتساب الأيام. القيم المدعومة:'ACT_365F'(الافتراضي) — Actual/365 Fixed،'ACT_365_25'— Actual/365.25.String
Returned value
تعيد صافي القيمة الحالية كقيمة Float64. Float64
Examples
Basic usage
SELECT financialNetPresentValueExtended(0.1, [-10000., 5750., 4250., 3250.], [toDate('2020-01-01'), toDate('2020-03-01'), toDate('2020-10-30'), toDate('2021-02-15')])2506.579458169746Using different day count convention
SELECT financialNetPresentValueExtended(0.1, [-10000., 5750., 4250., 3250.], [toDate('2020-01-01'), toDate('2020-03-01'), toDate('2020-10-30'), toDate('2021-02-15')], 'ACT_365_25')2507.067268742502