kabutam
Terminal-based stock and portfolio tracking tool for Japanese stocks.
Features
- Fetch and manage Japanese stock data
- Track your portfolio directly from the terminal
- Lightweight and easy to use
Prerequisites
- Python 3.11 or later
- Git (ソースからのインストール時)
pass(pass を使用する場合)libsecret(secret-tool) (Secret Serviceを使用する場合)
Installation
For Arch Linux (via AUR)
AUR ヘルパーを使用する場合 (推奨)
yay -S kabutam
# または
paru -S kabutam
PKGBUILDからビルドする場合
git clone https://aur.archlinux.org/kabutam.git
cd kabutam
makepkg -si
PyPIからのインストール
pip install kabutam
For Development (Virtual Environment)
git clone https://codeberg.org/tonrl/kabutam.git
cd kabutam
python -m venv .venv
source .venv/bin/activate
pip install -e .
Configuration
Kabutamでは、EDINET DBやJ-QuantsなどのAPIキーを secret backend を使用して管理します。
デフォルトでは pass を使用しますが、D-Bus Secret Service APIに対応したパスワードマネージャーも利用できます。
事前に各公式サイト(J-Quants / EDINET DB)等でAPIキーを取得し、選択したsecret backend に登録してください
pass (デフォルト)
J-QuantsおよびEDINET DBのAPIキーを取得し、pass に登録してください。
APIキーの登録
J-Quants API キーの登録
pass insert jpx-jquants.com/api/JPX_JQUANTS_API_KEY
EDINET DB API キーの登録
pass insert ednetdb/api/EDNET_DB_API_KEY
設定ファイルを作成しない場合、pass がデフォルトで使用されます。
Secret Service対応パスワードマネージャー
pass の代わりに、D-Bus Secret Service APIに対応した
パスワードマネージャーを利用できます。
対応例:
Kabutam はこれらのパスワードマネージャーと直接連携するのではなく、D-Bus Secret Service APIを通じてsecretを取得します。
APIキーの登録
J-Quants API キーの登録
secret-tool store \
--label="Kabutam J-Quants API Key" \
service kabutam \
username JPX_JQUANTS_API_KEY
EDINET DB API キーの登録
secret-tool store \
--label="Kabutam EDINET DB API Key" \
service kabutam \
username EDNET_DB_API_KEY
Secret Serviceを使用する場合は、Kabutamの設定ファイルでSecret Service backendを選択してください。
Configuration file
設定ファイルはXDG Base Directory Specificationに従い、通常は以下に配置されます。
~/.config/kabutam/config.toml
[secrets]
backend = "secretservice"
[secrets.secretservice]
service = "kabutam"
service の値はSecret Serviceに登録した service 属性と一致している必要があります。
Usage
# ヘルプの表示
kabutam --help
# 初期化設定
kabutam --init
# 銘柄の検索・表示
kabutam -C 19670
# ポートフォリオ表示
kabutam --portfolio
# ライセンス情報の表示
kabutam --license
Example output
$ kabutam --portfolio
===============================================================================================
ポートフォリオ
===============================================================================================
Code Company Account Shares Avg Price Price Value
-----------------------------------------------------------------------------------------------
XXXXX サンプルホールディングス 特定 1,200 190.47 233.80 280,560
XXXXX テストカンパニー 特定 100 2,401.75 3,002.00 300,200
XXXXX テストカンパニー NISA 100 2,300.00 3,002.00 300,200
XXXXX サンプル電鉄 特定 100 2,708.00 2,959.50 295,950
XXXXX サンプル通信 NISA 100 144.00 166.10 16,610
-----------------------------------------------------------------------------------------------
取得総額 : 1,292,520 円
保有資産額 : 1,392,520 円
評価損益 : +100,000 円
評価損益率 : +7.74%
===============================================================================================
年間配当金(税引前): 45,000 円
年間配当金(税引後): 35,858 円
配当利回り(取得額ベース): 3.48%
配当利回り(評価額ベース): 3.23%
===============================================================================================
License
This project is licensed under the GNU General Public License v3.0 or later - see the LICENSE file for details.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kabutam-0.1.9.tar.gz.
File metadata
- Download URL: kabutam-0.1.9.tar.gz
- Upload date:
- Size: 39.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a5d1c9ce9ad390553b8538b7282d77dda9459dec67456fd9ffe747b2db0a16d
|
|
| MD5 |
065a489ab2c80326c0729dc92fba1e05
|
|
| BLAKE2b-256 |
a0e7047736790adf0c3a664f0af6045d8136d4a6515865f1a5942109921125ca
|
Provenance
The following attestation bundles were made for kabutam-0.1.9.tar.gz:
Publisher:
release.yml on tonrl/kabutam
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
kabutam-0.1.9.tar.gz -
Subject digest:
5a5d1c9ce9ad390553b8538b7282d77dda9459dec67456fd9ffe747b2db0a16d - Sigstore transparency entry: 2580030426
- Sigstore integration time:
-
Permalink:
tonrl/kabutam@3b1d8e2704625c6dfb044671652489c217a2f3e3 -
Branch / Tag:
refs/tags/v0.1.9 - Owner: https://github.com/tonrl
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@3b1d8e2704625c6dfb044671652489c217a2f3e3 -
Trigger Event:
push
-
Statement type:
File details
Details for the file kabutam-0.1.9-py3-none-any.whl.
File metadata
- Download URL: kabutam-0.1.9-py3-none-any.whl
- Upload date:
- Size: 42.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c6fdc904db2cd11f641bc2d608d345933bfc80f5d076561c62430816e2f8dbe7
|
|
| MD5 |
73e2caac0f935c68d36a081159208cb6
|
|
| BLAKE2b-256 |
e7e8ada69784b95121b2c2171a86e00958078670be42f863318c1c7d25678b2c
|
Provenance
The following attestation bundles were made for kabutam-0.1.9-py3-none-any.whl:
Publisher:
release.yml on tonrl/kabutam
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
kabutam-0.1.9-py3-none-any.whl -
Subject digest:
c6fdc904db2cd11f641bc2d608d345933bfc80f5d076561c62430816e2f8dbe7 - Sigstore transparency entry: 2580030429
- Sigstore integration time:
-
Permalink:
tonrl/kabutam@3b1d8e2704625c6dfb044671652489c217a2f3e3 -
Branch / Tag:
refs/tags/v0.1.9 - Owner: https://github.com/tonrl
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@3b1d8e2704625c6dfb044671652489c217a2f3e3 -
Trigger Event:
push
-
Statement type: