Skip to main content

May '25 Release Notes

What's new at Maybern this month

B
Written by Bella Zionts
Updated over 6 months ago

Calculations

Introduction of MXL

We're extremely excited to announce the release of MXL: Maybern's custom formula language designed for financial calculations and data transformations. MXL provides an Excel-like syntax for working with data tables, performing calculations, and aggregating data across complex financial structures.

MXL offers the flexibility of Excel formulas within the controlled environment of Maybern's platform. For example, users can now write MXL formulas to create custom calculations that combine Maybern transactions in any way, and reference the defined calculation in Maybern configuration to ensure that this same calculation is evaluated in the appropriate context with all necessary inputs each relevant system event. Below, we'll discuss specific use cases for MXL calculations to illustrate this point.

Use Cases for MXL

For now, all MXL calculations will be configured on your behalf by the team at Maybern. Please reach out to your account representative to learn more.

Waterfall Configuration

In waterfall configuration, users can now reference an MXL calculation to power the calculation of the amount owed to each tier. This allows users to write custom logic for how a given waterfall tier should be calculated, but ensure that this calculation is run consistently for each cash / hypothetical waterfall for all necessary input cashflows.

Below shows a series of MXL calculations that might be used to calculate an 8% Preferred Return:

# Calculate time period for each transaction
pref_time_period = DAYS(distribution_date - InvestmentAdjustedTransaction.pref_date) / 365.0

# Calculate future value for each transaction
pref_8_per_transaction = FV(
-InvestmentAdjustedTransaction.signed_capital_amount,
0.08,
pref_time_period
)

# Sum to get total preferred return
total_pref_8 = SUM(InvestmentAdjustedTransaction[pref_8_per_transaction])

# Or as a single expression:
total_pref_8 = SUM(
InvestmentAdjustedTransaction[
FV(
-signed_capital_amount,
0.08,
DAYS(distribution_date - pref_date) / 365.0
)
]
)

Performance Calculations (coming soon)

MXL formulas can be used to write custom performance calculations for fund and LP performance metrics. We're currently working to display these custom calculations within the performance tab of each hypothetical waterfall run.

MXL formulas can also be used to write custom performance calculations for investment performance metrics. These calculations can actually reference GL data that has been ingested by Maybern in addition to Maybern written transactions.

Use cases we plan to expand MXL calculations to in the future include using MXL formulas to power fee basis calculations and allocation rule bases.

MXL Capabilities

MXL Supports a wide range of both operators and functions.

Supported Operators

Arithmetic Operators

  • + Addition

  • - Subtraction

  • * Multiplication

  • / Division

  • ^ Power

Comparison Operators

  • = Equal

  • <> Not equal

  • < Less than

  • <= Less than or equal

  • > Greater than

  • >= Great than or equal

Logical Operators

  • AND And

  • OR Or

  • NOT Not

Supported Functions

Arithmetic Functions

  • ADD - Addition

  • SUB - Subtraction

  • MULT - Multiplication

  • DIV - Division

  • POW - Exponentiation

Aggregation Functions

  • SUM - Sum values

  • MIN - Minimum value

  • MAX - Maximum value

  • AVG - Average value

  • COUNT - Count non-nulls

  • GEO_MEAN - Geometric mean

Comparison Functions

  • LEAST - Smaller of two values

  • GREATEST - Larger of two values

  • COALESCE - First non-null value

Conditional Functions

  • IF - Conditional expression

  • IN - Check value in array

Type Conversion Functions

  • INTEGER - Convert to integer

  • DECIMAL - Convert to decimal

  • FLOAT - Convert to float

  • STRING - Convert to string

  • BOOLEAN - Convert to boolean

  • DATE - Convert to date

Date Functions

  • DATE - Create date from components

  • DATEADD - Add interval to date

  • DATE_TRUNC - Truncate date

  • DAY - Extract day

  • MONTH - Extract month

  • YEAR - Extract year

  • DAYS - Convert to days

Table Operations

  • FILTER - Filter rows

  • GROUP_BY - Group rows

  • WINDOW - Window frame

  • LOOKUP - Left join

  • STACK - Union columns

  • COLUMN - Column reference

Financial Functions

  • FV - Future value

  • XIRR - Internal rate of return

Expanded Transaction Code Access in Basic Calculations

Basic calculations are now more powerful: users can build calcs using any Maybern transaction code. This unlocks greater flexibility for custom allocation rule logic and enhances support for advanced analytics use cases, such as transaction code pivoting. Whether basing rules on management fees, credit facility activity, or other non-standard codes, users now have full control over the inputs.

Under Configuration --> Calculations:

  • Click New Calculation and select Basic as the type

  • In the Transaction Code dropdown, you’ll now see the full list of Maybern transaction codes available for selection

Allocation Rules

Support for Multiple Transaction Codes in Allocation Rules

Users can now assign multiple transaction codes to a single allocation rule. This update removes the previous limitation of one code per rule, making it easier to manage complex allocation logic. All selected codes are saved and clearly displayed in the rule details.

Fees

Ad-Hoc Calls for Fees

Some funds using Maybern post fees quarterly, but call for fees on an ad-hoc basis and don't call exact quarterly amounts. We've introduced new functionality to support this in Maybern.

Under Configuration --> LPA Config --> Fees --> Fee List --> Click into a fee --> Edit

  • To enable this new config, select transaction code Custom Amount Pro Rata and save

Under Fees:

  • Users can post fees quarterly as usual

  • Users can now see a new statistic in the stat bar showing Fees Called

Under Capital Activity --> Run Capital Event --> Add Call:

  • When this configuration is enabled, users will be able to select Management Fees and enter one total amount of fees to call from LPs

  • The maximum amount users can enter is the amount of fees already posted but not yet called

  • When using this functionality, quarterly fee postings will be used FIFO

Configuration

Increased Flexibility of Rounding Methodologies

Some funds round to the cent for some workflows (like fee postings and credit facility expense postings), but round to the dollar in other workflows (usually capital calls, so that LPs aren't stuck wiring cents). As part of our commitment to increasing flexibility across the system, we've made it possible for funds to opt to round to different increments by workflow.

Under Configuration --> LPA Config --> Fund Family Profile --> Rounding Event Overrides --> Edit:

  • Users can select a Fund Family Event Type (e.g. Capital Activity)

  • Users can then select a Fund Family Sub Event Type (e.g. Capital Call)

  • Users can then select the Rounding Methodology for that event

  • Once this has been configured, users will see that the rounding methodology change surfaces in selected events

Waterfall Configuration Updates

Several updates have been made to the waterfall configuration UI to improve clarity and better support structured calculations:

  • Calculation names are now linked on hover, allowing users to quickly navigate to the underlying structured calc definitions

  • Catch Up tiers now include a Catch Up % input field, along with a corresponding calculation definition section to clarify how each tier is computed

Did this answer your question?