Skip to main content

Terminal tool to plot stocks, crypto, pair ratios, and technical indicators like MACD and RSI.

Project description

NVDA stock price, moving averages and volume over 1 year

Tsigna

Tsigna is a Python financial analysis tool that runs entirely in the terminal. It is most useful for medium-term trading. It fetches historical stock data from Yahoo Finance, calculates technical indicators including moving averages, MACD, and RSI, and displays them as text-based charts using the plotille library. The tool supports single ticker analysis, ratio comparisons between two tickers, and a special MMRI calculation. Users can customize the time period and split the terminal display to show multiple indicators simultaneously.

NVDA stock price, Bollinger Bands and Stochastics over 1 year

Background

Originally I was looking for a free online tool to plot the ratio between two tickers, but I didn't find such a tool so I started working on Tsigna. The name comes from 'T' for terminal and the plural form of signum, the latin word for signal. The 'T' also stands for technical, like in technical indicators, from which we get technical signals.

Ratio between NVDA and WMT stock prices, moving averages and RSI indicator over 2 years

Installation

Tsigna has been developped with Python 3.11 but may work with older versions. It depends on the pandas, plotille and yahooquery external libraries and their dependencies. They will all be installed automatically with the following command. It is recommended to make the installation within a virtual environment.

pip install tsignal

Usage

Basic Usage

tsigna [arguments] ticker1 [ticker2]

Command-Line Arguments

Argument Short Flag Description
--help -h Show help message
--atr -a Display ATR indicator (Average True Range)
--atr-only -A Display only ATR indicator
--bollinger -b Display Bollinger Bands indicator
--mfi -f Display MFI indicator (Money Flow Index)
--mfi-only -F Display only MFI indicator
--indicator-info -i Show indicator information
--macd -m Display MACD indicator (Moving Average Convergence Divergence)
--macd-only -M Display only MACD indicator
--no-cache -n Bypass cache and get latest data
--obv -o Display OBV indicator (On-Balance Volume)
--obv-only -O Display only OBV indicator
--rsi -r Display RSI indicator (Relative Strength Index)
--rsi-only -R Display only RSI indicator
--stoch -s Display Stochastics indicator
--stoch-only -S Display only Stochastics indicator
--volume -v Display volume
--volume-only -V Display only volume
--years -y Set years to plot, use 0 for ytd (default: 1)

Configuration

You can edit the configuration constants directly at the top of the tsigna.py file if you wish to change the default behavior. For example you can change the expiration time of the cache (it is 5 minutes by default) or disable it. You can also change the colors of the lines, the parameters of the technical indicators, etc.

Not Financial Advice

I do not own any of the stocks in the examples, I chose them because they are very popular.

License

Copyright (c) 2025 Monsieur Linux

This project is licensed under the MIT License. See the LICENSE file for details.

Acknowledgements

Tsigna is not doing much more than getting data from yahooquery, processing it with pandas, and plotting it with plotille, so thanks to the creators and contributors of these powerful libraries for making it possible.

Thanks also to the ticker tool, which is very useful to track prices in real time from the terminal.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tsigna-0.1.0.tar.gz (766.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tsigna-0.1.0-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file tsigna-0.1.0.tar.gz.

File metadata

  • Download URL: tsigna-0.1.0.tar.gz
  • Upload date:
  • Size: 766.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for tsigna-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b46f7e9f4288201901f3f67373db87bef03bc749e62f4a2b272ee00e7f6e6c9f
MD5 1acb991d9af6a1795495b81a556833c6
BLAKE2b-256 fcf4261c3445b0d9a93d876b044b9a6bc632b1b07a22c23e4b006a554b8a54a4

See more details on using hashes here.

File details

Details for the file tsigna-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: tsigna-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for tsigna-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 12a0e002ea9b53f61183c3317de45802003c639022ba07da5caea1612c3dc0ab
MD5 8317cc3eb1e6ad065e1a4743fdce9f27
BLAKE2b-256 b0f1876200371cf1817069390f1ff8062cb073adb858995e624cc95016562f23

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page