Skip to main content

Binance-first trading CLI for balances, market data, opportunity scanning, and execution.

Project description

CoinHunter Banner

Typing SVG

A Binance-first crypto trading CLI for balances, market data, opportunity scanning, and execution.


Install

For end users, install from PyPI with pipx (recommended) to avoid polluting your system Python:

pipx install coinhunter
coinhunter --help

Check the installed version:

coinhunter --version

To update later:

pipx upgrade coinhunter

Initialize runtime

coinhunter init
coinhunter init --force

This creates:

  • ~/.coinhunter/config.toml
  • ~/.coinhunter/.env
  • ~/.coinhunter/logs/

config.toml stores runtime and strategy settings. .env stores:

BINANCE_API_KEY=
BINANCE_API_SECRET=

Override the default home directory with COINHUNTER_HOME.

Commands

By default, CoinHunter prints human-friendly TUI tables. Add --agent to any command to get JSON output (or compact pipe-delimited tables for large datasets).

# Account
coinhunter account overview
coinhunter account overview --agent
coinhunter account balances --spot --futures
coinhunter account positions --spot

# Market
coinhunter market tickers BTCUSDT ETH/USDT sol-usdt
coinhunter market klines BTCUSDT ETHUSDT --interval 1h --limit 50

# Trade (Spot)
coinhunter trade spot buy BTCUSDT --quote 100 --dry-run
coinhunter trade spot sell BTCUSDT --qty 0.01 --type limit --price 90000

# Trade (Futures)
coinhunter trade futures buy BTCUSDT --qty 0.01 --dry-run
coinhunter trade futures sell BTCUSDT --qty 0.01 --reduce-only
coinhunter trade futures close BTCUSDT

# Opportunities
coinhunter opportunity portfolio
coinhunter opportunity scan
coinhunter opportunity scan --symbols BTCUSDT ETHUSDT SOLUSDT

# Self-update
coinhunter update

update will try pipx upgrade coinhunter first, and fall back to pip install --upgrade coinhunter if pipx is not available.

Architecture

CoinHunter V2 uses a flat, direct architecture:

Layer Responsibility Key Files
CLI Single entrypoint, argument parsing cli.py
Binance Thin API wrappers with unified error handling binance/spot_client.py, binance/um_futures_client.py
Services Domain logic services/account_service.py, services/market_service.py, services/trade_service.py, services/opportunity_service.py
Config TOML config, .env secrets, path resolution config.py
Runtime Paths, TUI/JSON/compact output runtime.py
Audit Structured JSONL logging audit.py

Logging

Audit logs are written to:

~/.coinhunter/logs/audit_YYYYMMDD.jsonl

Events include:

  • trade_submitted
  • trade_filled
  • trade_failed
  • opportunity_portfolio_generated
  • opportunity_scan_generated

Development

Clone the repo and install in editable mode:

git clone https://git.tacitlab.cc/TacitLab/coinhunter-cli.git
cd coinhunter-cli
pip install -e ".[dev]"

Run quality checks:

pytest tests/           # run tests
ruff check src tests     # lint
mypy src                 # type check

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

coinhunter-2.0.2.tar.gz (24.5 kB view details)

Uploaded Source

Built Distribution

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

coinhunter-2.0.2-py3-none-any.whl (23.7 kB view details)

Uploaded Python 3

File details

Details for the file coinhunter-2.0.2.tar.gz.

File metadata

  • Download URL: coinhunter-2.0.2.tar.gz
  • Upload date:
  • Size: 24.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for coinhunter-2.0.2.tar.gz
Algorithm Hash digest
SHA256 17b8383082feb4a581b374e7f5e3a73b236a66ffe2413e15073d703323e90c5c
MD5 2d1b1edf75cbcd62104eb55f3233d7e6
BLAKE2b-256 968cd6e9131f06facc63a24d0329248c52a517b1796158dfc66c7df982467a80

See more details on using hashes here.

File details

Details for the file coinhunter-2.0.2-py3-none-any.whl.

File metadata

  • Download URL: coinhunter-2.0.2-py3-none-any.whl
  • Upload date:
  • Size: 23.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for coinhunter-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 36ceaade2e77a2802c6e0c715ba259bcb392696e19676722600e4adc411c0ef1
MD5 83c3002c8fd7986230b726bace4874fd
BLAKE2b-256 11391e8a8a5b8e6781c0bbf1b687caeb13a6e3c0d6f02c4fa5bc88852280ecea

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