Skip to main content

No project description provided

Project description

twse

A Python package for querying real-time stock information from Taiwan Stock Exchange (TWSE).

Features

  • Real-time stock data querying from TWSE
  • Support for single or multiple stock symbols
  • Comprehensive stock information including:
    • Current price, volume, and price changes
    • Open, high, low prices
    • Best bid/ask prices
    • Company information
  • Formatted output suitable for display (including Telegram MarkdownV2 format)

Installation

Requires Python 3.11 or higher.

pip install twse

Usage

Basic Usage

from twse import get_stock_info_sync

# Query single stock (TSMC - 2330)
response = get_stock_info_sync("2330")
print(response.pretty_repr())

# Query multiple stocks (TSMC - 2330 and Hon Hai - 2317)
response = get_stock_info_sync(["2330", "2317"])
print(response.pretty_repr())

Async Usage

import asyncio

from twse import get_stock_info


async def main() -> None:
    # Query single stock (TSMC - 2330)
    response = await get_stock_info("2330")
    print(response.pretty_repr())


if __name__ == "__main__":
    asyncio.run(main())

Example Output

The pretty_repr() method formats the output in Telegram MarkdownV2 format:

⏰ 2024-03-21 14:30:00

📊 台積電 (2330)
Open: 735.00
High: 738.00
Low: 732.00
Last: 735.00
Change: 🔺 +0.68%
Volume: 15,234,567

Stock Information Fields

The StockInfo class provides access to various fields:

  • symbol: Stock symbol
  • name: Stock name
  • full_name: Full company name
  • last_price: Current trading price
  • open_price: Opening price
  • high_price: High price
  • low_price: Low price
  • accumulated_volume: Trading volume
  • best_ask_price: Best ask price
  • best_bid_price: Best bid price
  • And more...

Development

Setup

  1. Clone the repository
  2. Install dependencies using uv:
    uv pip install -r requirements.txt
    

Commands

  • Run tests:
    make test
    
  • Run linter:
    make lint
    

Pre-commit Hooks

The project uses pre-commit hooks for code quality. Install them with:

pre-commit install

License

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

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

twse-0.5.0-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file twse-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: twse-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for twse-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b4aab2e153cbf6c5d75a3d4123c51dc6742de2c43a786fdbd61fba280f3e9fd4
MD5 ba19a78fc920f5436c4f6f6bcc9b796e
BLAKE2b-256 241e1ac8d515a89c5d717e101dd941e0aa7f553b048656fb5036ce500ffbde1b

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