- ago
Hello,

Similar to last week I’m getting hung up on the intricacies of splits impacting backtesting, but this time for fees. For a more accurate perspective on profitability of a higher trading frequency strategy, I’m trying to incorporate per share fees (interactive brokers). My strategies typically involve ETFs that I’ve had many splits over their years, so their comparative historical prices are vastly different than what their unadjusted prices would have been (and therefore, position sizes and fees would have been different from what Wealth-labs is calculating).

This may sound like a redundant question, but are fees and position sizes calculated from post-split position sizes? Should they be? I understand that returns need to accurately reflect splits, but historical position sizes and fees are currently inaccurate because of splits.

If I bought $100,000 of TQQQ at inception at ($0.41/share x 192:1 splits =) $78.72 - my total position quantity would have been 1,270 shares and my IB fees would have been $6.35.

However with split-adjusted-pricing - my $100,000 buys me 243,902 shares in backtesting… hitting the 1% fee cap of $1,000 for the trade.

That’s a big difference and impact to backtest results.

The inverse is true for something like UVXY, with a price at inception of around 1,000,000,000 after splits.

Are there any tips for accommodating or working around this in backtesting?

Are there any plans to correctly calculate historical position sizes and fees in the future? Should I create a feature request?

Thanks!
1
126
3 Replies

Reply

Bookmark

Sort
Cone8
 ( 22.26% )
- ago
#1
Changed Subject.
WAS: Historical position sizes are inaccurate after splits
0
- ago
#2
Thanks Cone - given my example, position size inaccuracy drives the inaccurate per share commissions, so I think the former adjustment to the title made more sense. I understand why the application was designed this way, though, so totally get rationalizing the intent vs. the resulting secondary outcomes.

Regardless, any thoughts? Am I just breaking a cardinal rule about considering fees (or affording positions with reasonable equity balances) in backtesting?
0
Cone8
 ( 22.26% )
- ago
#3
Position Size is accurate for the split pricing. You can only backtest the BarHistory(ies) loaded. You have my suggested solution another thread - create a dynamic DataSet of non-split UVXY series.

The problem is calculating realistic Per Share commissions after splits. What's required is calculating Per Share commissions based on actual pricing by date. It's pretty straightforward (devil in the details) but that's up to Glitch to implement.
0

Reply

Bookmark

Sort