← Back to Skills Marketplace
saebyeok-im

Equity Analyst

by Saebyeok-Im · GitHub ↗ · v1.0.7
cross-platform ⚠ suspicious
2352
Downloads
0
Stars
3
Active Installs
8
Versions
Install in OpenClaw
/install equity-analyst
Description
전문 투자 분석가 AI로, 한국 주식 종목의 재무제표, 뉴스, 차트를 분석하여 Investment Attractiveness Score (0-100)와 BUY/HOLD/AVOID 추천을 제공합니다. 네이버 금융 데이터를 사용하며, 프롬프트에 명시된 엄격한 우선순위(Financial > News > Chart)와 가중치를 따릅니다.
README (SKILL.md)

Equity Analyst Skill

This skill provides professional-grade equity analysis for Korean stocks listed on KRX. It follows a strict evaluation framework with Financial Fundamentals (50%), News & Outlook (25%), and Technical Chart (25%) priorities.

When to Use This Skill

  • User requests stock analysis with specific ticker or company name (e.g., "삼성전자 분석해줘", "SK하이닉스 투자 매력도 알려줘")
  • User asks for investment recommendation (BUY/HOLD/AVOID) with supporting reasoning
  • Need systematic, conservative, logic-driven evaluation based on financial metrics

Do NOT use for: Non-Korean stocks, cryptocurrency, or when user wants casual/opinion-based advice without rigorous framework.

Quick Start

  1. Identify the stock ticker (e.g., 005930 for 삼성전자, 000660 for SK하이닉스)
  2. Use browser tool to navigate to Naver Finance page: https://finance.naver.com/item/main.naver?code={ticker}
  3. Extract required data (see Data Requirements below)
  4. Apply evaluation framework (see Framework section)
  5. Generate structured report in specified format

Data Requirements

Collect the following data from Naver Finance main page:

Financial Metrics

  • PER (Price Earnings Ratio)
  • PBR (Price Book-value Ratio)
  • ROE (Return on Equity) - 지배주주 기준
  • Operating Margin (영업이익률)
  • Debt Ratio (부채비율)
  • Revenue Growth (매출 성장률) - recent multi-year trend (2024→2025 예상 사용)

News & Outlook (summary)

  • Recent major news headlines (last few days)
  • Earnings outlook (컨센서스, 예상)
  • Industry tailwinds/headwinds
  • Analyst sentiment changes

Technical/Chart Conditions (summary)

  • Trend direction (상승/횡보/하락)
  • Current price position relative to 52-week high/low
  • Volume characteristics (확장/수축/보통)
  • Any notable patterns (support/resistance, etc.)

Note: Bollinger Band and other complex indicators are NOT required. Keep chart description simple: trend + current state.

Evaluation Framework

Follow these steps EXACTLY in order:

STEP 1: FINANCIAL SCORE (50%)

Score each sub-category 0-100:

A. Valuation (PER, PBR) - Weight 30%

  • Low PER (\x3C industry avg) and PBR (\x3C 1) are positive
  • Extremely high PER (>40) is negative unless justified by exceptional growth
  • Output: ValuationScore

B. Profitability (ROE, Operating Margin) - Weight 30%

  • ROE \x3C 5%: critically weak
  • ROE 10%+: healthy
  • Stable operating margin above industry average: positive
  • Output: ProfitabilityScore

C. Growth (Revenue Growth) - Weight 25%

  • Sustained growth (>10%) is positive
  • Stagnation (\x3C3%) or decline: negative
  • Output: GrowthScore

D. Stability (Debt Ratio) - Weight 15%

  • Low debt (\x3C50%) is positive
  • High leverage (>100%) is negative
  • Output: StabilityScore

FinancialScore = Valuation×0.30 + Profitability×0.30 + Growth×0.25 + Stability×0.15

Special Rule: If BOTH ProfitabilityScore AND GrowthScore are below 30, cap FinancialScore at maximum 50 ( regardless of other scores ).

STEP 2: NEWS & OUTLOOK SCORE (25%)

Evaluate qualitative factors:

  • Earnings outlook strength
  • Product/service momentum
  • Analyst sentiment direction
  • Industry tailwinds vs headwinds

Rules:

  • Strong positive catalysts (new contracts, regulatory approval, market expansion) raise score
  • Neutral or "wait-and-see" tone: 40-55
  • Hype without financial backing: MUST NOT score high (max 60)
  • Negative catalysts ( lawsuits, customer loss, industry downturn) lower score

Output: NewsScore (0-100)

STEP 3: TECHNICAL / CHART SCORE (25%)

Evaluate timing and market behavior:

  • Trend direction (up/sideways/down)
  • Volume expansion/contraction
  • Signs of accumulation or distribution
  • Current price position (near support/resistance)

Rules:

  • Charts determine TIMING, not value
  • Strong fundamentals + weak charts = still low chart score
  • Technicals must NEVER override poor fundamentals
  • Focus on whether now is a good entry/exit timing based on chart alone

Output: ChartScore (0-100)

FINAL SCORE

FinalScore = (FinancialScore × 0.50) + (NewsScore × 0.25) + (ChartScore × 0.25)

Verdict Categories

  • BUY: 80–100 (strong conviction)
  • BUY_LEAN: 65–79 (cautious buy)
  • HOLD: 45–64 (wait/accumulate on dips)
  • AVOID: below 45 (too risky or unattractive)

Output Format

Return EXACTLY this structure:

1. Financial Breakdown
- ValuationScore: [0-100]
- ProfitabilityScore: [0-100]
- GrowthScore: [0-100]
- StabilityScore: [0-100]
- FinancialScore: [0-100]

2. NewsScore: [0-100]

3. ChartScore: [0-100]

4. Final Investment Attractiveness Score: XX / 100

5. Verdict: [BUY|BUY_LEAN|HOLD|AVOID]

6. Reasoning Summary:
[One paragraph explaining why the score was assigned, respecting priority order: Financial > News > Chart. Be conservative, logic-driven. Do NOT give investment advice.]

Examples

Example 1: SK하이닉스 (from real data)

1. Financial Breakdown
- ValuationScore: 70
- ProfitabilityScore: 95
- GrowthScore: 95
- StabilityScore: 75
- FinancialScore: 84.5

2. NewsScore: 70

3. ChartScore: 55

4. Final Investment Attractiveness Score: 73.5 / 100

5. Verdict: BUY_LEAN

6. Reasoning Summary:
SK하이닉스는 재무제표가 매우 강력합니다. ROE 43.20%, 영업이익률 46.67%, 43.7%의 매출 성장률은 업계 최상위 수준이며, PER 17.11배는 상대적으로 저평가되어 있습니다. 부채비율 64.12%는 반도체 업체로서 적정범위 내에 있습니다. 뉴스 측면에서는 HBM4 공급과 AI memory 수요 증가가 주가에 긍정적이나, 외국인 매도세가 일부 부정적 영향을 미치고 있습니다. 기술적 측면에서는 장기 상승추세는 유지되고 있으나, 단기적으로 조정 국면에 있어 매수 타이밍에 신중을 기할 필요가 있습니다. 재무적 우수성과 성장성에도 불구, 단기 차트의 불확실성으로 인해 "buy with caution" 상태로 평가됩니다.

Example 2: Weak Fundamentals

... (similar structure) ...
ValuationScore: 25 (PER 150, PBR 8.5 - extremely overvalued)
ProfitabilityScore: 20 (ROE 2%, margin negative)
...
Verdict: AVOID
...

Scripts

The skill includes these scripts:

  • scripts/analyze.py - Main analysis engine that takes extracted data and computes scores
  • scripts/scrape_naver.py - Optional: Data extraction from Naver Finance page

Use these to automate repetitive tasks.

References

Detailed evaluation criteria and examples: references/framework.md

Notes

  • This skill is for Korean stocks only (KRX)
  • Data source: Naver Finance (real-time snapshot, not delayed)
  • Scores are relative within KRX universe
  • Framework is conservative: hype without earnings does NOT get high scores
  • Technical score is about timing only, not quality

Troubleshooting

Missing data: If any metric is unavailable, treat as neutral (score 50) but note in reasoning.

Conflicting signals: Follow priority order: Financial > News > Chart. Low financial score can NOT be compensated by good news or chart.

Extreme valuation: PER > 50 or PBR > 5 should trigger heavy discount unless growth justifies.

Usage Guidance
What to consider before installing/running this skill: - Functionality vs environment: The skill's purpose (Naver-based equity scoring) matches the code, but several scripts expect a Windows developer environment (hardcoded Python path C:/Users/IM/...) and an OpenClaw browser profile. If your agent runs on a different OS or lacks that Python path, the scripts will fail or attempt fallback behavior. - Local file access: Some scripts read or write absolute user-specific paths (e.g., C:/Users/IM/.openclaw/workspace/test_morning_report.json, morning_report_output.txt). If those files exist, the skill may process them; if not, it may error. Consider inspecting and removing or editing these paths before use. - Shell execution & browser snapshots: The skill uses subprocess.run (often with shell=True) to call external commands (openclaw browser, snapshot). That allows the skill to execute arbitrary shell commands if modified; review the scripts before granting runtime permissions. Also, browser snapshots parse raw page contents — snapshots could include sensitive info depending on your browser state. - Outbound actions not declared: Scripts mention sending reports to LINE but no LINE token is requested in metadata. If you supply messaging tokens later (or modify scripts), the skill could send data externally. Confirm any external webhook/API configuration and audit where credentials would be stored. - Suggested mitigations: (1) Run the skill in a sandboxed environment first; (2) Inspect and, if needed, edit scripts to remove hardcoded absolute paths and replace the hardcoded python executable with a generic 'python' on PATH; (3) Remove or implement safe handling for any report-sending code (LINE) and ensure any tokens are provided explicitly and stored securely; (4) If you don't want the skill to read local files, search the code for references to user-specific paths and remove them. Overall: the skill appears to implement its stated analysis framework (not obviously malicious), but environment-specific hardcoded paths, local-file access, and shell command usage are inconsistent with the clean SKILL.md metadata and raise privacy/operational concerns — review and sanitize before running in production.
Capability Analysis
Type: OpenClaw Skill Name: equity-analyst Version: 1.0.7 The skill is classified as suspicious due to the presence of high-risk capabilities, specifically the use of `subprocess.run` for shell command execution and `requests` for direct network access. While these capabilities are plausibly needed for the stated purpose of scraping financial data from Naver Finance and executing internal analysis scripts, the explicit threshold for 'suspicious' includes such risky capabilities even when aligned with the stated purpose. The scripts `scripts/daily_popular_report.py`, `scripts/morning_report.py`, and `scripts/scrape_naver.py` utilize these methods to interact with `finance.naver.com` and `m.stock.naver.com`.
Capability Assessment
Purpose & Capability
The name/description (Korean equity analysis using Naver Finance) matches the included scraper and analyzer scripts. However, the package contains Windows-specific hardcoded items (skill.yaml 'bins' pointing to C:/Users/IM/.../Python310/python.exe and multiple scripts calling that exact python executable), plus references to sending reports to LINE and to an 'openclaw' browser profile. Those items are plausible for a desktop cron/report workflow but are environment-specific and not declared in SKILL.md metadata (e.g., no required binaries or credentials listed).
Instruction Scope
SKILL.md instructs the agent to use a browser to visit Naver Finance and extract specified fields — consistent with the scripts. But the scripts also: (1) use subprocess.run(shell=True) to call 'openclaw browser' and other commands; (2) create/read local files using absolute user-specific paths (e.g., C:/Users/IM/.openclaw/workspace/test_morning_report.json, morning_report_output.txt); (3) take browser snapshots and parse raw page output; and (4) mention sending reports to LINE. SKILL.md does not warn that the skill will read those local paths or require access to an OpenClaw browser profile. These behaviors expand runtime scope (local filesystem access, shell command execution, full-page scraping) beyond the minimal description.
Install Mechanism
There is no install spec (instruction-only), which is low risk in terms of remote code download. However, the repository includes executable scripts that will run when invoked. No remote downloads or extraction steps are present in the manifest.
Credentials
The skill declares no required env vars or credentials, and that's consistent with most code. But scripts reference external services and actions that typically require credentials or environment setup (sending to LINE, using an 'openclaw' browser profile). The explicit hardcoded Python path in skill.yaml and scripts is disproportionate and brittle — it implies expectation of a specific user environment. The skill may also read user workspace files if they exist (hardcoded test paths), which is a privacy risk not reflected in the declared requirements.
Persistence & Privilege
The skill does not request always:true, does not modify other skills, and does not declare persistent background behavior. It will, if invoked, run scripts that open browser pages, perform web requests, and read/write files in the working directory; these are normal for a scraper but are not privileged by the registry metadata.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install equity-analyst
  3. After installation, invoke the skill by name or use /equity-analyst
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.7
- Introduced new reporting scripts: `daily_popular_report.py`, `morning_report.py`, and `quick_report.py` for automated analysis tasks. - Added data source files: `data.json` and `data_utf8.json` to support reporting and analysis functions. - No changes made to the evaluation framework or usage instructions.
v1.0.6
- No functional or documentation changes in this release. - Internal version bump only.
v1.0.5
- Removed explicit requirement for Python binaries in skill metadata. - No user-facing features were changed; framework, usage, and evaluation criteria remain the same. - Documentation updated for metadata consistency.
v1.0.4
- No user-facing changes. Internal update to metadata only; skill logic and documentation remain unchanged.
v1.0.3
- Added new manifest file: skill.yaml - No changes to core logic or evaluation framework - No user-facing behavior changes; documentation remains the same
v1.0.2
- Added new script: `scripts/scrape_naver.py` for data extraction from Naver Finance pages. - Updated documentation (SKILL.md) to include the new script and clarify its purpose as optional automation for data collection.
v1.0.1
- Added new metadata file: `_meta.json` for skill management and platform integration. - No changes to skill logic or documentation.
v1.0.0
주식 분석 스킬
Metadata
Slug equity-analyst
Version 1.0.7
License
All-time Installs 4
Active Installs 3
Total Versions 8
Frequently Asked Questions

What is Equity Analyst?

전문 투자 분석가 AI로, 한국 주식 종목의 재무제표, 뉴스, 차트를 분석하여 Investment Attractiveness Score (0-100)와 BUY/HOLD/AVOID 추천을 제공합니다. 네이버 금융 데이터를 사용하며, 프롬프트에 명시된 엄격한 우선순위(Financial > News > Chart)와 가중치를 따릅니다. It is an AI Agent Skill for Claude Code / OpenClaw, with 2352 downloads so far.

How do I install Equity Analyst?

Run "/install equity-analyst" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Equity Analyst free?

Yes, Equity Analyst is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Equity Analyst support?

Equity Analyst is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Equity Analyst?

It is built and maintained by Saebyeok-Im (@saebyeok-im); the current version is v1.0.7.

💬 Comments