All work
Full-Stack

TV Workstation: TradingView-Style Desktop Terminal Written from Scratch

A PySide6 charting terminal with its own chart engine, drawing tools, Pine Script compiler and runtime, backtester, alerts and bar replay.

No web view and no charting library: everything from the candle renderer to the Pine interpreter is custom; data from any MT5 broker (read-only attach), Zerodha Kite, or a deterministic simulator for offline testing.

TV Workstation: TradingView-Style Desktop Terminal Written from Scratch — illustration
What makes it serious
  • Custom chart engine and drawing tools, no web view
  • Own Pine Script compiler and runtime with tests
  • Three data sources with automatic routing and offline fallback
  • Offscreen GUI tests for the renderer

TV Workstation is a personal TradingView replacement built entirely in Python and Qt, with no embedded browser and no third-party charting component. The chart engine, drawing tools, multi-chart layouts, alerts, bar replay, strategy backtester and a Pine Script compiler and runtime are all written from scratch, which makes the whole stack inspectable and scriptable.

Data routing is pragmatic: symbols prefixed with Indian exchanges go to Zerodha Kite under its request throttle, everything else attaches read-only to a running MT5 terminal so broker-specific symbol suffixes resolve automatically, and when neither is connected a deterministic random walk keeps the UI testable offline. History is cached locally.

The Pine runtime has its own test suite and an offscreen GUI screenshot test, so changes to the compiler or renderer can be checked without a display. This codebase is the ancestor of the browser-based SuperCharting workstation.

How it works

  1. Symbol typed; router picks Zerodha, MT5 or the simulator
  2. Bars are cached and rendered by the custom chart engine
  3. Pine scripts compile to the runtime and plot or trade
  4. Backtester, alerts and bar replay run on the same bar store
  5. Tests render offscreen to verify output
Stack
PythonPySide6MetaTrader5 APIZerodha Kite Connectcustom Pine compiler
#charting#pine-script#desktop-app#pyside6#backtester#bar-replay