An advanced AI-powered cryptocurrency prediction platform that provides actionable trading advice across multiple timeframes using machine learning models and technical analysis.
Get started in seconds with our one-click launch scripts!
Choose your platform and run the preview script:
Unix/Linux/Mac:
# One-line quick start
./preview.shWindows (Command Prompt):
preview.batWindows (PowerShell):
.\preview.ps1- β 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! β
- 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
- Bitcoin (BTC)
- Ethereum (ETH)
- Binance Coin (BNB)
- Cardano (ADA)
- Solana (SOL)
- XRP (Ripple)
- Polkadot (DOT)
- Dogecoin (DOGE)
- And 100+ more...
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
The application uses a hybrid approach for predictions:
-
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
-
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
-
Multi-Timeframe Consensus:
- Analyzes market across multiple timeframes
- Provides comprehensive view of short to long-term trends
- Clone the repository
git clone https://github.com/Islamhassana3/EPICcrypto.git
cd EPICcrypto- Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies
pip install -r requirements.txt- Create .env file
cp .env.example .env- Run the application
python app.py- Open in browser
http://localhost:5000
- Fork this repository
- Go to Railway.app
- Click "New Project" β "Deploy from GitHub repo"
- Select your forked repository
- Railway will automatically detect configuration and deploy
- Install Railway CLI
npm i -g @railway/cli- Login to Railway
railway login- Initialize project
railway init- Deploy
railway up- Add domain (optional)
railway domainheroku create your-app-name
git push heroku main
heroku openCreate 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 epiccryptohttp://localhost:5000/api # Local
https://your-app.railway.app/api # Production
GET /api/healthGET /api/coinsGET /api/price/{coin_id}Example: /api/price/bitcoin
GET /api/historical/{coin_id}?days=30GET /api/predict/{coin_id}?timeframe=1hTimeframes: 1m, 5m, 10m, 30m, 1h, daily, monthly, yearly
GET /api/predict/{coin_id}/allGET /api/analyze/{coin_id}GET /api/recommendation/{coin_id}?timeframe=1h{
"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
}
}- Random Forest Regressor: Captures non-linear patterns
- Gradient Boosting Regressor: Sequential error correction
- Linear Regression: Trend analysis
- ARIMA: Time series forecasting
- RSI (Relative Strength Index): Momentum indicator
- MACD: Trend-following momentum
- Moving Averages: MA7, MA25, MA50
- Bollinger Bands: Volatility measurement
- Volatility: Price variance analysis
- Data Collection: Fetch real-time and historical data from APIs
- Preprocessing: Calculate technical indicators and normalize data
- Feature Engineering: Extract meaningful features from price data
- Model Training: Train ensemble of ML models on historical data
- Prediction: Generate predictions using trained models
- Recommendation: Combine signals to produce buy/sell/hold advice
- Confidence Scoring: Calculate confidence based on model agreement
- 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)
- 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
- 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)
Create a .env file:
SECRET_KEY=your-secret-key-here
PORT=5000
FLASK_ENV=productionSet in Railway dashboard:
PORT: Automatically set by RailwaySECRET_KEY: Generate a secure random key
Run the test suite:
pytestRun with coverage:
pytest --cov=backend tests/- Flask 3.0.0 - Web framework
- Gunicorn 21.2.0 - WSGI server
- 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
- scikit-learn 1.3.2 - ML algorithms
- tensorflow 2.15.0 - Deep learning
- statsmodels 0.14.1 - Time series analysis
- 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
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
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
For issues and questions:
- GitHub Issues: Create an issue
- 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
- Response time: < 2s for predictions
- API uptime: 99.9% target
- Real-time data updates every 60 seconds
- Cached responses for improved performance
- 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