Back to Community
Request: Add disclaimer to backtest graphs without commissions

Would it be possible to add a disclaimer to every backtest without commissions? The whole point of backtest is to give an accurate description of how an algo works and without commission or slippage all kinds of non-viable algorithms work.

It's highly misleading to see almost perfect backtest curves and having to browse the source code every time only to find that it's produced without any commission or slippage and with them it's not viable.

Another option would be to always have two curves at different panels, one without commission/slippage and one with default commission/slippage.

I understand why sometimes it might be meaningful to demonstrate some anomaly that is so minor that it wouldn't survive commission or slippage but in those cases the lack of commission/slippage should be clearly stated with some kind of big bold red text.

Here is a almost perfect example of an algo that will not survive (cannot survive) slippage or commission by myself:
https://www.quantopian.com/posts/worlds-best-algorithm-2#56d7fd7b9bfefe7d96000434

6 responses

bump

I think this is important. Otherwise posted backtests are mostly irrelevant.

I tend to agree--you only need a little note on the graph that says "commission: None, slippage: Custom," or something like that.

Disclaimer: Use Robinhood; don't pay commission.

To add on to this, it would be nifty to implement it directly into the backtesting engine, and enable it to be set in the same way the starting dollar amount is set.

I.E. Staring Cash: 5000 Commission: 1.50 Per: Trade

Edited to fix my awful spelling.

According to the documentation, backtests already incorporate a slippage and commission model by default:

"By default, backtests use the VolumeShareSlippage model." - Quantopian Help

That model is as follows: VolumeShareSlippage(volume_limit=0.025, price_impact=0.1)

In addition, the backtest also uses the followin commission model default:

"....backtest defaults to $0.0075 per share with a $1 minimum cost per trade." - Quantopian Help

Finally, its my understanding that there are platforms out there where, instead of paying per trade, you pay a relatively small monthly fee. This would likely be the best route for algos that have a high number of weekly transactions and for traders who sport a relatively large amount of starting capital.

Cheers

Disclaimer: Use Robinhood; don't pay commission.

That is not an option as Robinhood does not support shorting and are not meant for major capital. Also Robinhood is just for US citizens and I'm an EU citizen (and company owner).

Custom slippage and commission models are already possible.

According to the documentation, backtests already incorporate a slippage and commission model by default:

That's true. But the algos I'm talking about (including most algos that Quantopian posts themselves) explicitly turn commission and slippage off. Check the source code of some of the most best looking backtests posted by Q themselves and you'll see what I'm talking about

Here is an example from the front page:
https://www.quantopian.com/posts/long-slash-short-earnings-sentiment-trading-strategy

On the source code you'll see these lines:

    #: Set commissions and slippage to 0 to determine pure alpha  
    set_commission(commission.PerShare(cost=0, min_trade_cost=0))  
    set_slippage(slippage.FixedSlippage(spread=0))  

As I said before it should be possible to post curves without commission to demonstrate anomalies that are so minor that they don't survive slippage or commission but this should be explicitly stated.