selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
OpenCharts logo

Self-host OpenCharts

0.3.0

Open-source trading terminal with charting and paper trading

BetaOpen SourceMIT
Updated2 weeks ago
LanguageTypescript
Setup difficultyEasy
MobileResponsive
Stars
195
Install with NPM
OpenCharts trading terminal showing candlestick chart, drawing tools, watchlist, DOM ladder, and order ticket

What is OpenCharts?

OpenCharts is a browser-based trading terminal that requires no backend server. It delivers candlestick charts built on TradingView's Lightweight Charts library, a full drawing toolkit, eight technical indicators, a watchlist, depth-of-market display, and an order ticket supporting market, limit, and stop orders. A paper trading engine with a $100,000 starting balance and 100× leverage runs entirely in the browser, updating positions on every tick. Real historical OHLC data from Binance is bundled at build time and replayed as a live tick stream. The terminal can be deployed as a static site or embedded in a React application via an npm package. An adapter interface lets users connect custom data and trading backends without forking the codebase.

Should you self-host OpenCharts?

OpenCharts scores 46/100 on selfhost.directory (how scoring works) and ranks #29 of 42 in Cryptocurrency. It has 195 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is easy: most people get it running in one sitting. It is MIT-licensed and written mostly in Typescript.

Its closest alternative on selfhost.directory is Bitcoin Core (86/100, 90 528 stars). It scores higher overall, so compare the two before you pick. See OpenCharts vs Bitcoin Core side by side.

Features

  • Adapter interface for custom backends
  • Candlestick charting
  • Chart templates
  • Composable panels
  • Depth of market (DOM)DOM ladder sizes are synthetic — derived deterministically from each price level
  • Drawing Tools
  • Line-cross alertsIn-session only — nothing persisted or delivered offline
  • Order ticket
  • Paper trading engineAccount state resets on reload; drawings/preferences persist in localStorage
  • Real market data (bundled)Timeline normalized so latest bar aligns to 'now'; bid/ask spread and DOM sizes are synthetic
  • Session ReplayCovers roughly the last 16 hours of bundled 1m history
  • Technical indicators
  • Trade journal
  • TradingView embedsThird-party network requests to TradingView CDN
  • Watchlist

OpenCharts README

How to install OpenCharts

Install OpenCharts with NPM

npm install @dylanpersonguy/opencharts

import { OpenChartsProvider, Terminal } from "@dylanpersonguy/opencharts"; import { createDemoAdapter } from "@dylanpersonguy/opencharts/demo"; import "@dylanpersonguy/opencharts/style.css";

React 18.2+ peer dependency; stylesheet precompiled, no Tailwind needed in host app

How to configure OpenCharts

  • VITE_ADAPTERSet to 'binance' to run the demo against live Binance prices via the example adapter

    Set to 'binance' to run the demo against live Binance prices via the example adapter

    values: binance

  • VITE_API_URLBase URL used by the legacy HTTP client in src/services/api/

    Base URL used by the legacy HTTP client in src/services/api/

More in Finance

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…