Files
easy-tdx/src/easy_tdx/cli/__init__.py
T
Justin Gu 29b6ca33aa feat(cli): 新增 finance-info / company-info / company-info-content 命令
把 TdxClient 上已封装但未暴露给 CLI 的三个 F10/财务方法做成命令,
数据源走通达信原生协议(与 Web 层 /finance /company/* 同源),
覆盖 f10(新浪三表)之外的 F10 全文板块。

- finance-info: 最新财务快照(37 字段单期指标),与 f10 多期三表互补
- company-info: F10 板块目录(最新提示/公司概况/财务分析/... 等 16 板块)
- company-info-content: 读 F10 正文,支持板块名(自动解析)或文件名
  --offset 语义随入参而定:板块名=板块内相对偏移,文件名=绝对偏移
- conn.py: 新增 get_tdx_client() 上下文管理器

补 README 命令表与 CHANGELOG。
2026-06-27 04:02:09 +08:00

99 lines
2.6 KiB
Python

"""easy-tdx CLI -- Agent 友好的通达信行情命令行工具。"""
from __future__ import annotations
import click
from ..backtest.cli import backtest, portfolio
from ..screen.cli import screen
from .cmd_admin import ping, version
from .cmd_announcement import announcement
from .cmd_auction import auction
from .cmd_board import (
belong_board,
board_change_ranking,
board_list,
board_members,
board_ranking,
board_summary,
)
from .cmd_capital import capital_flow
from .cmd_chanlun import chanlun
from .cmd_company import company_info, company_info_content, finance_info
from .cmd_ex import ex
from .cmd_factor import factor
from .cmd_finance import f10, fund_flow
from .cmd_indicator import indicator, indicator_list
from .cmd_info import server_info, symbol_info
from .cmd_kline import kline
from .cmd_monitor import market_stat, unusual
from .cmd_offline import offline
from .cmd_pfactor import pfactor
from .cmd_quote import quote, quote_list
from .cmd_run_all import run_all
from .cmd_tick import tick
from .cmd_transaction import transaction
from .cmd_web import serve
@click.group()
@click.version_option(
version=__import__("importlib.metadata", fromlist=["version"]).version("easy-tdx"),
prog_name="easy-tdx",
)
def cli() -> None:
"""easy-tdx -- 通达信行情数据 CLI(默认 JSON 输出,适合 Agent 使用)。
所有命令默认输出 JSON。使用 --table 切换为表格,--output 指定格式。
示例:
easy-tdx ping
easy-tdx kline SZ 000001 --table
easy-tdx quote "SZ 000001,SH 600519"
easy-tdx quote-list A --count 20 --table
"""
pass
cli.add_command(ping)
cli.add_command(version)
cli.add_command(announcement)
cli.add_command(kline)
cli.add_command(quote)
cli.add_command(quote_list)
cli.add_command(tick)
cli.add_command(transaction)
cli.add_command(auction)
cli.add_command(board_list)
cli.add_command(board_members)
cli.add_command(board_ranking)
cli.add_command(board_change_ranking)
cli.add_command(board_summary)
cli.add_command(belong_board)
cli.add_command(capital_flow)
cli.add_command(unusual)
cli.add_command(market_stat)
cli.add_command(server_info)
cli.add_command(symbol_info)
cli.add_command(f10)
cli.add_command(fund_flow)
cli.add_command(finance_info)
cli.add_command(company_info)
cli.add_command(company_info_content)
cli.add_command(ex)
cli.add_command(indicator)
cli.add_command(indicator_list)
cli.add_command(offline)
cli.add_command(chanlun)
cli.add_command(factor)
cli.add_command(pfactor)
cli.add_command(backtest)
cli.add_command(portfolio)
cli.add_command(run_all)
cli.add_command(screen)
cli.add_command(serve)