Crypto Market Analyzer
This skill provides automated cryptocurrency market analysis for Bitcoin (BTC) and Ethereum (ETH).
What It Does
- Fetches market data from Binance public API (no authentication required)
- Analyzes 4-hour timeframe (last 24 hours)
- Analyzes daily timeframe (last 30 days)
- Calculates technical indicators:
- RSI (Relative Strength Index, 14-period)
- Simple Moving Averages (20-day and 50-day)
- Support and resistance levels
- Price change (24h and 7d)
- Provides sentiment analysis (Bullish/Bearish/Neutral) with confidence level
- Generates structured reports with reasoning
Usage
Generate Market Report
Run the analysis script:
python3 scripts/fetch_crypto_data.py
Output format (JSON):
{
"BTCUSDT": {
"indicators": {
"current_price": 43250.50,
"sma_20": 42800.00,
"sma_50": 41500.00,
"rsi": 58.3,
"support": 42000.00,
"resistance": 44000.00,
"price_change_24h": 2.5,
"price_change_7d": 5.8
},
"sentiment": {
"sentiment": "Bullish (็ๆถจ)",
"confidence": 0.75,
"reasons": [
"RSI (58.3) shows bullish momentum",
"Price above both SMAs (20d and 50d) - bullish trend",
"Strong 24h gain (2.50%) - bullish"
]
},
"timestamp": "2026-02-11T14:38:00"
},
"ETHUSDT": { ... }
}
Generate Human-Readable Report
To create a user-friendly report, use the JSON output and format it:
๐ ๅ ๅฏ่ดงๅธๅธๅบๅๆๆฅๅ
็ๆๆถ้ด: 2026-02-11 14:38
## ๆฏ็นๅธ (BTC)
๐ฐ ๅฝๅไปทๆ ผ: $43,250.50
๐ 24hๆถจ่ท: +2.5%
๐ 7ๆฅๆถจ่ท: +5.8%
### ๆๆฏๆๆ
- RSI (14): 58.3
- SMA 20: $42,800
- SMA 50: $41,500
- ๆฏๆไฝ: $42,000
- ้ปๅไฝ: $44,000
### ๅธๅบๅคๆญ
๐ฏ ่ถๅฟ: ็ๆถจ (Bullish)
๐ ็ฝฎไฟกๅบฆ: 75%
๐ ๅๆ็็ฑ:
- RSI (58.3) ๆพ็คบๅคๅคดๅจ่ฝ
- ไปทๆ ผไฝไบ20ๆฅๅ50ๆฅๅ็บฟไธๆน - ไธๅ่ถๅฟ
- 24ๅฐๆถๆถจๅน
ๅผบๅฒ (2.50%) - ๅคๅคดไฟกๅท
## ไปฅๅคชๅ (ETH)
...
Scheduled Execution
This skill is designed for daily automated execution at 10:00 AM (UTC+8).
To schedule via OpenClaw cron:
# Create a cron job to run daily at 10:00 AM UTC+8
# This corresponds to 02:00 UTC
The cron job should:
- Execute the analysis script
- Parse the JSON output
- Format a human-readable report
- Send the report to the user via messaging channel
Technical Details
Data Source
- API: Binance Public API
- Endpoint:
/api/v3/klines - Rate Limits: 1200 request weight per minute (well within limits)
- No Authentication Required: Public market data
Timeframes
- 4h: 6 candles (24 hours of data)
- 1d: 30 candles (30 days of data)
Indicators Explained
- RSI: Momentum oscillator (0-100). <30 = oversold, >70 = overbought
- SMA 20/50: Trend indicators. Price > both SMAs = bullish
- Support/Resistance: Recent low/high averages
- Price Change: Percentage change over specified period
Sentiment Logic
Sentiment is determined by combining multiple signals:
- RSI position (oversold/overbought/momentum)
- Price vs moving averages (trend direction)
- Recent price changes (momentum strength)
Each signal contributes to a bullish/bearish score, which determines:
- Overall sentiment (Bullish/Bearish/Neutral)
- Confidence level (0.3 to 0.9)
- Detailed reasoning
Extending the Skill
To add more cryptocurrencies:
Edit scripts/fetch_crypto_data.py and modify the symbols list:
symbols = ["BTCUSDT", "ETHUSDT", "SOLUSDT", "ADAUSDT"]
To add more indicators:
Extend the calculate_technical_indicators() function with additional calculations (MACD, Bollinger Bands, etc.).
To customize sentiment logic:
Modify the analyze_sentiment() function to adjust weighting and thresholds.






