daily-stock-analysis

aradotso/trending-skills · updated May 14, 2026

MDX-style export adds YAML metadata + attribution linking explainx.ai and this canonical listing URL.

$npx skills add https://github.com/aradotso/trending-skills --skill daily-stock-analysis
0 commentsdiscussion
summary

Skill by ara.so — Daily 2026 Skills collection.

skill.md

Daily Stock Analysis (股票智能分析系统)

Skill by ara.so — Daily 2026 Skills collection.

LLM-powered stock analysis system for A-share, Hong Kong, and US markets. Automatically fetches quotes, news, and fundamentals, generates AI decision dashboards with buy/sell targets, and pushes results to WeChat/Feishu/Telegram/Discord/Email on a schedule via GitHub Actions — zero server cost.

What It Does

  • AI Decision Dashboard: One-line conclusion + precise buy/sell/stop-loss prices + checklist per stock
  • Multi-market: A-shares (CN), HK stocks, US stocks + indices (SPX, DJI, IXIC)
  • Data sources: AkShare, Tushare, YFinance for quotes; Tavily/SerpAPI/Brave for news
  • LLM backends: Gemini, OpenAI, Claude, DeepSeek, Qwen via LiteLLM (unified)
  • Push channels: WeChat Work, Feishu, Telegram, Discord, DingTalk, Email, PushPlus
  • Automation: GitHub Actions cron schedule, no server needed
  • Web UI: Portfolio management, history, backtesting, Agent Q&A
  • Agent: Multi-turn strategy Q&A with 11 built-in strategies (MA crossover, Elliott Wave, etc.)

Installation

Method 1: GitHub Actions (Recommended, Zero Cost)

Step 1: Fork the repository

https://github.com/ZhuLinsen/daily_stock_analysis

Step 2: Configure Secrets (Settings → Secrets and variables → Actions)

Required — at least one LLM key:

GEMINI_API_KEY        # Google AI Studio (free tier available)
OPENAI_API_KEY        # OpenAI or compatible (DeepSeek, Qwen, etc.)
OPENAI_BASE_URL       # e.g. https://api.deepseek.com/v1
OPENAI_MODEL          # e.g. deepseek-chat, gpt-4o
AIHUBMIX_KEY          # AIHubMix (recommended, covers Gemini+GPT+Claude+DeepSeek)
ANTHROPIC_API_KEY     # Claude

Required — stock list:

STOCKS                # e.g. 600519,300750,AAPL,TSLA,00700.HK

Required — at least one notification channel:

TELEGRAM_BOT_TOKEN
TELEGRAM_CHAT_ID
FEISHU_WEBHOOK_URL
WECHAT_WEBHOOK_URL
EMAIL_SENDER / EMAIL_PASSWORD / EMAIL_RECEIVERS
DISCORD_WEBHOOK_URL

Step 3: Trigger manually or wait for cron

Go to Actions → stock_analysis → Run workflow


Method 2: Local / Docker

git clone https://github.com/ZhuLinsen/daily_stock_analysis
cd daily_stock_analysis
cp .env.example .env
# Edit .env with your keys
pip install -r requirements.txt
python main.py

Docker:

docker build -t stock-analysis .
docker run --env-file .env stock-analysis

Docker Compose:

docker-compose up -d

Configuration

.env File (Local)

# LLM - pick one or more
GEMINI_API_KEY=your_gemini_key
OPENAI_API_KEY=your_openai_key
OPENAI_BASE_URL=https://api.deepseek.com/v1
OPENAI_MODEL=deepseek-chat
AIHUBMIX_KEY=your_aihubmix_key

# Stock list (comma-separated)
STOCKS=600519,300750,AAPL,TSLA,00700.HK

# Notification
TELEGRAM_BOT_TOKEN=your_bot_token
TELEGRAM_CHAT_ID=your_chat_id

# Optional settings
REPORT_TYPE=full           # simple | full | brief
ANALYSIS_DELAY=10          # seconds between stocks (avoid rate limiting)
MAX_WORKERS=3              # concurrent analysis threads
SINGLE_STOCK_NOTIFY=false  # push each stock immediately when done
NEWS_MAX_AGE_DAYS=3        # ignore news older than N days

Multi-Channel LLM (Advanced)

LLM_CHANNELS=gemini,deepseek,claude
LLM_GEMINI_PROTOCOL=google
LLM_GEMINI_API_KEY=your_key
LLM_GEMINI_MODELS=gemini-2.0-flash,gemini-1.5-pro
LLM_GEMINI_ENABLED=true

LLM_DEEPSEEK_PROTOCOL=openai
LLM_DEEPSEEK_BASE_URL=https://api.deepseek.com/v1
LLM_DEEPSEEK_API_KEY=your_key
LLM_DEEPSEEK_MODELS=deepseek-chat
LLM_DEEPSEEK_ENABLED=true

Stock Grouping (Send Different Stocks to Different Emails)

STOCK_GROUP_1=600519,300750,000858
[email protected]

STOCK_GROUP_2=AAPL,TSLA,NVDA
[email protected]

Market Review Mode

MARKET_REVIEW=cn      # cn | us | both
# cn = A-share three-phase review strategy
# us = US Regime Strategy (risk-on/neutral/risk-off)
# both = both markets

Key Commands (CLI)

# Run full analysis immediately
python main.py

# Analyze specific stocks only
STOCKS=600519,AAPL python main.py

# Run web dashboard
python web_app.py
# Access at http://localhost:5000

# Run with Docker (env file)
docker run --env-file .env stock-analysis python main.py

# Run schedule mode (waits for cron, then runs)
SCHEDULE_RUN_IMMEDIATELY=true python main.py

GitHub Actions Workflow

The workflow file .github/workflows/stock_analysis.yml runs on schedule:

# Default schedule - customize in the workflow file
on:
  schedule:
    - cron: '30 1 * * 1-5'   # 9:30 AM CST (UTC+8) weekdays
  workflow_dispatch:          # manual trigger

To change schedule: Edit .github/workflows/stock_analysis.yml cron expression.

To add secrets via GitHub CLI:

gh secret set GEMINI_API_KEY --body "$GEMINI_API_KEY"
gh secret set STOCKS --body "600519,300750,AAPL,TSLA"
gh secret set TELEGRAM_BOT_TOKEN --body "$TG_TOKEN"
gh secret set TELEGRAM_CHAT_ID --body "$TG_CHAT_ID"

Code Examples

Programmatic Analysis (Python)

# Run analysis for specific stocks programmatically
import asyncio
from analyzer import StockAnalyzer

async def analyze():
    analyzer = StockAnalyzer()
    
    # Analyze a single A-share stock
    result = await analyzer.analyze_stock("600519")  # Moutai
    print(result['conclusion'])
    print(result['buy_price'])
    print(result['stop_loss'])
    print(result['target_price'])

asyncio.run(analyze())

Custom Notification Integration

from notifier import NotificationManager

notifier = NotificationManager()

# Send to Telegram
await notifier.send_telegram(
    token=os.environ['TELEGRAM_BOT_TOKEN'],
    chat_id=os.environ['TELEGRAM_CHAT_ID'],
    message="📈 Analysis complete\n600519: BUY at 1680, SL: 1620, TP: 1800"
)

# Send to Feishu webhook
await notifier.send_feishu(
    webhook_url=os.environ['FEISHU_WEBHOOK_URL'],
    content=analysis_report
)

Using the Agent API

import requests

# Ask the stock agent a strategy question
response = requests.post('http://localhost:5000/api/agent/chat', json={
    "message": "600519现在适合买入吗?用均线金叉策略分析",
    "stock_code": "600519",
    "strategy": "ma_crossover"  # ma_crossover, elliott_wave, chan_theory, etc.
})

print(response.json()['reply'])

Backtest Analysis Accuracy

import requests

# Trigger backtest for a stock
response = requests.post('http://localhost:5000/api/backtest', json={
    "stock_code": "600519",
    "days": 30  # evaluate last 30 days of AI predictions
})

result = response.json()
print(f"Direction accuracy: {result['direction_accuracy']}%")
print(f"Take-profit hit rate: {result['tp_hit_rate']}%")
print(f"Stop-loss hit rate: {result['sl_hit_rate']}%")

Import Stocks from Image (Vision LLM)

import requests

# Upload screenshot of stock list for AI extraction
with open('watchlist_screenshot.png', 'rb') as f:
    response = requests.post(
        'http://localhost:5000/api/stocks/import/image',
        files={'image': f}
    )

stocks = response.json()['extracted_stocks']
# Returns: [{"code": "600519", "name": "贵州茅台", "confidence": 0.98}, ...]

Web Dashboard Features

Start the web app:

python web_app.py
Route Feature
/ Today's analysis dashboard
/portfolio Holdings management, P&
how to use daily-stock-analysis

How to use daily-stock-analysis on Cursor

AI-first code editor with Composer

1

Prerequisites

Before installing skills in Cursor, ensure your development environment meets these requirements:

  • Cursor installed and configured on your development machine
  • Node.js version 16.0+ with npm package manager (verify with node --version)
  • Active project directory or workspace where you want to add daily-stock-analysis
2

Execute installation command

Execute the skills CLI command in your project's root directory to begin installation:

$npx skills add https://github.com/aradotso/trending-skills --skill daily-stock-analysis

The skills CLI fetches daily-stock-analysis from GitHub repository aradotso/trending-skills and configures it for Cursor.

3

Select Cursor when prompted

The CLI will show a list of available agents. Use arrow keys to navigate and space to select Cursor:

◆ Which agents do you want to install to?
│ ── Universal (.agents/skills) ── always included ────
│ • Amp
│ • Antigravity
│ • Cline
│ • Codex
│ ●Cursor(selected)
│ • Cursor
│ • Windsurf
4

Verify installation

Confirm successful installation by checking the skill directory location:

.cursor/skills/daily-stock-analysis

Reload or restart Cursor to activate daily-stock-analysis. Access the skill through slash commands (e.g., /daily-stock-analysis) or your agent's skill management interface.

Security & Verification Notice

We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.

Skills execute code in your development environment. Always verify the publisher's identity, review recent commits, and test in isolated environments before production deployment.

List & Monetize Your Skill

Submit your Claude Code skill and start earning

GET_STARTED →

Use Cases

Task Automation & Efficiency

Automate repetitive workflows and reduce manual effort

Example

Generate reports, summarize documents, draft communications

Save 3-5 hours per week on routine tasks

Knowledge Enhancement

Learn new skills, understand complex topics, get expert guidance

Example

Explain concepts, provide examples, suggest learning resources

Accelerate learning and skill development by 2x

Quality Improvement

Enhance output quality through reviews, suggestions, and refinements

Example

Review drafts, suggest improvements, catch errors

Improve work quality by 30-40% with less effort

Implementation Guide

Prerequisites

  • Claude Desktop or compatible AI client with skill support
  • Clear understanding of task or problem to solve
  • Willingness to iterate and refine outputs

Time Estimate

15-45 minutes depending on use case complexity

Installation Steps

  1. 1.Install skill using provided installation command
  2. 2.Test with simple use case relevant to your work
  3. 3.Evaluate output quality and relevance
  4. 4.Iterate on prompts to improve results
  5. 5.Integrate into regular workflow if valuable

Common Pitfalls

  • Expecting perfect results without iteration
  • Not providing enough context in prompts
  • Using skill for tasks outside its intended scope
  • Accepting outputs without review and validation

Best Practices

✓ Do

  • +Start with clear, specific prompts
  • +Provide relevant context and constraints
  • +Review and refine all outputs before using
  • +Iterate to improve output quality
  • +Document successful prompt patterns

✗ Don't

  • Don't use without understanding skill limitations
  • Don't skip validation of outputs
  • Don't share sensitive information in prompts
  • Don't expect skill to replace human judgment

💡 Pro Tips

  • Be specific about desired format and style
  • Ask for multiple options to choose from
  • Request explanations to understand reasoning
  • Combine AI efficiency with human expertise

When to Use This

✓ Use When

Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement.

✗ Avoid When

Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion.

Learning Path

  1. 1Familiarize yourself with skill capabilities and limitations
  2. 2Start with low-risk, non-critical tasks
  3. 3Progress to more complex and valuable use cases
  4. 4Build expertise through regular use and experimentation

Discussion

Product Hunt–style comments (not star reviews)
  • No comments yet — start the thread.
general reviews

Ratings

4.546 reviews
  • Ren Srinivasan· Dec 28, 2024

    daily-stock-analysis reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Aditi Abbas· Dec 28, 2024

    daily-stock-analysis has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Sophia Menon· Dec 16, 2024

    Useful defaults in daily-stock-analysis — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

  • Aditi Park· Dec 4, 2024

    Registry listing for daily-stock-analysis matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Aanya Ndlovu· Nov 23, 2024

    Useful defaults in daily-stock-analysis — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

  • Ren Malhotra· Nov 19, 2024

    I recommend daily-stock-analysis for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

  • Hana Choi· Nov 7, 2024

    Registry listing for daily-stock-analysis matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Sofia Li· Oct 26, 2024

    daily-stock-analysis reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Aanya Sanchez· Oct 14, 2024

    I recommend daily-stock-analysis for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

  • Soo Khanna· Oct 10, 2024

    Useful defaults in daily-stock-analysis — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

showing 1-10 of 46

1 / 5