Funktionen für Formeln

Überblick

In den folgenden Tabellen finden Sie Funktionen, die Sie in Formeln in xP&A verwenden können.

Verfügbare Formeln

Die folgenden Funktionen sind in Lucanet xP&A für Formeln verfügbar:

Mathematisch

Funktion

Beschreibung


abs

Der Betrag einer Zahl


avg

Das arithmetische Mittel (Durchschnitt) der Eingaben. Kann auch als avgif verwendet werden.

Beispiel: avg(1, 2, 3) = 2; avg(if Var[all] % 2 = 0 then Var[all] else none) = Durchschnittswert aller geraden Werte


first_nonzero_­value

Der erste Wert, der nicht Null oder leer ist

Beispiel: first_nonzero_value(0,none,­4,6) = 4


log

Natürlicher Logarithmus (Basis e)

Beispiel: log(e^2) = 2


log10

Zehnerlogarithmus (Basis 10)

Beispiel: log10(100) = 2


max

Der höchste der Eingabewerte

Beispiel: max(1, 2, 3) = 3; max([1, 2, 3]) = 3


min

Der niedrigste der Eingabewerte

Beispiel: min(1, 2, 3) = 1; min([1, 2, 3]) = 1


mod

Der Rest einer Division. Statt mod kann auch "%" geschrieben werden.

Beispiel: mod(5, 2) = 1; 5 % 2 = 1; Wiederholung alle 4 Monate: if timeStep % 4 = 0 then 1 else 0


reverse

Kehrt die Reihenfolge eines Arrays um.

Beispiel: reverse([1, 2]) = [2, 1]


round

Rundet die Zahl auf die nächste ganze Zahl. Optional können Sie die Anzahl der Nachkommastellen als zweites Argument angeben.

Beispiel: round(2,3) = 2, round(2,5) = 3, round(2,26, 1) = 2,3


rounddown

Rundet ab, Richtung 0. Optional können Sie die Anzahl der Nachkommastellen als zweites Argument angeben.

Beispiel: rounddown(2,8) = 2, rounddown(-2,8) = -2, rounddown(2,88, 1) = 2,8


roundup

Rundet auf, weg von 0. Optional können Sie die Anzahl der Nachkommastellen als zweites Argument angeben.

Beispiel: roundup(2,2) = 3, roundup(-2,2) = -3, roundup(2,22, 1) = 2,3


signchange

Zeitschritt, an dem der erste Vorzeichenwechsel stattfindet

Beispiel: signchange​(Var[all])


spread

Verteilt einen Wert über einen Zeitraum.

Beispiel: spread(Neukunden[0:t], Zahlungen[0:t])

Für ein ausführlicheres Beispiel siehe Beispiele für Funktionen.

 


sqrt

Quadratwurzel eines Werts

Beispiel: sqrt(4) = 2


sum

Die Summe der Eingaben. Kann auch als sumif oder countif verwendet werden.

Beispiel: sum(1, 2, 3) = 6; sum(if Var[all] % 2 = 0 then Var[all] else 0) = Summe aller geraden Werte


sumproduct

Multipliziert zwei oder mehr Arrays miteinander und gibt die Summe der Produkte zurück.

Beispiel: sumproduct(Var1[all], Var2[all])


exp

Exponentialfunktion

Beispiel: exp(2) = e^2

Zeit

Funktion

Beschreibung


date

Die Nummer des Zeitschritts eines Datums. Zeitschritte beginnen bei 0.

Beispiel: date(2021,12,24) = 11 in einem monatsbasierten Modell, das im Januar 2021 beginnt


month_from_­date

Extrahiert den Monat eines Datums oder eines Zeitschritts.

Beispiel: month_from_date( date(2021,12,24) ) = 12


year_from_date

Extrahiert das Jahr eines Datums oder eines Zeitschritts.

Beispiel: year_from_date( date(2021,12,24) ) = 2021


Finanziell

Funktion

Beschreibung


cumipmt

Kumulativer Zinsaufwand

Beispiel: cumipmt(Zinssatz, Zeiträume, Wert, Start, Ende, Typ)


finance.AM

Abschreibung

Beispiel: finance.AM(Kapital, Zinssatz, Zeitraum, JahrOderMonat, ZahlungZuBeginn)


finance.CAGR

Durchschnittliche jährliche Wachstumsrate

Beispiel: finance.CAGR(Anfangswert, Endwert, Anzahl der Zeiträume)


finance.CI

Zinseszins

Beispiel: finance.CI(Zinssatz, Aufzinsung pro Zeitraum, Kapital, Anzahl der Zeiträume)


finance.DF

Rabattfaktor (gibt ein Array zurück; muss Array indizieren, um Werte zu erhalten – um alle Werte des Arrays zu sehen, siehe Beispiel oben).

Beispiel: finance.DF(Prozentsatz, Anzahl der Zeiträume)[index]


finance.FV

Zukunftswert

Beispiel: finance.FV(rate, nper, pmt, pv, type)


finance.IAR

Inflationsbereinigte Rendite

Beispiel: finance.IAR(Investitions­rendite, Inflationsrate)


finance.irr

Interne Rendite

Beispiel: finance.IRR(Kapitalflüsse[all], [guess])

Für ein ausführlicheres Beispiel siehe Beispiele für Funktionen.


finance.LR

Finanzhebel

Beispiel: finance.LR(Gesamt­verbindlichkeiten, Gesamtschulden, Gesamteinnahmen)


finance.NPV

Nettobarwert

Beispiel: finance.NPV(Prozentsatz, Anfangsinvestition, Kapitalflüsse[all])

Für ein ausführlicheres Beispiel siehe Beispiele für Funktionen.


finance.PI

Rentabilitätsindex

Beispiel: finance.PI(Prozentsatz, Anfangsinvestition, Kapitalflüsse[all])


finance.PMT

Zahlung für einen Kredit bei konstanten Zahlungen mit festem Zinssatz

Beispiel: finance.PMT(fraktionierter Zinssatz, Anzahl der Zahlungen, Kapital)


finance.PP

Amortisationszeitraum

Beispiel: finance.PP(Anzahl der Zeiträume, Kapitalflüsse[all])


finance.PV

Barwert

Beispiel: finance.PV(rate, nper, pmt, [fv], [type])


finance.R72

72er-Regel

Beispiel: finance.R72(Zinssatz)


finance.roi

Rendite

Beispiel: finance.ROI(Kapitalflüsse[all])


finance.WACC

Gewichteter durchschnittlicher Kapitalkostensatz

Beispiel: finance.WACC(Marktwert des Eigenkapitals, Marktwert des Fremdkapitals, Eigenkapitalkosten, Fremdkapitalkosten, Steuersatz)


finance.xirr

Interner Zinsfuß für Kapitalflussrechnungen

Beispiel: finance.xirr([-10,11], [0,12], 12) = 10%

Für ein ausführlicheres Beispiel siehe Beispiele für Funktionen.


fv

Zukunftswert

Beispiel: v(rate, nper, pmt, pv, [type])


fvifa

Zukunftswert-Zinsfaktor einer Annuität

Beispiel: fvifa(rate, nper)


ipmt

Zinsanteil einer bestimmten Kreditrate

Beispiel: ipmt(rate, per, nper, pv, [fv], [type])


pmt

Regelmäßige Zahlung für einen Kredit

Beispiel: pmt(rate, nper, pv, [fv], [type])

 


ppmt

Tilgungsanteil einer bestimmten Kreditrate

Beispiel: ppmt(rate, per, nper, pv, [fv], [type])


pv

Barwert

Beispiel: pv(rate, nper, pmt, fv, [type])


pvif

Barwert-Zinsfaktor

Beispiel: pvif(rate, nper)


rate

Zinssatz pro Zeitraum einer Annuität

Beispiel: rate(nper, pmt, pv, [fv], [type], [guess])

Wahrscheinlichkeit

Funktion

Beschreibung


beta

Beta-Verteilung

Beispiel: beta(alpha, beta)


binominal

Binomialverteilung

Beispiel: binomial(n, p)


cauchy

Cauchy-Verteilung

Beispiel: cauchy(local, scale)


chisq

Chi-Quadrat-Verteilung

Beispiel: chisq(k)


exponential

Exponentialverteilung

Beispiel: exponential(rate)


gamma

Gammaverteilung

Beispiel: gamma(shape, scale)


invgamma

Inverse Gammaverteilung

Beispiel: invgamma(shape, scale)


lognormal

Log-Normal-Verteilung

Beispiel: lognormal(μ, σ^2)


lognormal_­from

Log-Normal-Verteilung

Beispiel: finance.LR(Gesamtverbind­lichkeiten, Gesamtschulden, Gesamteinnahmen)


normal

Nettobarwert

Beispiel: finance.NPV(Prozentsatz, Anfangsinvestition, Kapitalflüsse[all])


normal_from

Log-Normal-Verteilung

Beispiel: lognormal_from_interval (from, to, confidence_percent)


pareto

Paretoverteilung

Beispiel: pareto(min, alpha)

 


poisson

Poisson-Verteilung

Beispiel: poisson(λ)


stdev

Standardabweichung eines Arrays

Beispiel: stdev(Var[all])


triangle

Dreiecksverteilung

Beispiel: triangle(from, to, confidence_percent)


uniform

Gleichmäßige Verteilung

Beispiel: uniform(from, to)


variance

Abweichung eines Arrays

Beispiel: variance(Var[all])


Andere

Funktion

Beschreibung


error

Fehler bei der Erklärung eines ungültigen Zustands

Beispiel: error()


flat_cohort_​forecast

Prognostiziert Kohortendaten ohne die Kohortendimension.

Beispiel: flat_cohort_forecast​(oldCohorts[all],​ newCohorts[all], retentionRates[all],​ lastDataDate, t, [additionalChurn])


forecats

Prognostiziert Ihre zukünftigen Eingaben basierend auf historischen Daten mithilfe von KI.

Beispiel: forecast(timestep, past_values, growth_rate), wobei timestep t ist und past_values auf die Variable mit Werten referenziert.

Hinweise:

  • Stellen Sie sicher, dass Sie einen Zeitraum wählen, der mindestens 13 Eingaben enthält, um die genauesten Ergebnisse zu erhalten, z. B. 13 Monate an Daten.
  • growth_rate ist optional.

gaussian​_ramp

Rechnet einen Wert über einen Zeitraum in Form einer Gaußschen Glockenkurve hoch.

Beispiel: gaussian_ramp​(timestep,date(2022,10), 2, 100)


if_error

Wenn das erste Argument einen Fehler „ungültige Zahl“ ergibt, wird das zweite Argument zurückgegeben. Andernfalls wird das erste Argument zurückgegeben.

Beispiel: if_error(Y/X, Z) – nützlich, wenn der Teiler X gleich 0 ist und das erste Argument daher ein Teilen durch 0 (Fehler „ungültige Zahl“) ergeben würde


is_data

Ergibt 1, wenn das Argument von einer Datenquelle abgeleitet ist, sonst 0.

Beispiel: is_data(Variable[all])


is_locked

Ergibt 1, wenn das Argument ein Element einer gesperrten Dimension ist, sonst 0.

Beispiel: is_locked​(dimensionitem)


last_data_​timestep

Gibt den letzten aus einer Datenquelle abgeleiteten Zeitschritt zurück.

Beispiel: last_data_​timestep​(Var[all])


logistic_ramp

Rechnet einen Wert über einen Zeitraum in einer S-Form (logistische Funktion) hoch.

Beispiel: logistic_ramp​(timestep, date(2022,1),​ date(2022,10), 1.8, 100, 200)


quadratic_​ramp

Rechnet einen Wert quadratisch über einen Zeitraum hoch.

Beispiel: quadratic_ramp​(timestep,date(2022,1),​ date(2022,10) [startValue],​ [endValue])


ramp

Rechnet einen Wert linear über einen Zeitraum hoch.

Beispiel: ramp(timestep, date(2022,1), date(2022,10), 100, 200)


ramp_​normalized

Hochrechnung mit der kumulativen Summe 1. Nützlich für die Verteilung eines festen Werts über einen bestimmten Zeitraum.

Beispiel: ramp_normalized​(timestep, date(2022,1),​ date(2022,10)


Beispiele für Funktionen

Die folgende Tabelle bietet einige praktische Beispiele für ausgewählte Funktionen:


Anwendungsfall

Beschreibung


Werte verteilen

Spread ist eine leistungsstarke und flexible xP&A-Funktion. Damit können Sie einen Wert oder eine Gruppe von Werten über einen Zeitraum verteilen. Die Funktion ist ähnlich wie die Funktion sumproduct in Excel, jedoch mit einer intuitiveren Benutzeroberfläche.

Spread hat zwei Argumente:

  • x – der Wert oder die Menge der Werte
  • y – der Betrag, mit dem Sie x verteilen

 

Beispiel: 

Wenn alle neuen Kunden im ersten Monat eine Anmeldegebühr von 100 $ zahlen müssen und ab dem zweiten Monat je Monat 10 $ für ihr Abonnement zahlen, können Sie Ihren monatlichen Umsatz mit spread berechnen.

In diesem Fall wäre x die Anzahl der neuen Kunden pro Monat, und y wäre die Zahlungsstruktur, mit der diese Werte verteilt werden.

In xP&A würde dies wie folgt aussehen:

Beispiel für die Funktion 'spread'
Beispiel für die Funktion 'spread'

Andere häufige Anwendungsfälle von spread sind:

  • Vertriebszyklen (Sales Cycles (Dabei ist x die Anzahl der generierten Leads und y der Prozentsatz, der sich im Zeitverlauf in Neukunden umwandelt.)
  • Retention-Kurven (wobei ‘x’ die neuen Benutzer und ‘y’ der Prozentsatz ist, der im Zeitverlauf bestehen bleibt).

Interne Rendite (IRR)

xP&A verfügt über viele Finanzfunktionen, die Sie vielleicht von Excel oder Google Sheets kennen – und sie funktionieren sehr ähnlich.

Beispiel:

Wenn Sie eine Variable Cash Flowshaben, bei der der erste Wert die anfängliche Investition und die folgenden Werte die Rückflüsse sind, können Sie den IRR wie folgt berechnen:

Beispiel für die Funktion 'finance.irr' Beispiel für die Funktion 'finance.irr'

Interne Rendite für Kapitalfluss­rechnungen (XIRR):

XIRR wird verwendet, wenn die Cashflows nicht periodisch sind. Deshalb benötigt XIRR drei Argumente:

  • Die Cashflows
  • Die Zeitschritte, zu denen sie auftreten
  • Die Granularität (Anzahl der Zeitschritte in einem Jahr) 
     

Beispiel:

Wenn Sie im Erster Monat 10 $ investieren und nach 10 Monaten eine Rendite von 6 $ sowie nach 12 Monate weitere 6 $ erhalten, würde Ihre Formel wie folgt aussehen:

Beispiel für die Funktion 'finance.xirr' Beispiel für die Funktion 'finance.xirr'

Nettobarwert (NPV)

Der Nettobarwert (Net Present Value, NPV) vergleicht den in der Zukunft erhaltenen Geldbetrag mit einem heute erhaltenen Geldbetrag, wobei Zeit und Zinsen berücksichtigt werden. Die Argumente der Funktion sind:

  • Zinssatz in Prozent
  • Cashflows
     

Beispiel:

Bei einem Diskontsatz von 10 %, einer Anfangsinvestition von 500 und Cashflows von 200, 300 und 200 können Sie die Funktion wie folgt verwenden: finance.npv(10, -500, 200, 300, 200).

Normalerweise sind die Cashflows in einer Zeitreihenvariablen enthalten, in diesem Fall können Sie die Variable in der Funktion verwenden:

Beispiel für die Funktion 'finance.npv' Beispiel für die Funktion 'finance.npv'

Kontaktieren Sie uns