Simple Chart is a free desktop stock charting application for swing traders with a clean and intuitive UI. No more paying for a subscription to use Anchored VWAP or limited configuration indicators. The app comes with a set of core indicators that are fully customizable, along with a robust API for creating custom indicators using the AI agent of your choice.
Included indicators:
- Simple Moving Average
- Exponential Moving Average
- Anchored VWAP
- Pivot Points
- Fibonacci Retracement
- RSI
The app runs locally from this source repository on Linux, MacOS, and Windows. It uses Python 3.13, and was built natively on Linux and seems to work well on both MacOS and Windows.
The setup process has four basic steps:
- Create a virtual environment with Python 3.13.
- Clone this repository.
- Install the app into the virtual environment.
- Launch Simple Chart.
Windows users can use setup.bat. MacOS and Linux users can use setup.sh.
Manual setup commands are also included below.
For Windows, the easiest path is the included setup.bat file. It installs
uv if needed, creates a Python 3.13 virtual environment, and installs Simple
Chart in that environment.
- Clone or download this repository.
- Open the project folder in File Explorer.
- Double-click
setup.bat. - Wait until it says setup is complete.
To launch the app after setup, open PowerShell in the project folder and run:
.\.venv\Scripts\simplechart.exeIf you prefer to activate the environment first:
.\.venv\Scripts\Activate.ps1
simplechartIf PowerShell blocks activation scripts, use the direct launch command instead:
.\.venv\Scripts\simplechart.exeFor macOS and Linux, the easiest path is the included setup.sh file. It
installs uv if needed, creates a Python 3.13 virtual environment, and installs
Simple Chart in that environment.
From the project folder, run:
sh setup.shTo launch the app after setup:
. .venv/bin/activate
simplechartUse this path if you prefer managing the environment yourself.
First, create and activate a Python 3.13 virtual environment.
macOS and Linux:
python3.13 -m venv .venv
. .venv/bin/activateWindows PowerShell:
py -3.13 -m venv .venv
.\.venv\Scripts\Activate.ps1Then install and launch the app:
python -m pip install --upgrade pip
python -m pip install -e .
simplechartIf python3.13 or py -3.13 is not available, install Python 3.13 first or use
a Python version manager such as pyenv or uv.
With uv, the setup can be as short as:
uv venv --python 3.13
uv pip install -e .Then activate the environment and launch:
. .venv/bin/activate
simplechartOn Windows, you can launch the uv environment directly:
.\.venv\Scripts\simplechart.exeBy default, Simple Chart stores its local database here:
- macOS and Linux:
~/.simplechart/simplechart.db - Windows:
%USERPROFILE%\.simplechart\simplechart.db
To use a different database file:
simplechart --db /path/to/simplechart.dbThe default data provider is yfinance:
simplechart --provider yfinanceRunning from a terminal after pip install -e . is enough to use the app.
On Linux, you can also install a desktop menu launcher:
python scripts/install_linux_desktop.pyRun that command from the same virtual environment where Simple Chart was installed. If the launcher does not appear immediately, log out and back in or restart the desktop shell.
The virtual environment is probably not active, or the install did not finish. Activate the environment and reinstall:
python -m pip install -e .On Windows, you can also launch directly without activating:
.\.venv\Scripts\simplechart.exeSimple Chart requires Python 3.13. Check the active Python version:
python --versionIf the version is not 3.13, create a new virtual environment using Python 3.13 and reinstall the app.
Launch the app from a terminal so any error message stays visible. Common causes are an incomplete dependency install, running outside a desktop environment, or using the wrong Python environment.
The setup script downloads uv using PowerShell. If that step fails, the most
common causes are no internet connection, antivirus quarantine, or organization
policy blocking PowerShell downloads. The script prints manual install options
when this happens.
Simple Chart includes a public indicator API at simplechart.api. Custom
indicators can be added as project plugins under indicators/ or as user
plugins under ~/.simplechart/plugins/.
For indicator development, install the development extras:
python -m pip install -e ".[dev]"Then read:
AGENTS.mdfor project conventions and the public indicator API contractdocs/skills/compute-indicator.mdfor standard computed indicatorsdocs/skills/interactive-indicator.mdfor drawing tools, drag handles, context actions, and persistent indicator state
This repository is intentionally source-installed. It does not currently ship
native installers, a macOS .app bundle, or a Windows shortcut installer.
Useful commands:
python -m pytest
python -m compileall app chart data indicators simplechart tests
python scripts/build_compiled.pyCompiled .so extension files are build artifacts generated by mypyc for hot
numeric indicator kernels. The Python source files remain the source of truth.
