Catching Pump-and-Dump Schemes: The 13-Flag Filter Explained
Pump-and-dump schemes remain one of the biggest risks in small-cap and penny stock trading. Promoters artificially inflate a stock's price through misleading social media campaigns, then sell their positions once retail traders have pushed the price up. The challenge for any signal detection platform is distinguishing genuine breakout signals from manufactured hype.
Statistical detection: 13 flags
Every candidate ticker in SignalScope is checked against 13 statistical flags before AI scoring begins. A ticker that triggers three or more flags is immediately moved to Filtered status and quarantined from the main dashboard. Two flags triggers an additional AI edge-case assessment. Here are all 13 flags and what they catch.
Price and listing flags
The first line of defense targets the types of securities most commonly used in pump-and-dump schemes. The penny_price flag triggers when a stock is priced below $1 with no verifiable catalyst — legitimate sub-dollar stocks exist, but they're overrepresented in manipulation. The sub_dime_52wk_floor flag catches stocks whose 52-week low is below $0.09, which often indicates shell companies or zombie stocks. The otc_listing flag marks stocks on OTC / Pink Sheets, where disclosure requirements are minimal and manipulation is easier.
Social signal flags
Several flags target the specific patterns that coordinated social media campaigns produce. The upvote_pump flag fires when a ticker has over 1000 upvotes but only 3 or fewer posts and fewer than 50 comments — a pattern consistent with vote manipulation rather than organic interest. The only_penny_subs flag catches tickers mentioned exclusively in r/pennystocks or r/smallstreetbets, subreddits that attract promotion. The hyperbolic_language flag triggers on three or more hype phrases like 'to the moon', '100x', or 'can't lose'. The coordinated_posts flag detects when 50% or more of post titles are near-identical — a clear sign of a coordinated campaign.
Source and catalyst flags
The single_source flag marks tickers that appear in only one data source, which means there is no independent corroboration. The no_news_catalyst flag catches tickers with multiple signals but no verifiable news or filing to explain the interest. The micro_cap_no_catalyst flag triggers for companies with a market cap under $50 million and no news — though SEC Insider and Options Flow signals bypass this flag, since those are verified institutional actions regardless of company size.
Timing flags
The sudden_spike flag catches suspicious patterns where three or more Reddit signals all appeared within the last 3 hours with an average of fewer than 10 upvotes — suggesting coordinated posting rather than organic discovery. On the Twitter side, the twitter_bot_promoters flag identifies coordinated low-credibility accounts, while the twitter_coordinated_pump flag triggers when three or more tweets share 40% or more near-identical text.
AI edge-case assessment
When a ticker triggers exactly two flags, it falls into a gray zone. Two flags could indicate a legitimate micro-cap breakout that happens to be cheap and social-only, or it could be the start of a pump scheme. In these cases, SignalScope sends the full signal data to an AI model for edge-case assessment. The AI evaluates the context holistically — the nature of the sources, the quality of the underlying story, and whether the flag combination makes sense for a real ticker. If the AI confirms pump-and-dump risk, the ticker is moved to Filtered.
Why three flags?
The threshold of three flags was calibrated through backtesting against known pump-and-dump cases and validated against the growing dataset of signal outcomes. Two flags catches too many legitimate small-cap tickers. Four flags lets too many pumps through. Three flags strikes the right balance: it catches the overwhelming majority of coordinated manipulation while preserving legitimate signals from smaller companies. As the dataset grows and the ML model improves, these thresholds are continuously refined.