'Formula Weight' Position Sizing Method

The long-awaited ‘Formula Weight’ position sizing method is finally ready for release after being under development for seven months.
Details of the new sizing method are available in this document: Dynamic Position Sizing on Portfolio123.
We will be restricting this feature to Designer and Manager users in two weeks.

Here is a list of tracked changes which will affect portfolios & simulations:
[]Truncation is now used instead of floor to eliminate fractional shares for short transactions.[]Invalid holdings (i.e. NO PRICE, NO DATA, …) are now sold immediately when using daily reconstitution / rebalance (instead of only being checked weekly).[]Improved weight handling for no margin hedge on current positions when using % Portfolio Weight.[]Cash from dividends can now be deployed on the pay date.[]The output of sell rules are handled as booleans (true unless 0 or NA) when using Formula Weight. Negative values do not trigger an error.[]Hedge position adjustment (i.e. IncreasePositions & DecreasePositions) now handles tansaction fees properly when using % Portfolio Weight.
If buy/sell transactions occured on the same day, the fees are returned in the subsequent IncreasePositions / DecreasePositions transactions, since, in reality, it would be coalesced and executed as a single transaction.[*]A ‘Number of Positions’ metric has been added to our portfolio performance data store to facilitate the new ‘# Positions’ plot on the portfolio performance chart.
The new plot is essential in spotting issues with buy-restrictive trading systems, since % Cash Invested & Leverage are no longer indicative of number of positions when using the Formula Weight position sizing method. Expect the data to be backfilled soon for existing models.

Link to doc ‘Dynamic Position Sizing on Portfolio123’ is not working.

Walter

Link should work now.

Thanks Walter.

ted

Game changer.

P123 Team,
Thank you for this great addition to P123.

Great Addition, Thank’s.
Would love to see a similar mechanism added to the allocation of Portfolios in a Book

Yes. P123! Great job! Thank you!

I would like to second yorama’s post. A similar mechanism added to the allocation of Portfolios in a Book would be great.

I third this suggestion. Great job though.

We’ve released Formula Weight again to production. We chased down the major issues affecting the release two weeks ago. Thanks for bearing with us, and let us know if you spot any other issues.

I like the new features!

Thanks for waiting until after the Monday trades to push out the release.

For those of you who have seen a backtest terminated due to ‘Exposure after Rebalance’ (i.e. ‘model exposure deviated X% above/below the target’ for ‘Allow deviation’ and ‘model cound not remain at target exposure’ for ‘Adjust transactions’), functionality has been added to allow the system to issue warnings instead of terminate the backtest. On account of this, all users with simulations set to ‘Allow deviation up to 100%’ are advised to switching them back to ‘Adjust transactions’ or decrease the percentage to a reasonable number depending on which ‘Exposure after Rebalance’ method you prefer. Neither of these options will terminate a backtest moving forward.

It is time to allow this in DM models. What is the hold-up. Here is a 50 position model that gives preference to the smaller and med-cap stocks of the Russell 3000 which can only be done with the new Formula Weight’ Position Sizing Method. Low turnover and a 20% annualized return. The great recession drawdown of 40% looks like it never happened.


As per your request, the restriction has been removed.

Thanks Aaron.
The position weight formula has great potential, especially for targeting the smaller caps of a universe with reverse-cap-weighting.

Hi guys,
You should have a closer look at the Position Weight Formula.


What a great chart, Georg! Thanks!

What do you think about rebalancing based on inverted mktcap versus including mktcap (lower is better) into the ranking system? I think I’m going to experiment with this.

An analysis in The Case For Reverse-Cap-Weighted Indexing provides support for weighting the stocks of the S&P 500 Index inversely to their market capitalization (MktCap) in order to achieve higher returns than the index.
https://seekingalpha.com/article/4122258-case-reverse-cap-weighted-indexing

There is also a new ETF RVRS following this index.

• For the 19 year period the cap-weighted portfolio showed an annualized return of 6.62% with a maximum drawdown of -54%.
• An equal-weighted portfolio would have had an annualized return of 10.27% with a maximum drawdown of -59%.
• A reverse-cap-weighted portfolio would have had an annualized return of 13.22% with a maximum drawdown of -65%.
• The higher return of the reverse-cap-weighted portfolio is attributed to the higher average returns of the smaller cap stocks relative to the larger cap stocks of the S&P 500.

Thanks for the paper, Georg. I was wonder what exactly Reverse-Cap meant.

Walter

Thank you Georg - very interesting. Seems to confirm that smaller caps perform better over time (even if the small caps here are still quite large!)
I must say I could sense the potential but have not had the time to look into how to use the formula Weight.

I just read the tutorial which is helpful albeit limited (in my view). More examples of practical use would be welcomed in it

To test your suggestion on my existing systems - am I correct if I do (this would be my first attempt at using formula weight):

  1. create a custom series that outputs the min mktcap of the universe (here SP500) → call it MinMktCap
  2. create another custom series that outputs the max mktcap of the universe (here SP500) → MaxMktCap
  3. add in the field “Position Weight Formula” → close(0, getseries(“MinMktCap”)) + ( close(0, getseries(“MaxMktCap”)) - Mktcap )

NB: not looking for any special sauce you might have added - just plain vanilla “reverse” mktcap as can be computed on P123

Many thanks

Jerome