Hello,
For several reasons, I am building a custom universe to replace Prussell3000 (NEW) and Prussell3000 (OLD) for simulations that I am using as live portfolios. My goal for the custom universe is to find the 3,000 largest stocks by market cap in the “All Fundamentals - USA” universe after excluding ADRs. By using a formula, my understanding is that back tests using this universe will apply to prior period. This appears to be the case as some companies that have been acquired were found in prior periods in the simulations.
Following is what I've done to build the custom universe and my question:
I selected “All Fundamentals - USA” as the basic universe that I wish to customize. This universe has 7,073 stocks.
I excluded ADRs with the following buy rule - Universe ($ADR)=FALSE This rule left 6,559 stocks in the custom universe.
Buy rule #2 is "FOrder(“MktCap”)<=3000 This rule left 2,621 stocks in the custom universe
The question - Why am I left with 2,621 stocks in the custom universe rather than 3,000 stocks? Thank you in advance!
I tried it and it works. One problem you might face is a lot of sells due to “No Rank” since this universe will be changing every rebalance (unlike PRussell which change only once a year).
I am stumped by this one. I started to play around with modifying the rules for this basic universe by selecting only the top 2000 stocks. However, when I change Rule 2 to:
FOrder(“MktCap",#All,#DESC,#Previous)<=2000
I get this error message:
ERROR: Invalid criteria in Rule 2. Error near ‘?MktCap"’: Invalid command ‘?MktCap”’
When I check, the rule remains consistent and I it still says, “MktCap”. I do not see ?MktCap”.
Can anyone share some insight on why this is happening? Is this a glitch? Thanks in advance.
In the following, the custom universe rules would not accept the term “#Previous” in building the custom universe.
FOrder(“MktCap”,#All,#DESC,#Previous)<=3000
This is likely because I excluded ADRs as Rule 1, then added the “FOrder” as Rule 2. If I change the order of the rules, only 2,621 stocks are members (I started the custom universe with the “All Fundamentals - USA” universe. The result I got would be the same as using - FOrder(“MktCap”)<=3000 - as a custom universe and then excluding ADRs as a buy rule in my historical simulation. The problem is that this approach puts a lot of stocks that I don’t want into the universe that my ranking system is using.
What I’m shooting for is a custom universe that includes the top 3,000 stocks from the All Fundamentals universe without ADRs in the custom universe. If “#Previous” worked in the custom universe builder, I believe this would be simple.
Any help is appreciated! Thanks again - this online community is awesome.
Thanks Marco. I am probably an outlier in that I want to use #previous solely for the formation of a custom universe and not some other type of data. That said, this functionality has become important in my simulations and live portfolios since the change to the Prussell 3000 was made. Depending on the type of error, could #previous be activated for custom universe formation only? I’m trying to get the 3,000 top market cap stocks in the All Fundamentals universe after excluding ADRs. Thanks again!