Run3 Filter Holdings by Security Type Stocks Only
[COLM'26] SkillLearnBench is the first benchmark for evaluating continual learning methods that automatically generate agent skills.
npx -y skills add cxcscmu/SkillLearnBench --skill run3_Filter-Holdings-by-Security-Type-Stocks-OnlyAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Remove non-equity securities (bonds, options, warrants, preferred shares, funds) from holdings data, keeping only common stock positions. Use the correct security type field identified from the raw data structure inspection.
SKILL.md
1.7 KB, 303 tokens by cl100k_base, as published. Nobody here has run it
Steps
-
Verify the security type field name
- Confirm from raw data inspection which field distinguishes equity from other instruments
- Do NOT assume field names like "security_type" or "asset_class" without validation
-
Define inclusion criteria for stocks
- Create a list of acceptable values that represent common equity shares
- Examples: "STOCK", "EQUITY", "COMMON STOCK" (exact values depend on actual data)
- Ensure logic is case-insensitive if needed
-
Apply filtering logic
- Filter the holdings DataFrame to keep ONLY rows where security type matches stock criteria
- Use
.isin()or.str.contains()with the correct field name - Verify that rows are actually removed (not just flagged)
-
Validate filter results
- Count retained records after filtering
- Spot-check several remaining records to confirm they are actual stocks
- Compare count against expected result to detect over/under-filtering
-
Log excluded items
- Count how many non-stock items were removed by category
- If count is significantly different from expected, review sample excluded records
- Adjust filter criteria if needed (e.g., if ~1000 extra records remain, inspect what they are)
-
Proceed only if counts match expected range
- Do not proceed to answer question until filtering produces correct count
- If discrepancy remains, return to raw data inspection step