Skip to main content

Overview

CryptoView Pro is an advanced cryptocurrency forecasting system developed by Data Scientist Julian E. Coronado Gil. It leverages multiple machine learning models to provide accurate price predictions with confidence intervals, combining the strengths of different algorithms for short-term, medium-term, and long-term forecasts. The platform integrates real-time data collection from cryptocurrency exchanges, sophisticated technical analysis, and automated alert systems to provide a comprehensive trading intelligence solution.
CryptoView Pro is designed for educational and research purposes. Cryptocurrency markets are highly volatile, and predictions should not be used as the sole basis for investment decisions.

Architecture

CryptoView Pro uses a modular architecture with four distinct layers:
1

Data Layer

Collects real-time OHLCV (Open, High, Low, Close, Volume) data from cryptocurrency exchanges using the CCXT library. Supports multiple exchanges including Kraken, Binance, and more.
from data.collectors import CryptoDataCollector

# Initialize collector for Kraken exchange
collector = CryptoDataCollector('kraken')

# Fetch historical data
df = collector.fetch_ohlcv('BTC/USDT', timeframe='1h', limit=1000)
2

Model Layer

Implements three specialized machine learning models:
  • XGBoost: Optimized for short-term predictions (1-72 hours)
  • Prophet: Best for medium to long-term forecasts (1 week - 1 month)
  • Hybrid Ensemble: Intelligently combines both models based on prediction horizon
3

Analysis Layer

Generates technical indicators and trading signals:
  • RSI (Relative Strength Index)
  • MACD (Moving Average Convergence Divergence)
  • Bollinger Bands
  • Multiple EMAs (9, 21, 50, 200 periods)
  • Custom momentum and volatility indicators
4

UI Layer

Interactive Streamlit dashboard providing:
  • Real-time price monitoring
  • Interactive charting with Plotly
  • Model comparison and backtesting
  • Alert configuration and monitoring

Machine Learning Models

XGBoost Model

The XGBoost model is a gradient boosting algorithm optimized for cryptocurrency time series. It excels at capturing short-term patterns and non-linear relationships.

Best Use Cases

  • Intraday trading (1-24 hours)
  • High-frequency predictions
  • Volatile market conditions
  • Feature-rich datasets
Key Features Created:
  • Returns across multiple timeframes (1h, 4h, 24h, 7d)
  • Moving averages (7, 14, 30, 50 periods)
  • Volatility measures (rolling standard deviation)
  • Volume ratios and momentum indicators
  • OHLC price ratios
  • Bollinger Band positions

Prophet Model

Meta’s Prophet model is designed for time series with strong seasonal patterns and multiple seasonal cycles. It’s particularly effective for longer-term cryptocurrency trends.

Best Use Cases

  • Weekly to monthly forecasts
  • Trend analysis
  • Seasonal pattern detection
  • Confidence interval estimation
Configuration:
from models.prophet_model import ProphetCryptoPredictor

predictor = ProphetCryptoPredictor(
    changepoint_prior_scale=0.5,  # Flexibility for trend changes
    seasonality_prior_scale=10,    # Strength of seasonality
    interval_width=0.95            # Confidence interval width
)

Hybrid Ensemble Model

The Hybrid model intelligently combines XGBoost and Prophet predictions based on the forecast horizon, providing optimal accuracy across all timeframes.

Short-Term (≤72h)

Uses 100% XGBoost for fast, accurate predictions

Medium-Term (3-7d)

Blends both models with dynamic weighting

Long-Term (>7d)

Relies primarily on Prophet for trend analysis

Ensemble Weighting

XGBoost weight = max(0, 1 - periods/168)

Technical Indicators

CryptoView Pro includes a comprehensive suite of technical indicators for market analysis:
Relative Strength Index measures momentum and identifies overbought/oversold conditions.
from utils.indicators import TechnicalIndicators

# Calculate RSI with 14-period window
df['rsi'] = TechnicalIndicators.calculate_rsi(df['close'], periods=14)

# Trading signals
# RSI > 70: Overbought (potential sell)
# RSI < 30: Oversold (potential buy)

Real-Time Alerts

CryptoView Pro includes a sophisticated alert system with Telegram integration for instant notifications.

Alert Types

Price Alerts

Triggers when price changes exceed threshold
  • Default: ±5% movement
  • Customizable per asset

RSI Alerts

Notifies on overbought/oversold conditions
  • Overbought: RSI > 70
  • Oversold: RSI < 30

Volume Alerts

Detects unusual trading activity
  • Threshold: 2x average volume
  • Indicates market interest

MACD Signals

Identifies momentum changes
  • Bullish/bearish crossovers
  • Trend reversals

Configuration

Alerts are configured in config/settings.py:
ALERT_THRESHOLDS = {
    'price_change_pct': 5.0,      # 5% price movement
    'rsi_overbought': 70,          # RSI upper threshold
    'rsi_oversold': 30,            # RSI lower threshold
    'volume_spike': 2.0            # 2x volume increase
}

# Telegram credentials (set in .env file)
TELEGRAM_BOT_TOKEN = os.getenv('TELEGRAM_BOT_TOKEN', '')
TELEGRAM_CHAT_ID = os.getenv('TELEGRAM_CHAT_ID', '')
Always store API keys and bot tokens in environment variables, never commit them to version control.

Supported Assets

CryptoView Pro supports 12 major cryptocurrencies by default:
AVAILABLE_CRYPTOS = [
    'BTC/USDT', 'ETH/USDT', 'BNB/USDT', 'SOL/USDT',
    'ADA/USDT', 'XRP/USDT', 'DOGE/USDT', 'DOT/USDT',
    'MATIC/USDT', 'AVAX/USDT', 'LINK/USDT', 'UNI/USDT'
]

Timeframes

Multiple timeframes for different trading strategies:
  • 1m: Scalping and micro-trends
  • 5m: Short-term momentum
  • 15m: Intraday patterns
  • 1h: Standard analysis (default)
  • 4h: Swing trading
  • 1d: Position trading

Backtesting

CryptoView Pro includes comprehensive backtesting capabilities to evaluate model performance on historical data:
from utils.backtesting import Backtester

# Initialize backtester
backtester = Backtester(model=predictor)

# Run backtest on historical data
results = backtester.run(
    df=historical_data,
    prediction_horizon=24,  # 24-hour predictions
    n_splits=5             # 5-fold time series cross-validation
)

# Metrics included:
# - RMSE, MAE, MAPE
# - Directional accuracy
# - Sharpe ratio
# - Maximum drawdown

Performance Characteristics

Data Points

Processes 500-2000 historical candles for training

Update Frequency

Real-time updates every 30 seconds (configurable)

Prediction Speed

Generates forecasts in 2-5 seconds

Memory Usage

~200-500 MB typical footprint

Cache Duration

60-second TTL for API responses

API Rate Limits

CCXT rate limiting enabled

Next Steps

Installation

Install all dependencies and set up your environment

Quickstart

Get your first predictions running in 5 minutes

Model Selection

Learn which model to use for different scenarios

Configuration

Configure exchanges, alerts, and model parameters

Build docs developers (and LLMs) love