Which S&P 500 companies pass the screen, and why
An AAOIFI-based screen of every S&P 500 company, run automatically. Each verdict keeps the ratios, their limits and the filing behind it, so it can be checked.
Open the heatmap every stock, coloured by status
How a verdict is made
| Status | Meaning |
|---|---|
| Pass | Every input was available and every ratio is within its limit. |
| Fail | A business screen failed, or a financial ratio is over its limit. |
| Needs review | A borderline business case. It is never passed automatically. A reviewer may resolve it with a recorded override. |
| Insufficient data | A required input is missing or out of date. It is never treated as a pass. |
The checks run in this order, and the first that applies decides: a business fail, then missing or out-of-date input, then a ratio over its limit, then a borderline business case. Otherwise the result is a pass. A few checks can turn a pass into insufficient data; none changes a fail or a review.
The method in brief
| Test | Limit | Rule |
|---|---|---|
| Interest-bearing debt / market cap | below 30% | Strict "<". Debt from the widest set of tags that does not double count. |
| Cash and interest-bearing securities / market cap | below 30% | Strict "<". Same rule as debt. |
| Impure income / revenue | below 5% | Strict "<". Interest income only. |
| Business screen | fail | Alcohol, tobacco, gambling, conventional banks and insurers, and weapons makers. Some borderline groups go to needs review. |
| Market cap | 12-month average | Verdicts use the 12-month average of daily market cap. Spot and the 36-month average are stored and compared. |
| Near a limit | within 10% | A passing ratio within 10% of its limit, measured relative to the limit, is flagged. |
Filings are read only if they were filed on or before the screen date, and the screen date's own price is never read. Stored history only moves forward. The full method, and the points still to verify, are in the README.
Data sources
| Source | Used for | Note |
|---|---|---|
| Wikipedia: list of S&P 500 companies | Which companies are screened, with sector and sub-industry | Today's list, not the list on a past date. |
| SEC EDGAR: company facts and each filing's XBRL | Debt, cash, revenue, interest income and share counts | Point in time: only filings made by the screen date. |
| yfinance | Closing prices for market cap and the last-close price change | Unofficial. It can break or be throttled. A run that cannot read every close is not published. |
Limits
- Most companies do not tag interest income. Other bases are labelled lower confidence on the page.
- The business screen cannot see revenue mix inside a harmless industry code.
- There is no historical backtest. The constituent list and industry codes are today's values.
- The thresholds and the business rules are the project's own reading. They are not yet checked against the AAOIFI text.
The full list is in the README.