Skip to main content
Skip table of contents

Execution fees update

History of changes

Date

Link to Jira ticket

Who

What

6.12.2024

BKR-2

@a user

doc creation

Glossary

Mandate

Execution Fee

Contract for the provision of services, where all conditions and rates are fixed.

The charge that a broker or trading platform imposes on a client for executing a buy or sell order on a financial market. It is a cost associated with the actual act of processing and completing the trade.

Aim

Have a differentiated handling of Brokerage (BR) and Asset Manager (AM) execution fees

  • BR: Fees amounts to be blocked during specific periods before they are displayed to Clients

  • AM: Fees to be displayed in order details, with immediate blocking of the relevant order amount.

Access policy and authorities matrix

Authority name= Transactions_view

Authority name= Transactions_modify

Permission

Description

View

User has access to transactions to view them

Modify

View + User can edit transactions

Requirements

Requirement

Use case

Tech Comments

Each Saas needs to have ability for Users to indicate on Mandete execution fees.

The constructer of execution fees shall include specific fee rates ( % ) with additional settings:

  1. Specify the minimum order amount for the fee to be applied.

  2. Define fees based on different instrument types and subtypes

Фы Use the rates manually in constructor and can always check the current settings.

Preconditions:

  1. The mandate for the client has been created.

  2. Execution fees feature is enabled o for Saas subscription.

Steps:

  1. User selected a mandate and saw Fee tab with fee configuration options.

  2. The system provided an option to add or edit execution fees

    1. If the user wanted to specify a percentage-based fee rate, then:

      • Allow the input of a percentage value in the “Fee Rate” field.

    2. If the user wants to set a minimum order amount, then:

      • Provide a field for inputting the minimum order value (numeric).

    3. If the user wants to define fees based on instrument types and subtypes, then:

      • Display a drop-down or multi-select list for different instrument categories ( Fixed Income (bond), Equity, Certificate (equity) .. etc ).

      • Allow linking specific rates to selected instruments.

  3. If the user saved the fee configuration, then:

    1. Validate all inputs.

    2. Display the updated fee structure in the "Fee " tab.

  4. If the user wants to apply the rates manually, then:

    1. Provide an option to trigger fee application at will, overriding the automated process.

  5. If the user checked the current settings, then:

    1. Display a summary of:

      • The percentage fee rate.

      • Minimum order amount

      • Instrument-specific.

Related doc https://lunawealth.atlassian.net/wiki/spaces/WM/pages/3534585857

Existing execution fee construction

Screen Shot 2024-12-11 at 2.07.17 PM.png

User shall have ability to see history of setting of execution fees

-

May be constructed as user-friendly logs interface

Users need additional filed Accruals on positions to store there the aggregated on date execution fees that are not withdrawn. execution fees stored in confluence

A new execution fee is recorded for a position

Preconditions:

  1. The system is set up to calculate execution fees for each position.

  2. The Accruals field exists in the positions table and is visible in the user interface.

  3. Non-withdrawn execution fees are tracked in the system.

Steps:

  1. A user executed a trade associated with a position, then:

    • The system calculates the execution fee using the applicable criteria.

  2. If the calculated execution fee is not immediately withdrawn, then:

    • The system identifies the position linked to the trade.

  3. If the system identifies the relevant position, then:

    • Aggregate all non-withdrawn execution fees for that position as of the current date.

  4. If the aggregation is successful, then:

    • Automatically update the Accruals field for the position with the total non-withdrawn execution fees.

  5. If a user reviews the position details, then:

    • Display the updated Accruals field in the position summary.

Calc - check if we can calculate accruals as Accrued logic

Update metaDTO

If 2 system Brokerage and Asset manager are connected then, the system shall give ability to apply execution fees differently.

Brokerage Saas shall have ability to store not withdrawn execution fees in accruals

Asset Manager Saas shall receive execution fees from Brokerage as sum of execution fees for a period.

Actors: BR

Preconditions:

  1. The trade is executed, and execution fees are calculated.

Steps:

  1. The system calculates execution fees for each trade.

  2. If the execution fee is not withdrawn immediately, then:

    • Store the fee amount in the Accruals field for the corresponding mandate or position.

  3. If the user reviews the position or mandate details, then:

    • Display the total non-withdrawn execution fees in the Accruals field.

Preconditions:

  1. Execution fees are recorded and stored in the Accruals field in the Brokerage SaaS.

  2. A connection exists between the Brokerage and Asset Manager systems.

Steps:

  1. If the Asset Manager requests execution fees for a specific period, then:

    • Aggregate all execution fees for the requested period in the Brokerage SaaS.

    • Generate a data package containing:

      • Aggregated fee sum.

      • Period details.

      • Optional trade details.

  2. If the data package is prepared, then:

    • Transmit the package to the Asset Manager SaaS.

  3. If the transmission is successful, then:

    • Update the Accruals field to reflect that the fees for the period were sent.

Preconditions:

  1. The Asset Manager SaaS is connected to the Brokerage SaaS.

  2. A data package containing execution fees has been transmitted.

Steps:

  1. If the Asset Manager SaaS receives an execution fee data package, then:

    • Validate the package to ensure:

      • It corresponds to the requested period.

      • The fee sum is correctly calculated.

  2. If the data is validated, then:

    • Record the total execution fees for the period in the Asset Manager’s records.

  3. If the user reviews the execution fees for the period, then:

    • Display the aggregated fee value along with the associated period details.

  4. If reconciliation is initiated, then:

    • Compare the received execution fees with the Brokerage system’s reported data to resolve discrepancies.

Executed order

 #

Trade Date

Value Date

Type

Sub

Type

Qty

Price

Commission BANK

Net Amount Pf Ccy

Bank Account

Status

Status reason

 

Comment

 

02/02

04/02

BUY

-

5

110

-550

BR BA

Active

Order

System transaction

Generated fee transactions

child

02/02

04/02

Fee

Execution fee

10.5

1

-

-10.5

BR BA

Active

Pending_approval

Order transaction

parent

02/02

04/02

BUY

-

5

110

-581

BR BA

Active

Order

System transaction

 RESULT for exchange with AM

02/02

04/02

BUY

-

5

110

550

BR BA

Active

Order

After Transaction is received from Custodian

 #

Trade Date

Value Date

Type

Sub

Type

Qty

Price

Commission BANK

Net Amount Pf Ccy

Bank Account

Status

Status reason

 

Comment

 

02/02

04/02

BUY

-

5

110

20.5

-570.5

BR BA

Pending

Not_Matched

Bank transaction

Generated fee transactions

child

02/02

04/02

Fee

Execution fee

10.5

1

-

-10.5

BR BA

Active

Pending_approval

Order transaction

parent

02/02

04/02

BUY

-

5

110

31

-581

BR BA

Pending

Not_Matched

System transaction

 RESULT for exchange with AM

02/02

04/02

BUY

-

5

110

31

-581

AM BA

Active

Confirmed

After matching and approval

 #

Trade Date

Value Date

Type

Sub

Type

Qty

Price

Commission BANK

Net Amount Pf Ccy

Bank Account

Status

Status reason

 

Comment

 

02/02

04/02

BUY

-

5

110

20.5

-570.5

BR BA

Activ

Confirmed

Bank transaction

Generated fee transactions

child

02/02

04/02

Fee

Execution fee

10.5

1

-

-10.5

BR BA

Active

Confirmed

Order transaction

parent

02/02

04/02

BUY

-

5

110

31

-581

BR BA

Active

Confirmed

System transaction

 RESULT for exchange with AM

02/02

04/02

BUY

-

5

110

31

-581

AM BA

Pending

Not_Matched

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.