[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6G6E5YMBERMG0AVAPRWD7WV":3,"skill-same:01M6G6E5YMBERMG0AVAPRWD7WV":88},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":46,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":49,"install":50,"resources":63},"01M6G6E5YMBERMG0AVAPRWD7WV","dividend-growth-pullback-screener",null,"Use this skill to find high-quality dividend growth stocks (12%+ annual dividend growth, 1.5%+ yield) that are experiencing temporary pullbacks, identified by RSI oversold conditions (RSI ≤40). This skill combines fundamental dividend analysis with technical timing indicators to identify buying opportunities in strong dividend growers during short-term weakness.","kbarbel640-del\u002Fskills","kbarbel640-del","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F255315490?v=4","01M6CJPPQGCCESXMG3K7BBGQ5J","01M6CJPPX2PB2BCZERFVM2C2B3",1,"MIT","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fveeramanikandanr48\u002Fdividend-growth-pullback-screener\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"growth","screener","dividend growth pullback screener","indicators","analysis","quality","technical","find","short","use","rsi","yield","stocks","timing","with","2026-11-10 10:12:30",false,"---\nname: dividend-growth-pullback-screener\ndescription: Use this skill to find high-quality dividend growth stocks (12%+ annual dividend growth, 1.5%+ yield) that are experiencing temporary pullbacks, identified by RSI oversold conditions (RSI ≤40). This skill combines fundamental dividend analysis with technical timing indicators to identify buying opportunities in strong dividend growers during short-term weakness.\n---\n\n# Dividend Growth Pullback Screener\n\n## Overview\n\nThis skill screens for dividend growth stocks that exhibit strong fundamental characteristics but are experiencing temporary technical weakness. It targets stocks with exceptional dividend growth rates (12%+ CAGR) that have pulled back to RSI oversold levels (≤40), creating potential entry opportunities for long-term dividend growth investors.\n\n**Investment Thesis:** High-quality dividend growth stocks (often yielding 1-2.5%) compound wealth through dividend increases rather than high current yield. Buying these stocks during temporary pullbacks (RSI ≤40) can enhance total returns by combining strong fundamental growth with favorable technical entry timing.\n\n## When to Use This Skill\n\nUse this skill when:\n- Looking for dividend growth stocks with exceptional compounding potential (12%+ dividend CAGR)\n- Seeking entry opportunities in quality stocks during temporary market weakness\n- Willing to accept lower current yields (1.5-3%) for higher dividend growth\n- Focusing on total return over 5-10 years rather than current income\n- Market conditions show sector rotations or broad pullbacks affecting quality names\n\n**Do NOT use when:**\n- Seeking high current income (use value-dividend-screener instead)\n- Requiring immediate dividend yields >3%\n- Looking for deep value plays with strict P\u002FE or P\u002FB requirements\n- Short-term trading focus (\u003C6 months)\n\n## Screening Workflow\n\n### Step 1: Set API Keys\n\n#### Two-Stage Approach (RECOMMENDED)\n\nFor optimal performance, use FINVIZ Elite API for pre-screening + FMP API for detailed analysis:\n\n```bash\n# Set both API keys as environment variables\nexport FMP_API_KEY=your_fmp_key_here\nexport FINVIZ_API_KEY=your_finviz_key_here\n```\n\n**Why Two-Stage?**\n- **FINVIZ**: Fast pre-screening with RSI filter (1 API call → ~10-50 candidates)\n- **FMP**: Detailed fundamental analysis only on pre-screened candidates\n- **Result**: Analyze more stocks with fewer FMP API calls (stays within free tier limits)\n\n#### FMP-Only Approach (Original Method)\n\nIf you don't have FINVIZ Elite access:\n\n```bash\nexport FMP_API_KEY=your_key_here\n```\n\n**Limitation**: FMP free tier (250 requests\u002Fday) limits analysis to ~40 stocks. Use `--max-candidates 40` to stay within limits.\n\n### Step 2: Execute Screening\n\n**Two-Stage Screening (RECOMMENDED):**\n\n```bash\ncd dividend-growth-pullback-screener\u002Fscripts\npython3 screen_dividend_growth_rsi.py --use-finviz\n```\n\nThis executes:\n1. FINVIZ pre-screen: Dividend yield 0.5-3%, Dividend growth 10%+, EPS growth 5%+, Sales growth 5%+, RSI \u003C40\n2. FMP detailed analysis: Verify 12%+ dividend CAGR, calculate exact RSI, analyze fundamentals\n\n**FMP-Only Screening:**\n\n```bash\npython3 screen_dividend_growth_rsi.py --max-candidates 40\n```\n\n**Customization Options:**\n\n```bash\n# Two-stage with custom parameters\npython3 screen_dividend_growth_rsi.py --use-finviz --min-yield 2.0 --min-div-growth 15.0 --rsi-max 35\n\n# FMP-only with custom parameters\npython3 screen_dividend_growth_rsi.py --min-yield 2.0 --min-div-growth 10.0 --max-candidates 30\n\n# Provide API keys as arguments (instead of environment variables)\npython3 screen_dividend_growth_rsi.py --use-finviz --fmp-api-key YOUR_FMP_KEY --finviz-api-key YOUR_FINVIZ_KEY\n```\n\n### Step 3: Review Results\n\nThe script generates two outputs:\n\n1. **JSON file:** `dividend_growth_pullback_results_YYYY-MM-DD.json`\n   - Structured data with all metrics for further analysis\n   - Includes dividend growth rates, RSI values, financial health metrics\n\n2. **Markdown report:** `dividend_growth_pullback_screening_YYYY-MM-DD.md`\n   - Human-readable analysis with stock profiles\n   - Scenario-based probability assessments\n   - Entry timing recommendations\n\n### Step 4: Analyze Qualified Stocks\n\nFor each qualified stock, the report includes:\n\n**Dividend Growth Profile:**\n- Current yield and annual dividend\n- 3-year dividend CAGR and consistency\n- Payout ratio and sustainability assessment\n\n**Technical Timing:**\n- Current RSI value (≤40 = oversold)\n- RSI context (extreme oversold \u003C30 vs. early pullback 30-40)\n- Price action relative to recent trend\n\n**Quality Metrics:**\n- Revenue and EPS growth (confirms business momentum)\n- Financial health (debt levels, liquidity ratios)\n- Profitability (ROE, profit margins)\n\n**Investment Recommendation:**\n- Entry timing assessment (immediate vs. wait for confirmation)\n- Risk factors specific to the stock\n- Upside scenarios based on dividend growth compounding\n\n## Screening Criteria Details\n\n### Phase 1: Fundamental Screening (FMP API)\n\n**Initial Filter:**\n- Dividend Yield ≥ 1.5% (calculated from actual dividend payments)\n- Market Cap ≥ $2 billion (liquidity and stability)\n- Exchange: NYSE, NASDAQ (excludes OTC\u002Fpink sheets)\n\n**Dividend Growth Analysis:**\n- 3-Year Dividend CAGR ≥ 12% (doubles dividend in 6 years)\n- Dividend Consistency: No cuts in past 4 years\n- Payout Ratio \u003C 100% (sustainability check)\n\n**Financial Health:**\n- Positive revenue growth over 3 years\n- Positive EPS growth over 3 years\n- Debt-to-Equity \u003C 2.0 (manageable leverage)\n- Current Ratio > 1.0 (liquidity)\n\n### Phase 2: Technical Screening (RSI Calculation)\n\n**RSI Calculation:**\n- 14-period RSI using daily closing prices\n- Formula: RSI = 100 - (100 \u002F (1 + RS))\n  - RS = Average Gain \u002F Average Loss over 14 periods\n- Data source: FMP historical prices (past 30 days)\n\n**RSI Filter:**\n- RSI ≤ 40 (oversold\u002Fpullback condition)\n- RSI interpretation:\n  - \u003C 30: Extreme oversold (potential reversal)\n  - 30-40: Early pullback (uptrend correction)\n  - > 40: Not oversold (excluded)\n\n### Phase 3: Ranking and Output\n\n**Composite Scoring (0-100):**\n- Dividend Growth (40%): Reward higher CAGR and consistency\n- Financial Quality (30%): ROE, profit margins, debt levels\n- Technical Setup (20%): Lower RSI = better entry opportunity\n- Valuation (10%): P\u002FE and P\u002FB for context (not exclusionary)\n\nStocks ranked by composite score. Top scorers combine exceptional dividend growth with attractive technical entry points.\n\n## Understanding the Results\n\n### Interpreting RSI Levels\n\n**RSI 25-30 (Extreme Oversold):**\n- Often indicates panic selling or negative news\n- Higher risk but potentially highest reward\n- Recommended: Wait for RSI to turn up (sign of stabilization)\n- Entry: Scale in with 50% position, add on RSI >30\n\n**RSI 30-35 (Strong Oversold):**\n- Normal correction in strong uptrend\n- Lower risk than extreme oversold\n- Recommended: Can initiate position immediately\n- Entry: Full position acceptable, set stop loss 5-8% below\n\n**RSI 35-40 (Early Pullback):**\n- Mild weakness in uptrend\n- Lowest risk of further decline\n- Recommended: Conservative entry for high conviction stocks\n- Entry: Full position, tight stop loss 3-5% below\n\n### Dividend Growth Compounding Examples\n\n**12% Dividend CAGR (Minimum Threshold):**\n- Starting Yield: 1.5%\n- Year 6: 2.96% yield on cost (doubled)\n- Year 12: 5.85% yield on cost (4x)\n- Example: Visa (V), Mastercard (MA) historical profile\n\n**15% Dividend CAGR (Excellent):**\n- Starting Yield: 1.8%\n- Year 6: 4.08% yield on cost (2.3x)\n- Year 12: 9.22% yield on cost (5.1x)\n- Example: Microsoft (MSFT) 2010-2020 period\n\n**20% Dividend CAGR (Exceptional):**\n- Starting Yield: 2.0%\n- Year 6: 6.00% yield on cost (3x)\n- Year 12: 18.0% yield on cost (9x)\n- Example: Apple (AAPL) 2012-2020 period\n\n**Key Insight:** Lower starting yield + high growth > high starting yield + low growth over 10+ years.\n\n## Troubleshooting\n\n### No Results Found\n\n**Possible Causes:**\n1. **Market conditions:** Strong bull market with few oversold stocks\n2. **Criteria too strict:** 12% dividend growth is rare (5-10 stocks typically qualify)\n3. **RSI threshold too low:** Consider raising to RSI ≤45 for more candidates\n\n**Solutions:**\n- Relax RSI threshold: `--rsi-max 45` (early pullback phase)\n- Lower dividend growth: `--min-div-growth 10.0` (still excellent growth)\n- Lower minimum yield: `--min-yield 1.0` (capture more growth stocks)\n\n### API Rate Limit Reached\n\n**FMP Free Tier Limits:**\n- 250 requests\u002Fday\n- Each stock analyzed requires 6 API calls (quote, dividend, prices, income, balance, cashflow, metrics)\n- Maximum ~40 stocks per day in FMP-only mode\n\n**Solutions:**\n\n**1. Use FINVIZ Two-Stage Approach (RECOMMENDED)**\n```bash\npython3 screen_dividend_growth_rsi.py --use-finviz\n```\n- FINVIZ pre-screening: 1 API call → 10-50 candidates (already filtered by RSI)\n- FMP analysis: 6 calls × 10-50 stocks = 60-300 FMP calls\n- **Advantage**: FINVIZ RSI filter dramatically reduces candidates, staying within FMP limits\n\n**2. Limit FMP-Only Candidates**\n```bash\npython3 screen_dividend_growth_rsi.py --max-candidates 40\n```\n\n**3. Wait 24 Hours for Rate Limit Reset**\n- FMP resets at UTC midnight\n\n**4. Upgrade to FMP Paid Plan**\n- Starter ($14\u002Fmonth): 500 requests\u002Fday\n- Professional ($29\u002Fmonth): 1,000 requests\u002Fday\n\n**Note:** FINVIZ Elite subscription ($40\u002Fmonth) + FMP free tier is more cost-effective than FMP paid plans for this use case.\n\n### RSI Calculation Errors\n\n**Issue:** \"Insufficient price data for RSI calculation\"\n\n**Cause:** Stock has less than 30 days of trading history (IPO or inactive)\n\n**Solution:** Script automatically skips stocks with insufficient data. No action needed.\n\n## Combining with Other Skills\n\n**Pre-Screening Context:**\n1. **Market News Analyst** → Identify sector rotations or market pullbacks\n2. **Breadth Chart Analyst** → Confirm broader market oversold conditions\n3. **Economic Calendar Fetcher** → Check for upcoming rate decisions or macro events\n\n**Post-Screening Analysis:**\n1. **Technical Analyst** → Analyze individual stock charts for qualified candidates\n2. **US Stock Analysis** → Deep dive on specific stocks before entry\n3. **Backtest Expert** → Validate RSI + dividend growth strategy historically\n\n**Example Workflow:**\n```\n1. Market News Analyst: \"Market pulled back 5% this week on Fed hawkish comments\"\n2. Breadth Chart Analyst: Confirms market oversold (S&P breadth weak)\n3. Dividend Growth Pullback Screener: Finds 8 quality dividend growers with RSI \u003C35\n4. Technical Analyst: Analyze top 3 candidates for support levels and entry timing\n5. Execute: Enter scaled positions with 6-12 month time horizon\n```\n\n## Resources\n\n### scripts\u002F\n\n**screen_dividend_growth_rsi.py** - Main screening script\n- Integrates FMP API for fundamental data\n- Calculates 14-period RSI from historical prices\n- Applies multi-phase filtering and ranking\n- Outputs JSON and markdown reports\n\n### references\u002F\n\n**rsi_oversold_strategy.md** - RSI indicator explanation\n- How RSI identifies oversold conditions\n- Difference between extreme oversold (\u003C30) vs. early pullback (30-40)\n- Combining RSI with fundamental analysis\n- False positive management and risk mitigation\n\n**dividend_growth_compounding.md** - Dividend growth mathematics\n- Power of 12%+ dividend CAGR over time\n- Yield vs. growth trade-offs\n- Historical examples (MSFT, V, MA, AAPL)\n- Quality characteristics of dividend growth stocks\n\n**fmp_api_guide.md** - API usage documentation\n- API key setup and management\n- Endpoint documentation for screening\n- Rate limiting strategies\n- Error handling and troubleshooting\n\n---\n\n**Disclaimer:** This screening tool is for informational purposes only. Past dividend growth does not guarantee future performance. Conduct thorough due diligence before making investment decisions. RSI oversold conditions do not guarantee price reversals - stocks can remain oversold for extended periods.\n","# Dividend Growth Pullback Screener\n\n## Overview\n\nThis skill screens for dividend growth stocks that exhibit strong fundamental characteristics but are experiencing temporary technical weakness. It targets stocks with exceptional dividend growth rates (12%+ CAGR) that have pulled back to RSI oversold levels (≤40), creating potential entry opportunities for long-term dividend growth investors.\n\n**Investment Thesis:** High-quality dividend growth stocks (often yielding 1-2.5%) compound wealth through dividend increases rather than high current yield. Buying these stocks during temporary pullbacks (RSI ≤40) can enhance total returns by combining strong fundamental growth with favorable technical entry timing.\n\n## When to Use This Skill\n\nUse this skill when:\n- Looking for dividend growth stocks with exceptional compounding potential (12%+ dividend CAGR)\n- Seeking entry opportunities in quality stocks during temporary market weakness\n- Willing to accept lower current yields (1.5-3%) for higher dividend growth\n- Focusing on total return over 5-10 years rather than current income\n- Market conditions show sector rotations or broad pullbacks affecting quality names\n\n**Do NOT use when:**\n- Seeking high current income (use value-dividend-screener instead)\n- Requiring immediate dividend yields >3%\n- Looking for deep value plays with strict P\u002FE or P\u002FB requirements\n- Short-term trading focus (\u003C6 months)\n\n## Screening Workflow\n\n### Step 1: Set API Keys\n\n#### Two-Stage Approach (RECOMMENDED)\n\nFor optimal performance, use FINVIZ Elite API for pre-screening + FMP API for detailed analysis:\n\n```bash\n# Set both API keys as environment variables\nexport FMP_API_KEY=your_fmp_key_here\nexport FINVIZ_API_KEY=your_finviz_key_here\n```\n\n**Why Two-Stage?**\n- **FINVIZ**: Fast pre-screening with RSI filter (1 API call → ~10-50 candidates)\n- **FMP**: Detailed fundamental analysis only on pre-screened candidates\n- **Result**: Analyze more stocks with fewer FMP API calls (stays within free tier limits)\n\n#### FMP-Only Approach (Original Method)\n\nIf you don't have FINVIZ Elite access:\n\n```bash\nexport FMP_API_KEY=your_key_here\n```\n\n**Limitation**: FMP free tier (250 requests\u002Fday) limits analysis to ~40 stocks. Use `--max-candidates 40` to stay within limits.\n\n### Step 2: Execute Screening\n\n**Two-Stage Screening (RECOMMENDED):**\n\n```bash\ncd dividend-growth-pullback-screener\u002Fscripts\npython3 screen_dividend_growth_rsi.py --use-finviz\n```\n\nThis executes:\n1. FINVIZ pre-screen: Dividend yield 0.5-3%, Dividend growth 10%+, EPS growth 5%+, Sales growth 5%+, RSI \u003C40\n2. FMP detailed analysis: Verify 12%+ dividend CAGR, calculate exact RSI, analyze fundamentals\n\n**FMP-Only Screening:**\n\n```bash\npython3 screen_dividend_growth_rsi.py --max-candidates 40\n```\n\n**Customization Options:**\n\n```bash\n# Two-stage with custom parameters\npython3 screen_dividend_growth_rsi.py --use-finviz --min-yield 2.0 --min-div-growth 15.0 --rsi-max 35\n\n# FMP-only with custom parameters\npython3 screen_dividend_growth_rsi.py --min-yield 2.0 --min-div-growth 10.0 --max-candidates 30\n\n# Provide API keys as arguments (instead of environment variables)\npython3 screen_dividend_growth_rsi.py --use-finviz --fmp-api-key YOUR_FMP_KEY --finviz-api-key YOUR_FINVIZ_KEY\n```\n\n### Step 3: Review Results\n\nThe script generates two outputs:\n\n1. **JSON file:** `dividend_growth_pullback_results_YYYY-MM-DD.json`\n   - Structured data with all metrics for further analysis\n   - Includes dividend growth rates, RSI values, financial health metrics\n\n2. **Markdown report:** `dividend_growth_pullback_screening_YYYY-MM-DD.md`\n   - Human-readable analysis with stock profiles\n   - Scenario-based probability assessments\n   - Entry timing recommendations\n\n### Step 4: Analyze Qualified Stocks\n\nFor each qualified stock, the report includes:\n\n**Dividend Growth Profile:**\n- Current yield and annual dividend\n- 3-year dividend CAGR and consistency\n- Payout ratio and sustainability assessment\n\n**Technical Timing:**\n- Current RSI value (≤40 = oversold)\n- RSI context (extreme oversold \u003C30 vs. early pullback 30-40)\n- Price action relative to recent trend\n\n**Quality Metrics:**\n- Revenue and EPS growth (confirms business momentum)\n- Financial health (debt levels, liquidity ratios)\n- Profitability (ROE, profit margins)\n\n**Investment Recommendation:**\n- Entry timing assessment (immediate vs. wait for confirmation)\n- Risk factors specific to the stock\n- Upside scenarios based on dividend growth compounding\n\n## Screening Criteria Details\n\n### Phase 1: Fundamental Screening (FMP API)\n\n**Initial Filter:**\n- Dividend Yield ≥ 1.5% (calculated from actual dividend payments)\n- Market Cap ≥ $2 billion (liquidity and stability)\n- Exchange: NYSE, NASDAQ (excludes OTC\u002Fpink sheets)\n\n**Dividend Growth Analysis:**\n- 3-Year Dividend CAGR ≥ 12% (doubles dividend in 6 years)\n- Dividend Consistency: No cuts in past 4 years\n- Payout Ratio \u003C 100% (sustainability check)\n\n**Financial Health:**\n- Positive revenue growth over 3 years\n- Positive EPS growth over 3 years\n- Debt-to-Equity \u003C 2.0 (manageable leverage)\n- Current Ratio > 1.0 (liquidity)\n\n### Phase 2: Technical Screening (RSI Calculation)\n\n**RSI Calculation:**\n- 14-period RSI using daily closing prices\n- Formula: RSI = 100 - (100 \u002F (1 + RS))\n  - RS = Average Gain \u002F Average Loss over 14 periods\n- Data source: FMP historical prices (past 30 days)\n\n**RSI Filter:**\n- RSI ≤ 40 (oversold\u002Fpullback condition)\n- RSI interpretation:\n  - \u003C 30: Extreme oversold (potential reversal)\n  - 30-40: Early pullback (uptrend correction)\n  - > 40: Not oversold (excluded)\n\n### Phase 3: Ranking and Output\n\n**Composite Scoring (0-100):**\n- Dividend Growth (40%): Reward higher CAGR and consistency\n- Financial Quality (30%): ROE, profit margins, debt levels\n- Technical Setup (20%): Lower RSI = better entry opportunity\n- Valuation (10%): P\u002FE and P\u002FB for context (not exclusionary)\n\nStocks ranked by composite score. Top scorers combine exceptional dividend growth with attractive technical entry points.\n\n## Understanding the Results\n\n### Interpreting RSI Levels\n\n**RSI 25-30 (Extreme Oversold):**\n- Often indicates panic selling or negative news\n- Higher risk but potentially highest reward\n- Recommended: Wait for RSI to turn up (sign of stabilization)\n- Entry: Scale in with 50% position, add on RSI >30\n\n**RSI 30-35 (Strong Oversold):**\n- Normal correction in strong uptrend\n- Lower risk than extreme oversold\n- Recommended: Can initiate position immediately\n- Entry: Full position acceptable, set stop loss 5-8% below\n\n**RSI 35-40 (Early Pullback):**\n- Mild weakness in uptrend\n- Lowest risk of further decline\n- Recommended: Conservative entry for high conviction stocks\n- Entry: Full position, tight stop loss 3-5% below\n\n### Dividend Growth Compounding Examples\n\n**12% Dividend CAGR (Minimum Threshold):**\n- Starting Yield: 1.5%\n- Year 6: 2.96% yield on cost (doubled)\n- Year 12: 5.85% yield on cost (4x)\n- Example: Visa (V), Mastercard (MA) historical profile\n\n**15% Dividend CAGR (Excellent):**\n- Starting Yield: 1.8%\n- Year 6: 4.08% yield on cost (2.3x)\n- Year 12: 9.22% yield on cost (5.1x)\n- Example: Microsoft (MSFT) 2010-2020 period\n\n**20% Dividend CAGR (Exceptional):**\n- Starting Yield: 2.0%\n- Year 6: 6.00% yield on cost (3x)\n- Year 12: 18.0% yield on cost (9x)\n- Example: Apple (AAPL) 2012-2020 period\n\n**Key Insight:** Lower starting yield + high growth > high starting yield + low growth over 10+ years.\n\n## Troubleshooting\n\n### No Results Found\n\n**Possible Causes:**\n1. **Market conditions:** Strong bull market with few oversold stocks\n2. **Criteria too strict:** 12% dividend growth is rare (5-10 stocks typically qualify)\n3. **RSI threshold too low:** Consider raising to RSI ≤45 for more candidates\n\n**Solutions:**\n- Relax RSI threshold: `--rsi-max 45` (early pullback phase)\n- Lower dividend growth: `--min-div-growth 10.0` (still excellent growth)\n- Lower minimum yield: `--min-yield 1.0` (capture more growth stocks)\n\n### API Rate Limit Reached\n\n**FMP Free Tier Limits:**\n- 250 requests\u002Fday\n- Each stock analyzed requires 6 API calls (quote, dividend, prices, income, balance, cashflow, metrics)\n- Maximum ~40 stocks per day in FMP-only mode\n\n**Solutions:**\n\n**1. Use FINVIZ Two-Stage Approach (RECOMMENDED)**\n```bash\npython3 screen_dividend_growth_rsi.py --use-finviz\n```\n- FINVIZ pre-screening: 1 API call → 10-50 candidates (already filtered by RSI)\n- FMP analysis: 6 calls × 10-50 stocks = 60-300 FMP calls\n- **Advantage**: FINVIZ RSI filter dramatically reduces candidates, staying within FMP limits\n\n**2. Limit FMP-Only Candidates**\n```bash\npython3 screen_dividend_growth_rsi.py --max-candidates 40\n```\n\n**3. Wait 24 Hours for Rate Limit Reset**\n- FMP resets at UTC midnight\n\n**4. Upgrade to FMP Paid Plan**\n- Starter ($14\u002Fmonth): 500 requests\u002Fday\n- Professional ($29\u002Fmonth): 1,000 requests\u002Fday\n\n**Note:** FINVIZ Elite subscription ($40\u002Fmonth) + FMP free tier is more cost-effective than FMP paid plans for this use case.\n\n### RSI Calculation Errors\n\n**Issue:** \"Insufficient price data for RSI calculation\"\n\n**Cause:** Stock has less than 30 days of trading history (IPO or inactive)\n\n**Solution:** Script automatically skips stocks with insufficient data. No action needed.\n\n## Combining with Other Skills\n\n**Pre-Screening Context:**\n1. **Market News Analyst** → Identify sector rotations or market pullbacks\n2. **Breadth Chart Analyst** → Confirm broader market oversold conditions\n3. **Economic Calendar Fetcher** → Check for upcoming rate decisions or macro events\n\n**Post-Screening Analysis:**\n1. **Technical Analyst** → Analyze individual stock charts for qualified candidates\n2. **US Stock Analysis** → Deep dive on specific stocks before entry\n3. **Backtest Expert** → Validate RSI + dividend growth strategy historically\n\n**Example Workflow:**\n```\n1. Market News Analyst: \"Market pulled back 5% this week on Fed hawkish comments\"\n2. Breadth Chart Analyst: Confirms market oversold (S&P breadth weak)\n3. Dividend Growth Pullback Screener: Finds 8 quality dividend growers with RSI \u003C35\n4. Technical Analyst: Analyze top 3 candidates for support levels and entry timing\n5. Execute: Enter scaled positions with 6-12 month time horizon\n```\n\n## Resources\n\n### scripts\u002F\n\n**screen_dividend_growth_rsi.py** - Main screening script\n- Integrates FMP API for fundamental data\n- Calculates 14-period RSI from historical prices\n- Applies multi-phase filtering and ranking\n- Outputs JSON and markdown reports\n\n### references\u002F\n\n**rsi_oversold_strategy.md** - RSI indicator explanation\n- How RSI identifies oversold conditions\n- Difference between extreme oversold (\u003C30) vs. early pullback (30-40)\n- Combining RSI with fundamental analysis\n- False positive management and risk mitigation\n\n**dividend_growth_compounding.md** - Dividend growth mathematics\n- Power of 12%+ dividend CAGR over time\n- Yield vs. growth trade-offs\n- Historical examples (MSFT, V, MA, AAPL)\n- Quality characteristics of dividend growth stocks\n\n**fmp_api_guide.md** - API usage documentation\n- API key setup and management\n- Endpoint documentation for screening\n- Rate limiting strategies\n- Error handling and troubleshooting\n\n---\n\n**Disclaimer:** This screening tool is for informational purposes only. Past dividend growth does not guarantee future performance. Conduct thorough due diligence before making investment decisions. RSI oversold conditions do not guarantee price reversals - stocks can remain oversold for extended periods.\n",{"name":5,"description":7},"main","e7e336ac628c3e3bd771aff1aaa469c93778f94a","skills\u002Fveeramanikandanr48\u002Fdividend-growth-pullback-screener",0,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del","2026-08-23 22:39:37",{"source":8,"skillName":5,"commands":51,"prompt":61,"zipAvailable":62},[52,55,58],{"tool":53,"command":54},"npx","npx skills add kbarbel640-del\u002Fskills --skill dividend-growth-pullback-screener",{"tool":56,"command":57},"bunx","bunx skills add kbarbel640-del\u002Fskills --skill dividend-growth-pullback-screener",{"tool":59,"command":60},"pnpm","pnpm dlx skills add kbarbel640-del\u002Fskills --skill dividend-growth-pullback-screener","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fveeramanikandanr48\u002Fdividend-growth-pullback-screener\u002FSKILL.md",true,[64,70,74,78,82],{"path":65,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":68,"sourceHtmlUrl":69},"_meta.json","REFERENCE","参考文档",330,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fveeramanikandanr48\u002Fdividend-growth-pullback-screener\u002F_meta.json",{"path":71,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":72,"sourceHtmlUrl":73},"references\u002Fdividend_growth_compounding.md",13437,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fveeramanikandanr48\u002Fdividend-growth-pullback-screener\u002Freferences\u002Fdividend_growth_compounding.md",{"path":75,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":76,"sourceHtmlUrl":77},"references\u002Ffmp_api_guide.md",18487,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fveeramanikandanr48\u002Fdividend-growth-pullback-screener\u002Freferences\u002Ffmp_api_guide.md",{"path":79,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":80,"sourceHtmlUrl":81},"references\u002Frsi_oversold_strategy.md",12195,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fveeramanikandanr48\u002Fdividend-growth-pullback-screener\u002Freferences\u002Frsi_oversold_strategy.md",{"path":83,"resourceType":84,"resourceTypeDesc":85,"sizeBytes":86,"sourceHtmlUrl":87},"scripts\u002Fscreen_dividend_growth_rsi.py","SCRIPT","脚本",44517,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fveeramanikandanr48\u002Fdividend-growth-pullback-screener\u002Fscripts\u002Fscreen_dividend_growth_rsi.py",[89,119,143,164,170,190],{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":100,"publishedAt":38},"01M6G8J55967D6281ACMKAKTEQ","crowd-prompting","A marketplace where AI agents improve prompts, system instructions, tool descriptions, and other text-based content with domain expertise from real-world operations — and earn tokens for valuable contributions.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzzadrian\u002Fcrowd-prompting\u002FSKILL.md",[95],{"categoryNo":96,"categoryName":97,"taxonomyType":98,"taxonomyTypeDesc":99},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[101,102,103,37,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118],"crowd prompting","prompting","api","tokens","domain","world","prompts","operations","instructions","text","tool","system","improve","productivity","marketplace","https","content","ai agents",{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":126,"publishedAt":38},"01M6G8J0PKPAYVET6BWE8W4C26","dilemm-ai","Compete in DilemmAI, the prisoner's dilemma AI arena at dilemm.ai. Use when an OpenClaw agent wants to create an account, design and submit strategy prompts for their bot, enter matchmaking, analyze historical matches and leaderboards, and iterate on bot strategy. Requires headless browser automation (no API available yet).","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzyori\u002Fdilemm-ai\u002FSKILL.md",[125],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[127,103,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,107,32],"dilemm ai","arena","analyze","browser","openclaw agent","create","automation","browser automation","bot","openclaw","design","strategy","headless","compete","submit","matchmaking",{"skillNo":144,"name":145,"nameZh":6,"description":146,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":147,"categories":148,"keywords":152,"publishedAt":38},"01M6G8HWAF3K9SW7NP3Z83CPJ6","arxiv-paper-reviews","Interact with arXiv Crawler API to fetch papers, read reviews, and submit comments. Use when working with arXiv papers, fetching paper lists by date\u002Fcategory\u002Finterest, viewing paper details with comments, or submitting paper reviews via API at http:\u002F\u002F150.158.152.82:8000.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzxrys\u002Fweak-accept\u002FSKILL.md",[149],{"categoryNo":150,"categoryName":151,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000021","资料检索与研究",[153,154,155,156,157,158,159,37,160,141,32,161,103,162,163],"arxiv paper reviews","reviews","arxiv","paper","crawler","papers","comments","fetch","read","http","via",{"skillNo":165,"name":145,"nameZh":6,"description":146,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":166,"categories":167,"keywords":169,"publishedAt":38},"01M6G8HQJ7N7WMY6YV7D7SSJ16","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzxrys\u002Farxiv-paper-reviews\u002FSKILL.md",[168],{"categoryNo":150,"categoryName":151,"taxonomyType":20,"taxonomyTypeDesc":21},[156,155,154,153,163,158,159,37,157,141,32,160,161,103,162],{"skillNo":171,"name":172,"nameZh":6,"description":173,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":174,"categories":175,"keywords":176,"publishedAt":38},"01M6G8HM95Y64JNVFC2HN4E2BG","git-summary","Get a quick summary of the current Git repository including status, recent commits, branches, and contributors.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzweack\u002Fgit-summary\u002FSKILL.md",[],[177,178,179,180,181,182,183,184,185,186,187,188,189],"git","summary","git summary","commits","repository","win32","status","linux","contributors","true","quick","get","branches",{"skillNo":191,"name":192,"nameZh":6,"description":193,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":194,"categories":195,"keywords":200,"publishedAt":38},"01M6G8HGEGF05CNEJCGVYFSC4R","agent-constitution","Interact with AgentConstitution governance contracts on Base Sepolia. Check compliance, read rules, log actions, query governance state.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fztsalexey\u002Fagent-constitution\u002FSKILL.md",[196,197],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":198,"categoryName":199,"taxonomyType":98,"taxonomyTypeDesc":99},"01JBSEEDCAT000000000000037","律师与法务",[201,202,203,204,37,205,206,43,207,161,208,209,210,211,212,116,213,214,215],"agent constitution","constitution","contracts","tree","query","base","log","check","Rules","projects","compliance","actions","state","governance","github"]