Question for Yuval

You can make a conditional node that is either true or false based on some time period, such as a price rising above its moving average.

The alternative would be to make the condition based on some factor such as market capitalization.

Yuval I don’t understand the “normalization” of the composite nodes at all.

According to this example from the docs, the lower % factor is effectively ignored.

Maybe if I had the actual “normalization” formula, that would explain it better.
In this example I would expect AMZN to have a rank > 0, unless Rank 0 just means last place in the ranking, in which case I understand completely.

Yes, rank 0 simply means last place in the ranking.

Yuval, thanks for the breakdown.

I’ve put the example into Excel to see how the numbers work. I’ve normalized values between 0-100. See attached Excel file, also screenshot for reference.

In the end, for this example at least, there seems to be no difference between the top 3 ranks of weighted average and normalized method. There is only a slight difference between ranks on a lower ranked stock.

As noted, I’ve normalized between 0-100. In the examples in the P123 documentation and Yuval’s example, top stocks are ranked 90, not 100. Perhaps this is a discrepancy between the methods.

Please take a look; if there is another nuance, please let me know.

My aim here is not to split hairs, but to make sure I’m on board with how P123 is ranking!


Normalized example, Excel.xlsx (12.5 KB)

No, normalization is not what happens after ranks are combined. Instead, all the stocks are RERANKED and ranks are assigned accordingly. This is necessary so that composite nodes function in the same manner as a simple node, with evenly spaced ranks, and so that composite nodes actually accomplish something instead of simply replicating what separate nodes would do.

OK, got it now. Clearly the composite nodes do not use weighted averages to rank, as you noted and through my Excel file there would be no difference in the ranking (but have the advantage of grouping similar themed nodes together for ease of management).

I believe what was throwing me off is that the documentation refers to “weighted average” between nodes in a composite, but I believe this should be “weighted sum”.

All of this said, if composite nodes treat ranks like this, then was the original intent of composites to deal specifically with related ratios only, i.e. like your Dupont ROE example? Or were other applications intended for use w/ composites?

The P123 Core ranking systems all use composite nodes (and often composites within composites). While the nodes within composites are related, should they be shown as separate nodes for the reasons discussed in this post? Or are the composites used in these P123 ranking systems for demonstration/presentation purposes, to group similar themed nodes?


The composite ranking method has always been the default method at Portfolio123, and when the ranking systems were originally designed they were designed to use composite nodes. This was based on the idea that one should rank stocks on value, growth, sentiment, quality, etc. separately first, and then combine the rankings to get the best stocks. This certainly makes some intuitive sense. One could argue, for example, that because all value ratios share one common element–a stock’s price–it makes more sense to come up with an overall value score than to weight each value component separately.

By not using many composite nodes myself, I’m being heretical.

Fair enough Yuval. Either way, I’ll spend some time playing with and without composites and assess the impact on my strategies.

Thanks for the explaining this nuance.


1 Like

I’ve gone over the conversation. As far as I can understand, it is preferable not to group the nodes in Composite nodes unless the criteria are almost identical - one factor (Yuval), as in this case with Sentiment in the attached system. I merged the Yval Large Cap System and the Zoo.

How would any of you proceed now to provide the appropriate weight to the individual criterion (node) without overfitting?

Would you test the individual node against a certain universe and the number of shares in the portfolio you want to hold over a 10-year period, and then assign the individual node weight based on the total return it provided in the universe?

Or how would you have gone about it?

Mr. Whycliffes, sir!

Did you ever get a response to your question, either on this thread or another one?