xai-crypto-sentiment by adaptationio/skrillz
npx skills add https://github.com/adaptationio/skrillz --skill xai-crypto-sentiment利用 Grok 的原生 X 集成,获取来自 Crypto Twitter (CT) 的实时加密货币情绪。
import os
from openai import OpenAI
client = OpenAI(
api_key=os.getenv("XAI_API_KEY"),
base_url="https://api.x.ai/v1"
)
def get_crypto_sentiment(coin: str) -> dict:
"""获取加密货币的实时情绪。"""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": f"""分析 Crypto Twitter 上关于 {coin} 的情绪。
返回 JSON 格式:
{{
"coin": "{coin}",
"sentiment": {{
"overall": "bullish" | "bearish" | "neutral",
"score": -1.0 to 1.0,
"confidence": 0.0 to 1.0
}},
"fear_greed": "extreme fear" | "fear" | "neutral" | "greed" | "extreme greed",
"metrics": {{
"bullish_percent": 0-100,
"bearish_percent": 0-100,
"mention_volume": "high" | "medium" | "low",
"trend": "increasing" | "stable" | "decreasing"
}},
"whale_mentions": {{
"detected": true/false,
"sentiment": "accumulating" | "distributing" | "neutral",
"notable": [...]
}},
"narratives": ["narrative1", "narrative2"],
"fud_alerts": [...],
"fomo_level": "high" | "medium" | "low" | "none"
}}"""
}]
)
return response.choices[0].message.content
# 示例
sentiment = get_crypto_sentiment("Bitcoin")
print(sentiment)
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
CRYPTO_INFLUENCERS = [
# 比特币极端主义者
"saborskip",
"michael_saylor",
# 分析师
"CryptoCapo_",
"Pentosh1",
"ColdBloodShill",
# 新闻
"WatcherGuru",
"whale_alert",
# DeFi
"DefiIgnas",
"Route2FI",
# 山寨币
"AltcoinGordon",
"CryptoKaleo"
]
def bitcoin_sentiment() -> dict:
"""获取全面的比特币情绪分析。"""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": """分析 Crypto Twitter 上的比特币情绪。
返回 JSON 格式:
{
"bitcoin": {
"sentiment_score": -1 to 1,
"fear_greed_index": 0-100,
"fear_greed_label": "...",
"trend": "bullish/bearish/consolidating"
},
"market_structure": {
"support_levels_mentioned": [...],
"resistance_levels_mentioned": [...],
"key_levels": [...]
},
"whale_activity": {
"accumulation_signals": true/false,
"distribution_signals": true/false,
"notable_moves": [...]
},
"narratives": {
"bullish": [...],
"bearish": [...]
},
"influencer_consensus": {
"bullish_count": n,
"bearish_count": n,
"key_calls": [...]
},
"on_chain_mentions": {
"exchange_flows": "inflows/outflows/neutral",
"wallet_activity": "..."
},
"macro_sentiment": {
"correlation_to_stocks": "...",
"fed_mentions": "...",
"institutional_interest": "..."
}
}"""
}]
)
return response.choices[0].message.content
def detect_altseason() -> dict:
"""检测山寨币季节是否正在形成。"""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": """分析 Crypto Twitter 上的山寨币季节信号。
返回 JSON 格式:
{
"altseason_status": "active" | "emerging" | "not present",
"confidence": 0 to 1,
"signals": {
"btc_dominance_sentiment": "...",
"altcoin_volume": "high/medium/low",
"rotation_patterns": "...",
"new_narratives": [...]
},
"hot_sectors": [
{"sector": "...", "sentiment": ..., "top_coins": [...]}
],
"coins_trending": [
{"coin": "...", "sentiment": ..., "catalyst": "..."}
],
"risk_level": "high/medium/low",
"recommendation": "..."
}"""
}]
)
return response.choices[0].message.content
def analyze_token(token: str, chain: str = None) -> dict:
"""分析特定代币的情绪。"""
chain_context = f" 在 {chain} 上" if chain else ""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": f"""分析 Crypto Twitter 上关于 {token}{chain_context} 的情绪。
返回 JSON 格式:
{{
"token": "{token}",
"chain": "{chain or 'unknown'}",
"sentiment": {{
"score": -1 to 1,
"label": "...",
"volume": "high/medium/low"
}},
"community_health": {{
"engagement": "high/medium/low",
"holder_sentiment": "...",
"developer_activity_mentions": "..."
}},
"narratives": [...],
"catalysts": {{
"upcoming": [...],
"recent": [...]
}},
"risks": {{
"fud_topics": [...],
"concerns_raised": [...],
"rug_risk_mentions": true/false
}},
"influencer_mentions": [...],
"comparison_to_competitors": "..."
}}"""
}]
)
return response.choices[0].message.content
def defi_protocol_sentiment(protocol: str) -> dict:
"""分析 DeFi 协议的情绪。"""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": f"""分析 Crypto Twitter 上关于 {protocol} DeFi 协议的情绪。
返回 JSON 格式:
{{
"protocol": "{protocol}",
"sentiment": {{
"score": -1 to 1,
"trend": "improving/declining/stable"
}},
"tvl_sentiment": "growing/stable/declining concern",
"security_mentions": {{
"concerns": [...],
"audits_mentioned": [...],
"exploit_risk_perception": "high/medium/low"
}},
"yield_sentiment": "attractive/fair/unattractive",
"community_growth": "...",
"governance_sentiment": "...",
"competitors_mentioned": [...]
}}"""
}]
)
return response.choices[0].message.content
def nft_sentiment(collection: str = None) -> dict:
"""分析 NFT 市场情绪。"""
target = f"{collection} 系列" if collection else "NFT 市场"
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": f"""分析 Crypto Twitter 上关于 {target} 的情绪。
返回 JSON 格式:
{{
"target": "{collection or 'NFT Market'}",
"sentiment": {{
"score": -1 to 1,
"market_phase": "bull/bear/recovery/mania"
}},
"volume_sentiment": "high/medium/low",
"floor_price_sentiment": "stable/rising/falling concern",
"trending_collections": [...],
"whale_activity": {{
"notable_buys": [...],
"notable_sales": [...]
}},
"narratives": [...],
"mint_sentiment": "hot/cooling/cold"
}}"""
}]
)
return response.choices[0].message.content
def monitor_whale_alerts() -> dict:
"""监控 CT 上关于巨鲸活动的提及。"""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": """在 Crypto Twitter 上搜索最近的巨鲸警报和大额交易。
重点关注 @whale_alert 和类似账户。
返回 JSON 格式:
{
"timestamp": "...",
"recent_whale_moves": [
{
"coin": "...",
"amount_usd": "...",
"direction": "exchange_inflow/exchange_outflow/wallet_transfer",
"interpretation": "bullish/bearish/neutral",
"source": "..."
}
],
"exchange_flow_summary": {
"net_flow": "inflows/outflows/balanced",
"interpretation": "..."
},
"accumulation_signals": [...],
"distribution_signals": [...],
"notable_wallet_activity": [...]
}"""
}]
)
return response.choices[0].message.content
def detect_fomo_fud(coin: str) -> dict:
"""检测加密货币的 FOMO 或 FUD 模式。"""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": f"""分析 Crypto Twitter 上关于 {coin} 的 FOMO 和 FUD 信号。
返回 JSON 格式:
{{
"coin": "{coin}",
"fomo_analysis": {{
"level": "extreme/high/moderate/low/none",
"triggers": [...],
"warning_signs": [...],
"sustainability": "likely/unlikely"
}},
"fud_analysis": {{
"level": "extreme/high/moderate/low/none",
"sources": [...],
"legitimacy": "valid concerns/coordinated/mixed",
"topics": [...]
}},
"manipulation_signals": {{
"detected": true/false,
"type": "pump/dump/coordinated/organic",
"evidence": [...]
}},
"contrarian_signal": {{
"extreme_fear": true/false,
"extreme_greed": true/false,
"actionable": "..."
}}
}}"""
}]
)
return response.choices[0].message.content
def crypto_market_dashboard() -> dict:
"""获取整体加密货币市场情绪仪表板。"""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": """创建一个全面的 Crypto Twitter 市场仪表板。
返回 JSON 格式:
{
"timestamp": "...",
"market_sentiment": {
"overall": -1 to 1,
"fear_greed": 0-100,
"trend": "bullish/bearish/neutral"
},
"bitcoin": {
"sentiment": ...,
"key_levels": [...]
},
"ethereum": {
"sentiment": ...,
"key_topics": [...]
},
"top_trending_coins": [
{"coin": "...", "sentiment": ..., "reason": "..."}
],
"sector_performance": [
{"sector": "L1/L2/DeFi/NFT/Meme", "sentiment": ...}
],
"hot_narratives": [...],
"risk_alerts": [...],
"whale_summary": "...",
"recommended_focus": [...]
}"""
}]
)
return response.choices[0].message.content
# 关注有历史的账户,而不是新账户的拉盘行为
"关注发帖历史一致、注册时间超过 6 个月的账户"
# 检测潜在的拉高出货计划
"标记任何来自新账户的协同发帖模式或交易量突然激增"
xai-stock-sentiment - 股票分析xai-x-search - 原始 X 搜索xai-sentiment - 通用情绪分析xai-financial-integration - 价格数据集成每周安装数
52
代码仓库
GitHub 星标数
5
首次出现
2026年1月24日
安全审计
安装于
opencode42
gemini-cli40
github-copilot38
openclaw38
codex37
cursor37
Real-time cryptocurrency sentiment from Crypto Twitter (CT) using Grok's native X integration.
import os
from openai import OpenAI
client = OpenAI(
api_key=os.getenv("XAI_API_KEY"),
base_url="https://api.x.ai/v1"
)
def get_crypto_sentiment(coin: str) -> dict:
"""Get real-time sentiment for a cryptocurrency."""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": f"""Analyze Crypto Twitter sentiment for {coin}.
Return JSON:
{{
"coin": "{coin}",
"sentiment": {{
"overall": "bullish" | "bearish" | "neutral",
"score": -1.0 to 1.0,
"confidence": 0.0 to 1.0
}},
"fear_greed": "extreme fear" | "fear" | "neutral" | "greed" | "extreme greed",
"metrics": {{
"bullish_percent": 0-100,
"bearish_percent": 0-100,
"mention_volume": "high" | "medium" | "low",
"trend": "increasing" | "stable" | "decreasing"
}},
"whale_mentions": {{
"detected": true/false,
"sentiment": "accumulating" | "distributing" | "neutral",
"notable": [...]
}},
"narratives": ["narrative1", "narrative2"],
"fud_alerts": [...],
"fomo_level": "high" | "medium" | "low" | "none"
}}"""
}]
)
return response.choices[0].message.content
# Example
sentiment = get_crypto_sentiment("Bitcoin")
print(sentiment)
CRYPTO_INFLUENCERS = [
# Bitcoin Maxis
"saborskip",
"michael_saylor",
# Analysts
"CryptoCapo_",
"Pentosh1",
"ColdBloodShill",
# News
"WatcherGuru",
"whale_alert",
# DeFi
"DefiIgnas",
"Route2FI",
# Altcoins
"AltcoinGordon",
"CryptoKaleo"
]
def bitcoin_sentiment() -> dict:
"""Get comprehensive Bitcoin sentiment analysis."""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": """Analyze Bitcoin sentiment on Crypto Twitter.
Return JSON:
{
"bitcoin": {
"sentiment_score": -1 to 1,
"fear_greed_index": 0-100,
"fear_greed_label": "...",
"trend": "bullish/bearish/consolidating"
},
"market_structure": {
"support_levels_mentioned": [...],
"resistance_levels_mentioned": [...],
"key_levels": [...]
},
"whale_activity": {
"accumulation_signals": true/false,
"distribution_signals": true/false,
"notable_moves": [...]
},
"narratives": {
"bullish": [...],
"bearish": [...]
},
"influencer_consensus": {
"bullish_count": n,
"bearish_count": n,
"key_calls": [...]
},
"on_chain_mentions": {
"exchange_flows": "inflows/outflows/neutral",
"wallet_activity": "..."
},
"macro_sentiment": {
"correlation_to_stocks": "...",
"fed_mentions": "...",
"institutional_interest": "..."
}
}"""
}]
)
return response.choices[0].message.content
def detect_altseason() -> dict:
"""Detect if altcoin season is emerging."""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": """Analyze Crypto Twitter for altcoin season signals.
Return JSON:
{
"altseason_status": "active" | "emerging" | "not present",
"confidence": 0 to 1,
"signals": {
"btc_dominance_sentiment": "...",
"altcoin_volume": "high/medium/low",
"rotation_patterns": "...",
"new_narratives": [...]
},
"hot_sectors": [
{"sector": "...", "sentiment": ..., "top_coins": [...]}
],
"coins_trending": [
{"coin": "...", "sentiment": ..., "catalyst": "..."}
],
"risk_level": "high/medium/low",
"recommendation": "..."
}"""
}]
)
return response.choices[0].message.content
def analyze_token(token: str, chain: str = None) -> dict:
"""Analyze sentiment for a specific token."""
chain_context = f" on {chain}" if chain else ""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": f"""Analyze Crypto Twitter sentiment for {token}{chain_context}.
Return JSON:
{{
"token": "{token}",
"chain": "{chain or 'unknown'}",
"sentiment": {{
"score": -1 to 1,
"label": "...",
"volume": "high/medium/low"
}},
"community_health": {{
"engagement": "high/medium/low",
"holder_sentiment": "...",
"developer_activity_mentions": "..."
}},
"narratives": [...],
"catalysts": {{
"upcoming": [...],
"recent": [...]
}},
"risks": {{
"fud_topics": [...],
"concerns_raised": [...],
"rug_risk_mentions": true/false
}},
"influencer_mentions": [...],
"comparison_to_competitors": "..."
}}"""
}]
)
return response.choices[0].message.content
def defi_protocol_sentiment(protocol: str) -> dict:
"""Analyze sentiment for a DeFi protocol."""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": f"""Analyze Crypto Twitter sentiment for {protocol} DeFi protocol.
Return JSON:
{{
"protocol": "{protocol}",
"sentiment": {{
"score": -1 to 1,
"trend": "improving/declining/stable"
}},
"tvl_sentiment": "growing/stable/declining concern",
"security_mentions": {{
"concerns": [...],
"audits_mentioned": [...],
"exploit_risk_perception": "high/medium/low"
}},
"yield_sentiment": "attractive/fair/unattractive",
"community_growth": "...",
"governance_sentiment": "...",
"competitors_mentioned": [...]
}}"""
}]
)
return response.choices[0].message.content
def nft_sentiment(collection: str = None) -> dict:
"""Analyze NFT market sentiment."""
target = f"the {collection} collection" if collection else "the NFT market"
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": f"""Analyze Crypto Twitter sentiment for {target}.
Return JSON:
{{
"target": "{collection or 'NFT Market'}",
"sentiment": {{
"score": -1 to 1,
"market_phase": "bull/bear/recovery/mania"
}},
"volume_sentiment": "high/medium/low",
"floor_price_sentiment": "stable/rising/falling concern",
"trending_collections": [...],
"whale_activity": {{
"notable_buys": [...],
"notable_sales": [...]
}},
"narratives": [...],
"mint_sentiment": "hot/cooling/cold"
}}"""
}]
)
return response.choices[0].message.content
def monitor_whale_alerts() -> dict:
"""Monitor whale activity mentions on CT."""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": """Search Crypto Twitter for recent whale alerts and large transactions.
Focus on @whale_alert and similar accounts.
Return JSON:
{
"timestamp": "...",
"recent_whale_moves": [
{
"coin": "...",
"amount_usd": "...",
"direction": "exchange_inflow/exchange_outflow/wallet_transfer",
"interpretation": "bullish/bearish/neutral",
"source": "..."
}
],
"exchange_flow_summary": {
"net_flow": "inflows/outflows/balanced",
"interpretation": "..."
},
"accumulation_signals": [...],
"distribution_signals": [...],
"notable_wallet_activity": [...]
}"""
}]
)
return response.choices[0].message.content
def detect_fomo_fud(coin: str) -> dict:
"""Detect FOMO or FUD patterns for a cryptocurrency."""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": f"""Analyze Crypto Twitter for FOMO and FUD signals around {coin}.
Return JSON:
{{
"coin": "{coin}",
"fomo_analysis": {{
"level": "extreme/high/moderate/low/none",
"triggers": [...],
"warning_signs": [...],
"sustainability": "likely/unlikely"
}},
"fud_analysis": {{
"level": "extreme/high/moderate/low/none",
"sources": [...],
"legitimacy": "valid concerns/coordinated/mixed",
"topics": [...]
}},
"manipulation_signals": {{
"detected": true/false,
"type": "pump/dump/coordinated/organic",
"evidence": [...]
}},
"contrarian_signal": {{
"extreme_fear": true/false,
"extreme_greed": true/false,
"actionable": "..."
}}
}}"""
}]
)
return response.choices[0].message.content
def crypto_market_dashboard() -> dict:
"""Get overall crypto market sentiment dashboard."""
response = client.chat.completions.create(
model="grok-4-1-fast",
messages=[{
"role": "user",
"content": """Create a comprehensive Crypto Twitter market dashboard.
Return JSON:
{
"timestamp": "...",
"market_sentiment": {
"overall": -1 to 1,
"fear_greed": 0-100,
"trend": "bullish/bearish/neutral"
},
"bitcoin": {
"sentiment": ...,
"key_levels": [...]
},
"ethereum": {
"sentiment": ...,
"key_topics": [...]
},
"top_trending_coins": [
{"coin": "...", "sentiment": ..., "reason": "..."}
],
"sector_performance": [
{"sector": "L1/L2/DeFi/NFT/Meme", "sentiment": ...}
],
"hot_narratives": [...],
"risk_alerts": [...],
"whale_summary": "...",
"recommended_focus": [...]
}"""
}]
)
return response.choices[0].message.content
# Focus on accounts with history, not fresh accounts pumping
"Focus on accounts older than 6 months with consistent posting history"
# Detect potential pump and dump schemes
"Flag any coordinated posting patterns or sudden volume spikes from new accounts"
xai-stock-sentiment - Stock analysisxai-x-search - Raw X searchxai-sentiment - General sentimentxai-financial-integration - Price data integrationWeekly Installs
52
Repository
GitHub Stars
5
First Seen
Jan 24, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
opencode42
gemini-cli40
github-copilot38
openclaw38
codex37
cursor37
专业SEO审计工具:全面网站诊断、技术SEO优化与页面分析指南
68,800 周安装
Medusa 开源无头电商系统 - 基于 Node.js 和 TypeScript 的完全可定制电商平台
95 周安装
Rust嵌入式开发:no_std、中断安全与硬件所有权领域约束实践指南
182 周安装
Twitter/X自动化教程:使用Rube MCP和Composio实现推文管理、搜索与书签
83 周安装
DevOps专家技能:Docker容器化、GitHub Actions CI/CD、Vercel部署配置实战指南
131 周安装
Phoenix/Elixir Ecto 模式最佳实践:变更集、查询、事务与数据库优化指南
100 周安装
WordPress项目分类工具 - 自动检测仓库类型与规范,提升开发效率
100 周安装