Skip to content

Signal Magician comes with a Performance Billing plugin that allows you to charge your customers a percentage share of the profit you make for them during a calendar month.

This is a very transparent way of growing your trading service. Obviously, the company has its biggest interest in making money for customers because it directly affects how much profit the company makes. More profit for customers means more profit for the company.

All hedge funds are probably using this method, and it became a standard a long time ago now because it makes it fair for the customers and not charge them for the months where no net profit was made.

Previous month Performance Fees calculated based on a High Water Mark including carry forward loss, deposits, and withdrawals.
Previous month Performance Fees calculated based on a High Water Mark including carry forward loss, deposits, and withdrawals.

What is the Performance Billing plugin?

Performance Billing plugin (PB) is an add-on for Signal Magician software. PB calculates monthly performance fees for each trading account based on a High Water Mark method so that your customers pay you only if you deliver results. It also helps you track how much money each of your customers owes you according to their performance share.

All calculations include deposits and withdrawals to make it fair for the customer and the trader. PB plugin recalculates a high watermark with every deposit or withdrawal. In case of a losing month, the system will set a carry forward loss, which the trader needs to make back, to collect future performance fees.

You can set what performance fee you will charge every month, for example, 20%, and there’s an option to set individual fee size for each customer should you want to charge them more or less than others.

The most important variables for PB plugin are:

  • Account Balance at the beginning of trading
  • High Water Mark value (HWM)
  • Carry Forward Loss value (CFL)
  • Performance Fee size in percentage

What is High Water Mark

A High Water Mark (HWM) is the highest profit value a trading account has ever reached after removing the effects of deposits and withdrawals.

HWM is based on the initial account balance or any month-end profit value during the time you are invested. Until the end of the month, any values are not considered, except when the initial investment is made or when a client exits.

The high-water mark is a perfect metric to ensure the trader does not get paid large sums for poor performance. If the trader loses money over a certain period, he must get the account balance above the high-water mark before receiving a customer’s performance fee. This means a client pays the performance fee only if the trader exceeds the HWM for the previous month.

Each investor has their own HWM as they invest at different points in time. This means the system tracks the high-watermark level for each trading account individually to make it fair for the customers and not charge them for the months where no net profit was made.

What is Carry Forward Loss

Carry Forward Loss (CFL) is the amount of money that the trader needs to make back to collect future performance fees. The CFL appears only when the customer account ends the month at a loss.

For example, if the HWM of a client account is $12,000 and the trader loses -$2,000 for the previous month bringing the account balance to $10,000, then the CFL is -$2,000.

So if next month the trader makes a profit of $3,500 then the PB plugin would calculate the performance fees only from $1,500 because of $3,500 + (-$2,000) = $1,500. And of course, that $1,500 would add towards the HWM which would become $12,000 + $1,500 = $13,500.

CFL comes together with the HWM because HWM alone cannot track fair performance fee calculations because of deposits and withdrawals.

HWM can also be a negative number if the customer withdraws more than the size of his watermark. This can happen if the customer had different MT4 accounts attached to his account and made multiple deposits and withdrawals.

However, negative HWM does not affect the CFL, which would be zero (assuming no loss was made on that account). CFL is not affected by High Water Mark, withdrawals, or deposits, and when the CFL is zero, it means all profit made will be accounted for the performance fee.

How PB plugin calculates the Performance Fee

The PB plugin calculates the performance fee on the 2nd day of each month and includes all copied and uploaded trading transactions from the previous month. It means that you’ll see the Performance Fees report for December 2020 only after the 2nd of January 2021. And the report for the January 2021 will appear only after the 2nd of February 2021.

If there’s no report for any particular month then it means none of the followers closed any copied trades during that month. Only closed trades count towards the performance report.

The PB system does not count in 3rd party trades that investors might have on their accounts (someone else is trading their account simultaneously). This means customers won’t pay performance fees on the profit from trades they make themselves or by other traders. If such 3rd party trades lose money, they won’t affect the HWM or performance fee calculations.

If a trade is missed and not copied for any reason, it won’t be considered when calculating performance fees.

Example of Performance Fees calculated for one investor

At first, it might be difficult to understand how Performance Fees are calculated, but you should understand it if you study the below example.

Example of Performance Fees calculated for one investor.
Example of Performance Fees calculated for one investor.

As you can see from the above example, the investor started with an initial balance of $10,000, and he must pay 25% of the profits monthly.

If the trader gains profits for the investor, the investor gets charged performance fees from the net profit. Net profit is the Gain plus the carry forward loss.

As you can see, the trader gained $7,000 in November 2019, but because the trader incurred losses in the previous months, there was a carry forward loss of $6,000. This means the net profit is $7,000 + (-$6,000) = $1,000. A performance fee of 25% is calculated from the net profit, and it is $250 for that particular month.

Deposits and withdrawals made during the previous month affect the High Water Mark, but they do not affect the Carry Foward Loss.

When a customer makes a deposit or withdrawal, it takes the broker a few days to process it, and only then it appears in the MT4 client account history. When this happens, the Signal Magician software will pick that record and upload it to the database almost instantly.

Accounting and Performance Fees

You can export Performance Fees to a CSV file, so you can upload it to Xero or any other accounting software which accepts CSV files.

If you don’t have your own accounting software, then the PB plugin can create invoices for each customer on the SM system.

Currently, the system does not notify customers about the PB invoices, so you will have to send them an email yourself and remind them that they have to pay their performance fee invoices that are available in the member’s area.

If you are using Stripe and have it connected with your Signal Magician, customers can pay performance fees invoices with a bank card, and they will be automatically marked as “PAID” on the system.

When customers pay the invoices outside the system through a bank transfer or any other payment system, you can then go and mark these invoices as “PAID” on the SM system.

How to Enable Performance Billing Plugin

The Performance Billing plugin is always enabled, but PB reports are hidden from the customers by default. PB plugin must do these calculations every month even if you do not use this plugin so that everything is ready to start using the PB plugin anytime later, should you decide.

Admin decides whether customers see all the stats and reports or don’t. If the stats are hidden from the customers, you do not offer a performance billing service. In other words, when you set the system to show PB statistics to customers, they will be able to see them on their Profile page.

Enabling Performance Billing plugin
Enabling Performance Billing plugin

To set the system show statistics to customers, you have to enable this in the Performance Billing section on the Admin Settings page. See the image above.

You can also set the size of the performance fee to charge in percentage. The default is 20%, and if you want to charge some individual customers different performance fee rates, you can do that too (I’ll explain this in a moment).

Another parameter to set is the day until when the performance fee must be paid. At the moment, the PB plugin does not disable customer access if they do not pay the invoice until this day, but this will be introduced in the future version.

And finally, set the email address from where customers will receive notifications about performance fees (this will be introduced in the future version).


PB plugin can create invoices for each customer who has to pay performance fees for the previous month.

At the moment, the PB plugin does not send notifications to customers about performance fee invoices. For now, you should do that yourself at the beginning of each month after PB fees get calculated. You can send a single email to your customers through an email marketing system like MailChimp and explain that it is time to log into their web panel and pay the PB invoice.

You have two choices when it comes to creating invoices.

You can set the system to not create invoices with Performance Fees for your customers. In such a case, you can export the data as a CSV file and use it in your accounting software (i.e., Xero).

Or, you can set the system to create invoices for your customers. In this case, your customers can download invoices from the web panel and pay them online (if you have proper payment processor integration). Admin can mark invoices as paid manually in case the customer pays the invoice outside the system.

If you chose the system to create invoices for your customers, then you’ll need to fill in your company registration and other information to appear on the invoice. You can do that in the Performance Billing section on the Admin Settings page (see image below).

Performance Billing settings
Performance Billing settings

When the PB plugin calculates the fees and creates the invoices for the previous month, you can access them by opening the Performance Fees page from the left menu.

Performance Fees list with invoice numbers
Performance Fees list with invoice numbers

And here’s how the invoice looks like.

Example invoice for the performance fees.
Example invoice for the performance fees.

Should you need to download the invoice, open it in your web-browser, choose to Print it, and select “Save as PDF” as your printer.

Setting a Custom Performance Fee (%)

The PB plugin allows admin to set a different performance fee for each client should you need to.

To do that, you need to open a customer’ Profile and navigate to the Performance Billing section.

Then, check the box next to the “Use Custom Performance Fee (%)” and input your desired performance fee for that particular customer. If that checkbox is not selected, the PB plugin will use the default performance fee size set in the Admin Settings. Next, save the settings.

Custom Performance Fee will be taken into account for all future months and after the PB plugin performs all the calculations on the 2nd day of the next month.


While the PB system is fully functioning already, you might miss some of the functionalities. We are still developing extra features for the PB plugin. Your suggestions are very welcome.

Leave a Comment

You must be logged in to post a comment.

Terms & Conditions | Privacy Policy

Copyright © 2021 · · All Rights Reserved