Skip to content

Islamhassana3/EPICcrypto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

37 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ EPICcrypto - AI Crypto Prediction Platform

An advanced AI-powered cryptocurrency prediction platform that provides actionable trading advice across multiple timeframes using machine learning models and technical analysis.

Python Flask License

πŸš€ Quick Preview

Get started in seconds with our one-click launch scripts!

Launch Preview Preview Guide Quick Start

🎯 Launch Methods

Choose your platform and run the preview script:

Unix/Linux/Mac:

# One-line quick start
./preview.sh

Windows (Command Prompt):

preview.bat

Windows (PowerShell):

.\preview.ps1

✨ What the scripts do:

  • βœ… Automatically check if dependencies are installed
  • βœ… Install missing Python packages if needed
  • βœ… Start the development server on port 5000
  • βœ… Automatically open the application in your default browser
  • βœ… Display helpful status messages

First time? The script will handle everything - just run it and go! β˜•


🌟 Features

  • Multi-Timeframe Predictions: 1 min, 5 min, 10 min, 30 min, 1 hour, daily, monthly, and yearly predictions
  • AI-Powered Analysis: Uses ensemble ML models including Random Forest, Gradient Boosting, Linear Regression, and ARIMA
  • Technical Indicators: Comprehensive technical analysis including RSI, MACD, Moving Averages, Bollinger Bands, and Volatility analysis
  • Real-Time Data: Integration with CoinGecko, Binance APIs, and Yahoo Finance for live market data
  • Smart Recommendations: AI-generated buy/sell/hold advice with confidence scores
  • Multiple Cryptocurrencies: Support for Bitcoin, Ethereum, BNB, Cardano, Solana, XRP, Polkadot, Dogecoin, and 100+ more
  • Beautiful UI: Modern, responsive dashboard with real-time updates
  • Railway Deployment: Ready to deploy on railway.app with one click

πŸ“Š Supported Cryptocurrencies

  • Bitcoin (BTC)
  • Ethereum (ETH)
  • Binance Coin (BNB)
  • Cardano (ADA)
  • Solana (SOL)
  • XRP (Ripple)
  • Polkadot (DOT)
  • Dogecoin (DOGE)
  • And 100+ more...

πŸ—οΈ Architecture

EPICcrypto/
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ api/              # REST API routes
β”‚   β”œβ”€β”€ data/             # Data fetching and preprocessing
β”‚   β”œβ”€β”€ models/           # ML prediction models
β”‚   └── utils/            # Utilities and caching
β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ static/           # CSS, JS assets
β”‚   └── templates/        # HTML templates
β”œβ”€β”€ app.py                # Main Flask application
β”œβ”€β”€ requirements.txt      # Python dependencies
└── railway.json          # Railway deployment config

AI/ML Models

The application uses a hybrid approach for predictions:

  1. Technical Analysis Engine:

    • Moving Averages (SMA 5, 10, 20, 50)
    • Relative Strength Index (RSI)
    • Moving Average Convergence Divergence (MACD)
    • Bollinger Bands
    • Volume Analysis
    • Momentum Indicators
  2. Machine Learning Pipeline:

    • Feature engineering from historical OHLCV data
    • Pattern recognition using recent price movements
    • Trend analysis and signal aggregation
    • Confidence scoring based on indicator alignment
  3. Multi-Timeframe Consensus:

    • Analyzes market across multiple timeframes
    • Provides comprehensive view of short to long-term trends

πŸš€ Quick Start

Local Development

  1. Clone the repository
git clone https://github.com/Islamhassana3/EPICcrypto.git
cd EPICcrypto
  1. Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies
pip install -r requirements.txt
  1. Create .env file
cp .env.example .env
  1. Run the application
python app.py
  1. Open in browser
http://localhost:5000

🌐 Deploy to Railway.app

Method 1: One-Click Deploy

  1. Fork this repository
  2. Go to Railway.app
  3. Click "New Project" β†’ "Deploy from GitHub repo"
  4. Select your forked repository
  5. Railway will automatically detect configuration and deploy

Method 2: Railway CLI

  1. Install Railway CLI
npm i -g @railway/cli
  1. Login to Railway
railway login
  1. Initialize project
railway init
  1. Deploy
railway up
  1. Add domain (optional)
railway domain

Alternative Deployment Platforms

Heroku

heroku create your-app-name
git push heroku main
heroku open

Docker (for any platform)

Create a Dockerfile:

FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["gunicorn", "app:app", "--bind", "0.0.0.0:$PORT"]

Build and run:

docker build -t epiccrypto .
docker run -p 5000:5000 epiccrypto

πŸ“‘ API Documentation

Base URL

http://localhost:5000/api  # Local
https://your-app.railway.app/api  # Production

Endpoints

Health Check

GET /api/health

Get Supported Coins

GET /api/coins

Get Current Price

GET /api/price/{coin_id}

Example: /api/price/bitcoin

Get Historical Data

GET /api/historical/{coin_id}?days=30

Get Prediction

GET /api/predict/{coin_id}?timeframe=1h

Timeframes: 1m, 5m, 10m, 30m, 1h, daily, monthly, yearly

Get All Timeframe Predictions

GET /api/predict/{coin_id}/all

Get Technical Analysis

GET /api/analyze/{coin_id}

Get Recommendation

GET /api/recommendation/{coin_id}?timeframe=1h

Example Response

{
  "symbol": "BTC-USD",
  "timeframe": "1d",
  "current_price": 45000.00,
  "predicted_price": 46350.00,
  "price_change_percent": 3.0,
  "recommendation": "BUY",
  "confidence": 0.75,
  "technical_indicators": {
    "sma_20": 44500.00,
    "sma_50": 43800.00,
    "rsi": 62.5,
    "macd": 250.00
  }
}

πŸ€– AI Models

Ensemble Models

  • Random Forest Regressor: Captures non-linear patterns
  • Gradient Boosting Regressor: Sequential error correction
  • Linear Regression: Trend analysis
  • ARIMA: Time series forecasting

Technical Indicators

  • RSI (Relative Strength Index): Momentum indicator
  • MACD: Trend-following momentum
  • Moving Averages: MA7, MA25, MA50
  • Bollinger Bands: Volatility measurement
  • Volatility: Price variance analysis

πŸ“ˆ Prediction Methodology

  1. Data Collection: Fetch real-time and historical data from APIs
  2. Preprocessing: Calculate technical indicators and normalize data
  3. Feature Engineering: Extract meaningful features from price data
  4. Model Training: Train ensemble of ML models on historical data
  5. Prediction: Generate predictions using trained models
  6. Recommendation: Combine signals to produce buy/sell/hold advice
  7. Confidence Scoring: Calculate confidence based on model agreement

🎯 Recommendation Signals

  • Strong Buy: High confidence bullish signals (Score β‰₯ 3)
  • Buy: Moderate bullish signals (Score β‰₯ 1)
  • Hold: Neutral or mixed signals (Score -1 to 1)
  • Sell: Moderate bearish signals (Score ≀ -1)
  • Strong Sell: High confidence bearish signals (Score ≀ -3)

Understanding Recommendations

  • BUY: Strong positive signals across multiple indicators
  • SELL: Strong negative signals indicating potential downtrend
  • HOLD: Mixed or neutral signals, wait for clearer trend

Confidence Levels:

  • High (>70%): Strong agreement among indicators
  • Medium (50-70%): Moderate agreement, proceed with caution
  • Low (<50%): Weak signals, high uncertainty

πŸ’» Technology Stack

  • Backend: Python 3.11, Flask
  • AI/ML: TensorFlow, scikit-learn
  • Data: yfinance, pandas, numpy
  • Frontend: HTML5, CSS3, Vanilla JavaScript
  • Deployment: Railway.app (or any platform supporting Python apps)

βš™οΈ Configuration

Environment Variables

Create a .env file:

SECRET_KEY=your-secret-key-here
PORT=5000
FLASK_ENV=production

Railway Environment Variables

Set in Railway dashboard:

  • PORT: Automatically set by Railway
  • SECRET_KEY: Generate a secure random key

πŸ§ͺ Testing

Run the test suite:

pytest

Run with coverage:

pytest --cov=backend tests/

πŸ“¦ Dependencies

Core

  • Flask 3.0.0 - Web framework
  • Gunicorn 21.2.0 - WSGI server

Data & APIs

  • pandas 2.1.4 - Data manipulation
  • numpy 1.26.2 - Numerical computing
  • requests 2.31.0 - HTTP library
  • pycoingecko 3.1.0 - CoinGecko API
  • python-binance 1.0.19 - Binance API
  • yfinance - Yahoo Finance API

Machine Learning

  • scikit-learn 1.3.2 - ML algorithms
  • tensorflow 2.15.0 - Deep learning
  • statsmodels 0.14.1 - Time series analysis

πŸ”’ Security

  • API rate limiting implemented
  • Input validation on all endpoints
  • CORS protection
  • Environment variables for sensitive data
  • No API keys required for basic functionality
  • No financial data storage - app does not store personal information

⚠️ Disclaimer

IMPORTANT: This application provides AI-generated predictions for educational and informational purposes only.

  • NOT FINANCIAL ADVICE: Do not use as sole basis for investment decisions
  • PAST PERFORMANCE: Historical data does not guarantee future results
  • RISK WARNING: Cryptocurrency trading involves substantial risk
  • DO YOUR RESEARCH: Always conduct thorough research before investing
  • CONSULT PROFESSIONALS: Seek advice from qualified financial advisors

The predictions are based on historical data and technical analysis. Always:

  • Do your own research (DYOR)
  • Consult with financial advisors
  • Only invest what you can afford to lose
  • Understand the risks involved in crypto trading

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“ž Support

For issues and questions:

πŸ™ Acknowledgments

  • CoinGecko API for cryptocurrency data
  • Binance API for real-time trading data
  • Yahoo Finance API for market data
  • Railway.app for hosting platform
  • Open source ML libraries

πŸ“Š Performance

  • Response time: < 2s for predictions
  • API uptime: 99.9% target
  • Real-time data updates every 60 seconds
  • Cached responses for improved performance

πŸ—ΊοΈ Roadmap

  • LSTM deep learning models for improved predictions
  • Real-time WebSocket updates
  • Portfolio tracking and management
  • Alert notifications (email/SMS)
  • More cryptocurrencies support
  • Historical prediction accuracy tracking
  • Sentiment analysis from social media
  • Advanced charting with TradingView
  • Mobile app version

Built with ❀️ by the EPICcrypto Team

Powered by AI β€’ Deployed on Railway.app β€’ Real-time Crypto Analysis

Made with ❀️ for the crypto community

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors