explaingit

calesthio/optionscanvas

Analysis updated 2026-05-18

29PythonAudience · developerComplexity · 3/5Setup · moderate

TLDR

An open-source options trading platform where you drag buy, stop, and target markers directly on the price chart, and it picks the contract and size for you.

Mindmap

mindmap
  root((OptionsCanvas))
    What it does
      Chart-based trading
      Auto contract pick
      Private stops
    Tech stack
      Python
      Flask
      SQLite
      Lightweight Charts
    Use cases
      Drag to trade
      Trade journal
      Fast execution
    Audience
      Active traders
      Developers
    Data
      Local only
      No cloud sync

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Place an options trade by dragging buy, stop-loss, and take-profit markers on a chart.

USE CASE 2

Keep stop and target levels private on your machine instead of in your broker's order book.

USE CASE 3

Use keyboard shortcuts to buy, flatten, or adjust strikes quickly during active trading.

USE CASE 4

Review an automatically generated trade journal stored in a local SQLite database.

What is it built with?

PythonFlaskSQLiteTradingView Lightweight Charts

How does it compare?

calesthio/optionscanvasadityasharmadotai-hash/docs-reader-rag-agentalekseiul/hermes-researcher-agent
Stars292929
LanguagePythonPythonPython
Setup difficultymoderateeasymoderate
Complexity3/52/52/5
Audiencedevelopervibe coderresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 1h+

Requires a supported broker account with API access and local broker credentials in a config file.

The full README is longer than what was shown, so license terms are not confirmed here.

In plain English

OptionsCanvas is an open-source options trading platform for active traders who want to place trades from the underlying price chart rather than from the options chain. Instead of switching to your broker to pick an expiration, scroll a strike ladder, and compute contract counts, you drag three chart markers: a Buy pill, a stop-loss level, and a take-profit level. The platform then picks the option contract, the expiration date, and the number of contracts for you, projecting the estimated premium and profit/loss in real time as you drag each level. A key design choice is that your stop and target levels never appear in your broker's order book. They live entirely on your local machine. The system polls the underlying price itself and only fires a market order to your broker at the moment the price actually crosses your level. This avoids stop hunting, where market makers can see resting stops and briefly push price to trigger them before reversing. Execution is built for speed: keyboard shortcuts cover buying calls and puts at market, flattening all positions, switching between call and put, adjusting the strike by a step, and setting bracket orders with a single click-and-drag gesture. Preset dollar sizes from $500 to $10,000 let you size positions without manual math. The stop calculation uses a 14-period average true range reconciled against recent swing highs and lows, and the default reward-to-risk ratio is 2:1. All data stays on your machine. The server runs at localhost, your broker credentials are in a local config file, and no usage data leaves your computer. Every fill, close, and realized profit or loss gets written automatically to a local SQLite database, giving you a trade journal without any manual entry. The project runs on Flask and pulls live option chain data directly from your broker. It works with any optionable US equity or ETF your broker supports. The chart is built on TradingView Lightweight Charts and includes VWAP, moving averages, RSI, volume, and basic drawing tools. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
Help me set up OptionsCanvas to run locally with my broker's API credentials.
Prompt 2
Explain how OptionsCanvas calculates stop distance using average true range.
Prompt 3
Walk me through the keyboard shortcuts for placing bracket orders quickly.
Prompt 4
Show me how the local price polling avoids exposing my stops to my broker.

Frequently asked questions

What is optionscanvas?

An open-source options trading platform where you drag buy, stop, and target markers directly on the price chart, and it picks the contract and size for you.

What language is optionscanvas written in?

Mainly Python. The stack also includes Python, Flask, SQLite.

What license does optionscanvas use?

The full README is longer than what was shown, so license terms are not confirmed here.

How hard is optionscanvas to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is optionscanvas for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.