+1 888 340 6572 GET STARTED
MultiCharts Project Management
Go to the previous open issue
Go to the previous issue (open or closed)
Please log in to bookmark issues
Open Feature request MC-1708

Can't specify slippage for each instrument within one strategy - A fundamental flaw in the portfolio optimizer

Go to the next issue (open or closed)
Go to the next open issue

One needs to be able to specify slippage and commission at the instrument level, not the strategy level:

If I want to optimize 5 variables for my signal on a basket of 5 instruments, currently I can only apply a basket average for slippage + commission etc. Slippage does vary significantly per instrument. This will lead to highly unreliable optimization results. Optimal permutations will centre on input combinations that exploit the instruments with underestimated costs and that avoid the overestimated ones. It actually renders the portfolio optimizer virtually useless in my experience.

The solution of creating multiple strategies, each with its own instrument and own costs does not work either. This will yield 25 optimizable variables using the above example, which is highly undesirable (from a curve fitting and time perspective).

Please see the forum link:


Steps to reproduce this issue

see above description.

Comments (6)
user-offline.png  vindiou (vindiou)
Jun 15, 2015 - 07:46

Slippage should be configured per instrument, not per strategy!
This clearly is a flaw which leads to unrealistic calculation results.
Configuring it from the code according to the current instrument or the current market conditions would be good.

user-offline.png  vindiou (vindiou)
Jun 15, 2015 - 07:58

I meant slippage configurable from the QuoteManager and/or modifiable/editable from the code

user-offline.png  vindiou (vindiou)
Jun 17, 2015 - 03:51
user-offline.png  Will (wilkinsw)
Jan 24, 2018 - 08:21


What's happening with this, any updates? This should be a very straight forward fix.


-In PT, right click an instrument in a strategy. Click "Format Instruments"
-Simply add a tab here titled "Costs"

Job done!

Seperately: Other user(s) have suggested adding the ability to set slippage/costs in QM. I strongly disagree with this. My real world slippage varies wildly depending on the blend of order types I use for a given strategy. This solution would be awful! But, creating keywords to handle costs for use in the code would work. You could either declare costs in a line anywhere in the code OR,even better, be able to attach it to each and every order, which would be super granular!

user-offline.png  Will (wilkinsw)
Feb 27, 2019 - 11:29

Come on MC, let's make the product even better:

If I have a basket of instruments in PT, with greatly varying tick values and volatilities, commissions etc, and one signal applied (which I'm optimizing), I need costs per fill to be instrument specific and not signal specific. Otherwise the optimization will be steered by any biases (will over aggressively trade the underestimated cost instrument and under trade the overestimated cost instrument).

I suggest either:

-add the costs section to the dropdown menu when the user right clicks each instrument (and this will override the strategy level costs specified).

-or allow the user to specify a factor of QM specified "instrument default costs" under strategy level "commission rule".

I prefer the first option personally.

There's just a few details that need sorting in PT to make it a great back testing tool. IMO these are: instrument specific commission rules (detailed here) and bar magnifier. Sort them both out and I'd be happy to pay extra for a premium version of PT!

user-offline.png  Will (wilkinsw)
Nov 05, 2019 - 12:09


At least convert communal commission to the products currency!

Issue basics
  • Type of issue
    Feature request
  • Category
  • Targeted for
    Not determined
  • Status
User pain
  • Type of bug
    Not triaged
  • Likelihood
    Not triaged
  • Effect
    Not triaged
Affected by this issue (2)
People involved
Times and dates
  • Posted at
  • Last updated
Issue details
  • Resolution
    Not determined
  • Severity
Attachments (0)
There is nothing attached to this issue
Commits (0)
There are no code checkins for this issue
Duplicate issues (0)
This issue does not have any duplicates