Crypto-Analyst / crypto__analysis_tasks.py
menikev's picture
Update crypto__analysis_tasks.py
b23e8ef verified
from crewai import Task
from textwrap import dedent
class CryptoAnalysisTasks:
def market_research(self, agent, crypto):
return Task(
description=dedent(f"""
Conduct comprehensive market research for {crypto} cryptocurrency.
REQUIRED DATA POINTS:
1. Current Price: Get exact current price in USD
2. Market Cap: Current market capitalization
3. 24h Volume: Trading volume in last 24 hours
4. Price Changes: 24h, 7d, and 30d percentage changes
5. Market Dominance: Percentage of total crypto market
6. News Analysis: 3-5 recent news headlines with impact assessment
7. Competitive Analysis: Compare to Bitcoin and Ethereum
8. Market Trends: Current market phase (bull/bear/sideways)
FORMAT REQUIREMENTS:
- Price: $X.XX (24h change: +/-X.X%)
- Market Cap: $X.XB/M (Rank: #X)
- Volume 24h: $X.XM (Volume/MCap ratio: X.X%)
- 7d Change: +/-X.X%, 30d Change: +/-X.X%
- Market Dominance: X.X% of total crypto market
- News Impact: [List 3 key headlines with bullish/bearish/neutral impact]
- Vs Bitcoin: Outperforming/Underperforming by X.X%
- Vs Ethereum: Outperforming/Underperforming by X.X%
- Market Phase: [Bull/Bear/Sideways] with reasoning
ANALYSIS REQUIREMENTS:
Provide detailed commentary on each metric and its significance for investment decisions.
"""),
expected_output=f"Comprehensive market analysis report for {crypto} with all required data points and professional commentary",
agent=agent
)
def technical_analysis(self, agent, crypto):
return Task(
description=dedent(f"""
Perform detailed technical analysis for {crypto} cryptocurrency.
REQUIRED TECHNICAL INDICATORS:
1. RSI (14-day): Calculate current RSI and signal (Overbought >70, Oversold <30)
2. Moving Averages: 7-day, 20-day, 50-day, and 200-day SMAs
3. Trend Analysis: Current trend direction and strength
4. Support/Resistance: Key price levels for entry/exit
5. Volume Analysis: Volume trends and significance
6. Momentum Indicators: MACD, Stochastic if available
7. Chart Patterns: Identify any significant patterns
8. Fibonacci Levels: Key retracement/extension levels
FORMAT REQUIREMENTS:
- RSI: X.X (Signal: Overbought/Oversold/Neutral)
- 7-day MA: $X.XX, 20-day MA: $X.XX, 50-day MA: $X.XX
- Trend: Bullish/Bearish/Sideways (Strength: Strong/Moderate/Weak)
- Support: $X.XX, $X.XX | Resistance: $X.XX, $X.XX
- Volume Trend: Increasing/Decreasing/Stable
- Entry Points: $X.XX - $X.XX (Conservative: $X.XX)
- Stop Loss: $X.XX | Take Profit: $X.XX
- Pattern: [Head & Shoulders/Triangle/Wedge/None]
PROBABILITY ASSESSMENT:
Provide probability percentages for next 7-day and 30-day price movements.
"""),
expected_output=f"Detailed technical analysis for {crypto} with specific indicators, price levels, and probability assessments",
agent=agent
)
def sentiment_analysis(self, agent, crypto):
return Task(
description=dedent(f"""
Conduct multi-source sentiment analysis for {crypto} cryptocurrency.
REQUIRED SENTIMENT SOURCES:
1. Overall Market Sentiment: General market mood towards {crypto}
2. Social Media Sentiment: Twitter, Reddit, Discord community analysis
3. News Sentiment: Traditional media, crypto publications, regulatory news
4. Community Sentiment: Developer activity, governance, ecosystem growth
5. Institutional Sentiment: Corporate adoption, investment fund interest
6. Fear & Greed Index: Current market psychology
ANALYSIS METHODOLOGY:
- Analyze each source independently
- Assign clear Positive/Negative/Neutral ratings
- Provide confidence scores (High/Medium/Low)
- Identify sentiment drivers and catalysts
FORMAT REQUIREMENTS:
- Overall Sentiment: Positive/Negative/Neutral (Confidence: High/Medium/Low)
- Social Media: Positive/Negative/Neutral (Twitter: X%, Reddit: X%)
- News Sentiment: Positive/Negative/Neutral (Recent headlines impact)
- Community: Positive/Negative/Neutral (Developer activity, governance)
- Institutional: Positive/Negative/Neutral (Corporate interest level)
- Key Drivers: [List 3-5 main factors influencing sentiment]
- Sentiment Score: X/10 (Weighted composite)
- Change from Last Week: Improving/Deteriorating/Stable
ENSURE DIFFERENTIATED ANALYSIS:
Each sentiment category must be analyzed separately and may have different ratings.
Do not assign the same sentiment to all categories.
"""),
expected_output=f"Comprehensive sentiment analysis for {crypto} with differentiated ratings across all sources",
agent=agent
)
def recommend(self, agent, crypto):
return Task(
description=dedent(f"""
Synthesize all analyses to provide a comprehensive investment recommendation for {crypto}.
INTEGRATION REQUIREMENTS:
1. Market Analysis Summary: Key market metrics and trends
2. Technical Analysis Summary: Critical indicators and signals
3. Sentiment Analysis Summary: Weighted sentiment across sources
4. Risk Assessment: Identify and quantify key risks
5. Investment Recommendation: Clear BUY/HOLD/SELL with reasoning
6. Position Sizing: Recommended portfolio allocation percentage
7. Time Horizon: Short-term (1-3 months) vs Long-term (6-12 months) outlook
8. Exit Strategy: Clear profit-taking and stop-loss levels
FORMAT REQUIREMENTS:
- Recommendation: BUY/HOLD/SELL
- Confidence: High/Medium/Low (with percentage if possible)
- Time Horizon: Short-term/Medium-term/Long-term
- Position Size: X% of portfolio (Conservative/Moderate/Aggressive)
- Entry Range: $X.XX - $X.XX
- Target Price: $X.XX (Timeframe: X months)
- Stop Loss: $X.XX
- Risk Level: Low/Moderate/High
- Key Catalysts: [3-5 factors that could drive price]
- Risk Factors: [3-5 main risks to monitor]
- Reasoning: [Detailed explanation combining all analyses]
DECISION MATRIX:
Clearly explain how market, technical, and sentiment factors influenced the final recommendation.
Address both bull and bear case scenarios.
"""),
expected_output=f"Comprehensive investment recommendation for {crypto} with specific targets, risk assessment, and detailed reasoning",
agent=agent
)