Skip to content

About

Evidence-first cryptocurrency news-sentiment research for Bitcoin and and Ethereum with explainable NLP, market-impact analysis, a FastAPI backend, and an interactive Next.js dashboard.

Topics

Resources

Security policy

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

17 Commits

Folders and files

Repository files navigation

CryptoPulse AI

CryptoPulse AI is an explainable FinTech market-intelligence project for analysing cryptocurrency news sentiment, identifying market-relevant events, and investigating how those signals relate to subsequent price, volume, and volatility changes.

The project begins with Bitcoin and Ethereum. It is designed as a research and decision-support tool, not a trading bot or source of financial advice.

CryptoPulse AI dashboard

Architecture

CryptoPulse AI architecture

The system preserves evidence and time lineage from ingestion through dashboard presentation. See the model card, data sheet, API reference, and v1.0 release notes.

Why this project exists

Crypto sentiment projects often stop at word clouds or positive/negative labels. Those outputs do not show which asset the sentiment concerns, whether duplicate stories distorted the result, when the information became available, or whether sentiment had any measurable relationship with later market behaviour.

CryptoPulse AI will build a reproducible pipeline from source data to an explainable, time-aware sentiment index and market-impact analysis.

v1.0 capabilities

  • Collect permitted Bitcoin and Ethereum news and OHLCV market data
  • Preserve source, publication, retrieval, and processing timestamps
  • Validate, clean, and deduplicate incoming articles
  • Detect which crypto asset each statement concerns
  • Compare a transparent VADER baseline with a financial-language model
  • Evaluate models using a human-labelled test set
  • Classify market-relevant events such as regulation, security incidents, adoption, and protocol changes
  • Produce hourly and daily sentiment indices with evidence coverage
  • Compare sentiment with subsequent returns, volume, and volatility using chronological evaluation
  • Explain individual classifications and aggregate signals
  • Provide an interactive dashboard and downloadable research reports

Responsible boundary

CryptoPulse AI will not claim that sentiment causes price changes, guarantees returns, or provides personalised investment advice. v1.0 will not execute trades or connect to exchange accounts.

See the project requirements, development roadmap, decision log, and responsible-use policy.

Local Python setup

python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -e .

The virtual environment and installed packages are ignored by Git.

Validate the Phase 2 sample

The repository contains a small, entirely synthetic dataset for testing the contracts. From the repository root:

$env:PYTHONPATH="src"
python -m cryptopulse.validation data/sample
python -m unittest discover -s tests -v

See the data dictionary and sample-data policy.

External connectors

Phase 3 provides a NewsAPI adapter for permitted news metadata and a public Coinbase Exchange adapter for exchange-specific BTC/USD and ETH/USD candles. Automated tests use offline fake responses and never consume live API quota.

See the connector setup, provenance, and limitations. Copy .env.example to .env only when you are ready to test NewsAPI with your own development key.

Data quality and deduplication

Phase 4 creates model-ready text without overwriting raw observations, assigns visible quality flags, and groups exact or near-duplicate stories using documented lexical thresholds. The generated reports show every grouping decision.

$env:PYTHONPATH="src"
python -m cryptopulse.preprocessing

See preprocessing and quality design.

VADER sentiment baseline

Phase 5 evaluates a versioned VADER baseline against target-specific annotations. Reports include class-wise metrics, confusion matrices, deduplicated evaluation, the locked test split, and individual error examples. Synthetic sample metrics verify the pipeline and are not performance claims.

$env:PYTHONPATH="src"
python -m cryptopulse.sentiment

See the VADER baseline and annotation guidelines.

Financial-language model comparison

Phase 6 adds a revision-pinned, optional FinBERT adapter and compares it with VADER using the same annotations, deduplication policy, and test split. It also measures multiclass Brier score and expected calibration error. The synthetic sample validates the pipeline but cannot establish which model is better.

python -m pip install -e ".[ml]"
$env:PYTHONPATH="src"
python -m cryptopulse.finbert

See the FinBERT comparison methodology and licence boundary.

Asset-specific evidence

Phase 7 resolves explicit Bitcoin and Ethereum aliases, separates contrastive multi-asset clauses, and supplies target-specific evidence to both sentiment models. Missing and ambiguous targets are reported rather than hidden.

$env:PYTHONPATH="src"
python -m cryptopulse.entity_resolution

See the entity-resolution methodology and limitations.

Explainable event classification

Phase 8 classifies target-specific evidence into market-event categories such as regulation, security incidents, adoption, protocol changes, and market commentary. It supports secondary labels, records matched rules, and abstains when evidence is insufficient.

$env:PYTHONPATH="src"
python -m cryptopulse.events

See the event-classification methodology.

Hourly and daily sentiment index

Phase 9 aggregates target-specific evidence using recency, confidence, duplicate-group, and source-independence weights. Direction and evidence coverage remain separate, and every index point can be reconstructed from its contribution report.

$env:PYTHONPATH="src"
python -m cryptopulse.indexing

See the sentiment-index methodology and limitations.

Chronological market-impact research

Phase 10 aligns completed sentiment windows with strictly later returns, volume changes, and range volatility. It uses chronological splits, compares simple direction baselines, and blocks inferential claims when fewer than 30 observations are available.

$env:PYTHONPATH="src"
python -m cryptopulse.research

See the market-impact methodology and safeguards.

Backend and repeatable operations

Phase 11 provides one complete pipeline command, a migrated SQLite operational database, run history, overlap protection, freshness checks, an optional FastAPI service, and a local scheduler.

$env:PYTHONPATH="src"
python -m cryptopulse.operations

To run the read-only development API:

python -m pip install -e ".[api]"
python -m cryptopulse.api

See the backend and operations guide.

Interactive research dashboard

Phase 12 adds a responsive Next.js and TypeScript interface for investigating Bitcoin and Ethereum sentiment, evidence coverage, event drivers, and the current research boundary. It clearly labels synthetic demo data and does not present the interface as a trading product.

npm install
npm run dev

Open http://localhost:3000. The dashboard uses its committed synthetic demonstration data by default. To connect the Phase 11 API, follow the web dashboard guide.

Reports and informational alerts

Phase 13 adds a permitted derived-index CSV download, a print-ready research report that can be saved as PDF, and locally configurable research alerts. Alert rules are stored in the browser and describe observed evidence conditions; they are not price forecasts or trading recommendations.

See the reports and alerts guide.

MLOps, quality, and security

Phase 14 adds versioned model/component metadata, data-quality and drift monitoring, production configuration checks, non-root Docker containers, GitHub CI, dependency auditing, secret scanning, and an explicit security/governance review.

$env:PYTHONPATH="src"
python -m cryptopulse.monitoring --project-root .
docker compose up --build

Docker is optional and does not host the application publicly. See the MLOps and operations guide and security policy.

Current status

Phase 14 - MLOps, quality, and security: complete

All fifteen planned v1.0 phases are complete. See the changelog and follow the owner-controlled release checklist before creating the GitHub v1.0.0 tag.

License

Original project code and documentation are licensed under the MIT License. Third-party datasets, APIs, models, news content, and trademarks remain subject to their own licences and terms.

About

Evidence-first cryptocurrency news-sentiment research for Bitcoin and and Ethereum with explainable NLP, market-impact analysis, a FastAPI backend, and an interactive Next.js dashboard.

Topics

Resources

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages