Import 9 alphaear finance skills
- alphaear-deepear-lite: DeepEar Lite API integration - alphaear-logic-visualizer: Draw.io XML finance diagrams - alphaear-news: Real-time finance news (10+ sources) - alphaear-predictor: Kronos time-series forecasting - alphaear-reporter: Professional financial reports - alphaear-search: Web search + local RAG - alphaear-sentiment: FinBERT/LLM sentiment analysis - alphaear-signal-tracker: Signal evolution tracking - alphaear-stock: A-Share/HK/US stock data Updates: - All scripts updated to use universal .env path - Added JINA_API_KEY, LLM_*, DEEPSEEK_API_KEY to .env.example - Updated load_dotenv() to use ~/.config/opencode/.env
This commit is contained in:
57
skills/alphaear-sentiment/SKILL.md
Normal file
57
skills/alphaear-sentiment/SKILL.md
Normal file
@@ -0,0 +1,57 @@
|
||||
---
|
||||
name: alphaear-sentiment
|
||||
description: Analyze finance text sentiment using FinBERT or LLM. Use when the user needs to determine the sentiment (positive/negative/neutral) and score of financial text markets.
|
||||
---
|
||||
|
||||
# AlphaEar Sentiment Skill
|
||||
|
||||
## Overview
|
||||
|
||||
This skill provides sentiment analysis capabilities tailored for financial texts, supporting both FinBERT (local model) and LLM-based analysis modes.
|
||||
|
||||
## Capabilities
|
||||
|
||||
## Capabilities
|
||||
|
||||
### 1. Analyze Sentiment (FinBERT / Local)
|
||||
|
||||
Use `scripts/sentiment_tools.py` for high-speed, local sentiment analysis using FinBERT.
|
||||
|
||||
**Key Methods:**
|
||||
|
||||
- `analyze_sentiment(text)`: Get sentiment score and label using localized FinBERT model.
|
||||
- **Returns**: `{'score': float, 'label': str, 'reason': str}`.
|
||||
- **Score Range**: -1.0 (Negative) to 1.0 (Positive).
|
||||
- `batch_update_news_sentiment(source, limit)`: Batch process unanalyzed news in the database (FinBERT only).
|
||||
|
||||
### 2. Analyze Sentiment (LLM / Agentic)
|
||||
|
||||
For higher accuracy or reasoning capabilities, **YOU (the Agent)** should perform the analysis using the Prompt below, calling the LLM directly, and then update the database if necessary.
|
||||
|
||||
#### Sentiment Analysis Prompt
|
||||
|
||||
Use this prompt to analyze financial texts if the local tool is insufficient or if reasoning is required.
|
||||
|
||||
```markdown
|
||||
请分析以下金融/新闻文本的情绪极性。
|
||||
返回严格的 JSON 格式:
|
||||
{"score": <float: -1.0到1.0>, "label": "<positive/negative/neutral>", "reason": "<简短理由>"}
|
||||
|
||||
文本: {text}
|
||||
```
|
||||
|
||||
**Scoring Guide:**
|
||||
- **Positive (0.1 to 1.0)**: Optimistic news, profit growth, policy support, etc.
|
||||
- **Negative (-1.0 to -0.1)**: Losses, sanctions, price drops, pessimism.
|
||||
- **Neutral (-0.1 to 0.1)**: Factual reporting, sideways movement, ambiguous impact.
|
||||
|
||||
#### Helper Methods
|
||||
- `update_single_news_sentiment(id, score, reason)`: Use this to save your manual analysis to the database.
|
||||
|
||||
## Dependencies
|
||||
|
||||
- `torch` (for FinBERT)
|
||||
- `transformers` (for FinBERT)
|
||||
- `sqlite3` (built-in)
|
||||
|
||||
Ensure `DatabaseManager` is initialized correctly.
|
||||
Reference in New Issue
Block a user