Feed Hunter portal: dark theme dashboard on localhost:8888
- Web portal with 5 views: dashboard, feed, investigations, sims, status - Enhanced triage with 40+ claim patterns - Position monitor script - Pipeline report generator - Systemd service for portal
This commit is contained in:
@ -16,38 +16,97 @@ from datetime import datetime, timezone
|
||||
|
||||
# Patterns that suggest a verifiable claim
|
||||
CLAIM_PATTERNS = [
|
||||
# Specific dollar amounts and profits
|
||||
(r'\$(\d{1,3}(?:,\d{3})*(?:\.\d{2})?)\s*(profit|gained|made|earned|up|return)', 'dollar_profit'),
|
||||
(r'made\s+\$(\d{1,3}(?:,\d{3})*(?:\.\d{2})?)', 'dollar_profit'),
|
||||
(r'(\d{1,3}(?:,\d{3})*)\s*(k|K)\s*(profit|gained|made|earned|up|return)', 'k_profit'),
|
||||
(r'(\d+(?:\.\d+)?)\s*(million|M)\s+(profit|made|earned|up)', 'million_profit'),
|
||||
|
||||
# Performance claims
|
||||
(r'(\d+[\d.]*)\s*%\s*(win|success|profit|return|accuracy|hit rate)', 'performance_claim'),
|
||||
(r'wins?\s+(\d+[\d.]*)\s*%', 'performance_claim'),
|
||||
(r'(\d+[\d.]*)\s*%\s+of the time', 'performance_claim'),
|
||||
(r'(\d+[\d.]*)x\s+(return|profit|gain)', 'multiplier_claim'),
|
||||
(r'(\d+[\d.]*)x\s+(return|profit|gain|returns)', 'multiplier_claim'),
|
||||
(r'(\d+[\d.]*)\s*x\s+in\s+(\d+)\s+(day|week|month|year)s?', 'timeframe_multiplier'),
|
||||
|
||||
# Trading track record claims
|
||||
(r'(\d+)\s+(win|profitable)\s+(trade|bet|position)s?\s+in\s+a\s+row', 'streak_claim'),
|
||||
(r'(\d+)\s+out\s+of\s+(\d+)\s+(trade|bet|call)s?\s+(right|correct|profitable)', 'ratio_claim'),
|
||||
(r'(\d+[\d.]*)\s*%\s+accuracy\s+(this|last)\s+(week|month|year)', 'accuracy_claim'),
|
||||
(r'portfolio\s+up\s+(\d+[\d.]*)\s*%', 'portfolio_performance'),
|
||||
|
||||
# Copy/follow trading
|
||||
(r'copy(ing|cat)?\s+(trader|user|bet|position|strat)', 'copy_trading'),
|
||||
(r'follow\s+(this|my|their)\s+(trade|bet|position|strat)', 'copy_trading'),
|
||||
(r'mirror(ing)?\s+(trade|bet|position)', 'copy_trading'),
|
||||
(r'best\s+(trader|performer)\s+(on|in)\s+\w+', 'top_trader'),
|
||||
|
||||
# Crypto/DeFi specific claims
|
||||
(r'(\d+[\d.]*)\s+(eth|btc|sol|bnb|ada|dot)\s+(profit|gained|made|up)', 'crypto_profit'),
|
||||
(r'yield\s+farming\s+.{0,30}\s*(\d+[\d.]*)\s*%', 'yield_claim'),
|
||||
(r'staking\s+.{0,30}\s*(\d+[\d.]*)\s*%\s*(apy|apr)', 'staking_yield'),
|
||||
(r'liquidity\s+provider?\s+.{0,30}\s*(\d+[\d.]*)\s*%', 'lp_yield'),
|
||||
(r'(\d+[\d.]*)x\s+(leverage|margin)', 'leverage_claim'),
|
||||
|
||||
# NFT claims
|
||||
(r'(flip|sold|bought)\s+.{0,30}\s+for\s+(\d+[\d.]*)\s+(eth|sol)', 'nft_flip'),
|
||||
(r'(\d+[\d.]*)\s+(eth|sol)\s+floor', 'nft_floor'),
|
||||
(r'mint\s+(price|cost)\s+(\d+[\d.]*)', 'mint_price'),
|
||||
|
||||
# Arbitrage/spread
|
||||
(r'(arb|arbitrage|spread|mismatch|mispriced)', 'arbitrage_opp'),
|
||||
(r'risk[\s-]?free', 'arbitrage_opp'),
|
||||
(r'guaranteed\s+(profit|return|money)', 'arbitrage_opp'),
|
||||
(r'(\d+[\d.]*)\s*%\s+guaranteed', 'guaranteed_return'),
|
||||
|
||||
# Prediction/betting
|
||||
# Sports betting / Prediction markets
|
||||
(r'(polymarket|kalshi|manifold|prediction\s+market)', 'prediction_market'),
|
||||
(r'(odds|probability)\s+.{0,20}\s*(\d+[\d.]*)\s*%', 'odds_claim'),
|
||||
(r'(yes|no)\s+shares?\s+at\s+(\d+)', 'shares_price'),
|
||||
(r'betting\s+(\d+[\d.]*)\s*%\s+on', 'betting_confidence'),
|
||||
(r'(\d+[\d.]*)\s*%\s+chance\s+(of|that)', 'probability_estimate'),
|
||||
|
||||
# Price/target claims
|
||||
(r'(target|pt|price target)\s*[:\s]+\$?\s*(\d[\d,.]*)', 'price_target'),
|
||||
(r'(entry|buy)\s*(at|zone|point)\s*[:\s]+\$?\s*(\d[\d,.]*)', 'entry_point'),
|
||||
(r'next\s+(resistance|support)\s+at\s+\$?(\d[\d,.]*)', 'technical_level'),
|
||||
(r'going\s+to\s+\$?(\d[\d,.]*)', 'price_prediction'),
|
||||
|
||||
# Airdrop/free money
|
||||
(r'(airdrop|free\s+money|free\s+tokens?|claiming)', 'airdrop'),
|
||||
(r'(step\s+\d|how\s+to\s+(get|claim|earn))', 'howto'),
|
||||
(r'eligible\s+for\s+(\d+[\d.]*)\s+tokens?', 'airdrop_amount'),
|
||||
|
||||
# User/account references
|
||||
# Signal/alert claims
|
||||
(r'(signal|alert|call)\s+.{0,30}\s*(\d+[\d.]*)\s*%\s+(gain|profit)', 'signal_performance'),
|
||||
(r'last\s+(\d+)\s+(signal|call|alert)s?\s+all\s+(profit|green|won)', 'signal_streak'),
|
||||
(r'(\d+[\d.]*)\s*%\s+win\s+rate\s+on\s+(signal|call)s?', 'signal_winrate'),
|
||||
|
||||
# Time-sensitive claims
|
||||
(r'(today|yesterday|this\s+week)\s+.{0,30}\s*(\d+[\d.]*)\s*%\s+(up|gain|profit)', 'recent_performance'),
|
||||
(r'(\d+[\d.]*)\s*%\s+in\s+(\d+)\s+(hour|day|week)s?', 'timeframe_performance'),
|
||||
(r'last\s+(\d+)\s+(day|week|month)s?\s+.{0,30}\s*(\d+[\d.]*)\s*%', 'period_performance'),
|
||||
|
||||
# User/account references with performance
|
||||
(r'@\w+.*?(portfolio|track\s*record|history|performance)', 'user_reference'),
|
||||
(r'(this\s+(guy|trader|user|person|account))\s+.{0,30}(profit|win|return|made)', 'user_reference'),
|
||||
(r'trader\s+with\s+(\d+[\d.]*)\s*%\s+(accuracy|win\s+rate)', 'trader_stats'),
|
||||
(r'(\d+[\d.]*)\s*(million|M|k|K)\s+follower\s+trader', 'influencer_trader'),
|
||||
|
||||
# Strategy claims
|
||||
(r'(strategy|method|system)\s+that\s+.{0,30}(\d+[\d.]*)\s*%', 'strategy_claim'),
|
||||
(r'using\s+.{0,30}\s+(\d+[\d.]*)\s*%\s+(success|win)', 'method_performance'),
|
||||
(r'secret\s+(strategy|method|formula)', 'secret_method'),
|
||||
|
||||
# Options/derivatives
|
||||
(r'(call|put)\s+option\s+.{0,30}\s*(\d+[\d.]*)\s*%', 'options_claim'),
|
||||
(r'(\d+[\d.]*)\s*%\s+(otm|itm|out\s+of\s+the\s+money|in\s+the\s+money)', 'options_probability'),
|
||||
(r'delta\s+(\d+[\d.]*)', 'options_delta'),
|
||||
|
||||
# Course/education monetization
|
||||
(r'course\s+that\s+.{0,30}(\d+[\d.]*)\s*(k|K|dollar)', 'course_earning'),
|
||||
(r'teaching\s+.{0,30}\s+(\d+[\d.]*)\s*(k|K)\s+student', 'teaching_claim'),
|
||||
(r'(\d+[\d.]*)\s*%\s+of\s+students\s+(profit|succeed)', 'student_success'),
|
||||
]
|
||||
|
||||
# Link domains that are investigatable
|
||||
|
||||
Reference in New Issue
Block a user