tushare-data について
tushare-dataは、自然言語による金融調査の依頼をTushareのデータ取得ワークフローに変換するスキルです。相場、財務、評価、資金フロー、ニュース、マクロデータを扱い、データ検査や口径の説明、再利用可能な出力を重視します。売買助言や自動注文は行いません。
主な機能
- 01調査意図に応じたデータインターフェース選択
- 02相場・財務・評価データの分析
- 03資金フローとニュースの整理
- 04権限・パラメーター・データ品質の確認
- 05CSVまたはparquetへの出力
- 06口径を明記した調査要約の作成
活用シーン
- 01銘柄の値動きと財務推移の確認
- 02複数企業の比較や銘柄スクリーニング
- 03セクター・資金フロー・マクロデータの分析
- 04追加調査向けの相場データ出力
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ waditu-tushare/ skills --skill tushare-dataインストール後、Claude Code で/tushare-dataを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/数据接口.mdscripts/fund_data_demo.pystock_data_demo.py詳細
tushare-data
自然言語による金融データのリクエストを、実行可能な Tushare データワークフローに変換します。
自然言語に対応した金融データリサーチスキルです。
このスキルの用途
このスキルは、次のような場面で使用します。
- 特定の株式、指数、ETF の最近の動向を確認する
- 企業の基本情報、バリュエーション、財務の推移を調べる
- 複数の銘柄を横断的に比較する
- 資金フロー、北向資金、龍虎榜、セクターの強弱を確認する
- 開示情報、ニュース、調査レポート、政策の手がかりを整理する
- CPI/PPI/PMI/社会融資総量/金利などのマクロデータを確認する
- 以降の分析やバックテスト用に CSV/parquet をエクスポートする
- 生のフィールド一覧を出すだけでなく、簡潔なリサーチ要約を作成する
まずユーザーが解決したい課題を理解し、そのうえで API を選択し、データを取得・整理・解釈して提供します。
使用するタイミング
ユーザーが次のような意図を示した場合は、優先的にこのスキルを使用します。
相場/トレンド
- XX の最近の状況を見て
- XX はここしばらくどれくらい上昇した?
- 年初来のパフォーマンスはどう?
- 最近、出来高は増えている?
- この銘柄は最近強い?
財務/バリュエーション/企業の質
- XX の財務諸表を見て
- 直近数四半期の利益の推移は?
- 財務の質はどう?
- キャッシュフローは良好?
- 現在のバリュエーションは高い?
- PE/PB/ROE/粗利益率を見て
比較/ランキング/スクリーニング
- XX と YY はどちらが強い?
- 横断的に比較して
- 利益がより速く成長している企業は?
- ROE が高く負債の少ない企業をスクリーニングして
- 上位10社をランキングして
セクター/指数/テーマ
- 最近、最も強いセクターは?
- 半導体の最近の動向は?
- ロボット関連株はなぜ上がっている?
- 指数の構成銘柄は?
- どのテーマが最も注目されている?
資金フロー/センチメント
- 最近、資金は何を買っている?
- 北向資金は最近どこに流れている?
- 最も資金を集めているセクターは?
- 主力資金の流入が最も多いのは?
- 龍虎榜の注目点は?
開示情報/ニュース/調査レポート/政策
- 最近、どんな開示情報があった?
- XX の開示情報を整理して
- 最近、何か材料はあった?
- 最近のニュースはどう?
- 最近、重要な政策はあった?
マクロ/クロスマーケット
- 最近のマクロ環境はどう?
- CPI/PMI の最近の動向は?
- 現在の市場のスタイルは?
- 市場全体の環境は強気?それとも弱気?
- 香港株/米国株/米国債の最近の動向は?
データのエクスポート/リサーチの準備
- 相場データをエクスポートして
- 直近2年分の日足データを CSV にして
- バックテストに使えるデータテーブルを作成して
- 以降の分析に使うリサーチ用テーブルを取得して
このスキルの対象外
このスキルは、次の用途には適していません。
- 売買を直接推奨したり、投資アドバイザーの代わりを務めたりすること
- 自動で注文を出したり、取引を実行したりすること
- ミリ秒単位のリアルタイム取引判断が必要な場面
- 複雑なバックテストエンジンやポートフォリオ最適化システム自体の実装(それは別のプロジェクトです)
- Tushare の権限/ポイントがない状態でデータを捏造すること
データへのアクセス権が不十分な場合、API が利用できない場合、または期間が適切でない場合は、制約を明確に伝え、無理に情報を作り上げないでください。
自然言語によるトリガーガイド
ユーザーが tushare、financials、macro などの用語をまったく使っていなくても、意図が以下の内容に当てはまる場合は、このスキルを起動します。
よくある口語表現
- この株の最近の状況を見て
- XX を手早く調べて
- 前に話した銘柄は今どうなっている?
- 財務諸表を見て
- 最近、最も強いセクターは?
- 北向資金は最近何を買っている?
- 何か材料はある?
- この企業を重点的に調べる価値はある?
- データを取得して
- CSV にエクスポートして
- 銘柄をいくつかスクリーニングして
- この企業をいくつか比較して
中国語の自然言語を優先する原則
ユーザーが自然な言葉で話している場合は、まずタスクを理解し、API 名やフィールド名から考え始めないでください。 次のように解釈することを優先します。
- 「最近」は妥当な期間に置き換える
- 「財務諸表」は直近8四半期/直近年度として解釈する
- 「強いかどうか」は値動き+相対的な強弱+活発度として解釈する
- 「資金の注目」は純流入、活発な取引、龍虎榜/北向資金など、利用可能な指標として解釈する
解釈が複数あり得る場合は、必要最小限の確認を行います。
環境の確認
データをリクエストする前に、次の前提条件を確認します。
- Python が利用可能か、バージョンが 3.7 以上かを確認する
tushareパッケージがインストールされているか確認するTUSHARE_TOKENが設定されているか確認する- 必要に応じて、取引カレンダー/基本 API などで軽量な疎通テストを行う
- ユーザーが高い権限を必要とする API をリクエストした場合、ポイント/権限の制限がある可能性を事前に伝える
トークンが設定されていない場合は、次のように最短の解決手順を案内します。
export TUSHARE_TOKEN=your_token
メインクエリが失敗してから環境の問題を伝えることがないようにしてください。
意図の分類
まずタスクの種類を特定し、その後で API の組み合わせを決定します。
1. 相場/トレンド
典型的な質問:
- 最近の値動きはどう?
- 年初来でどれくらい上昇した?
- 最近、値動きは大きい?
- 最近、出来高は増えている?
よく使用する API:
dailypro_barweeklymonthlystk_minsrt_k/rt_min(リアルタイムの指標が必要で、権限がある場合)daily_basic
2. 基本情報/銘柄の特定
典型的な質問:
- これはどんな企業/指数/ファンド?
- ChiNext の銘柄?/ST 銘柄?/いつ上場した?
よく使用する API:
stock_basicfund_basicindex_basicstock_companystock_st/st
3. 財務/企業の質
典型的な質問:
- 直近数四半期の利益の推移は?
- 直近数四半期の売上高と純利益の推移は?
- 財務の質はどう?
- ROE/粗利益率/キャッシュフローはどう?
よく使用する API:
income(売上高/純利益の推移を優先)fina_indicator(ROE/粗利益率/純利益率など、企業の質を示す指標を補足)balancesheetcashflowforecastexpressdisclosure_date
4. バリュエーション/ファンダメンタル指標
典型的な質問:
- 現在のバリュエーションは高い?
- どちらのほうが割安?
- PE/PB/配当利回りはどう?
よく使用する API:
daily_basicfina_indicator
5. 資金フロー/市場行動
典型的な質問:
- 北向資金は最近何を買っている?
- 主力資金の流れは?
- 龍虎榜の状況は?
よく使用する API:
moneyflowmoneyflow_hsgthsgt_top10top_listtop_instmoneyflow_ind_dcmoneyflow_mkt_dc
6. セクター/指数/テーマ
典型的な質問:
- 最近、最も強いセクターは?
- 業種のローテーションはどう?
- 特定セクターの構成銘柄は?
よく使用する API:
index_basicindex_dailyindex_classifyindex_member_allsw_dailyths_indexths_memberdc_indexdc_member
7. ストップ高/センチメント/活発度
典型的な質問:
- 今日のストップ高の段階構造は?
- 連続ストップ高の構造は?
- ストップ高未達率/センチメントの強弱は?
よく使用する API:
limit_list_dlimit_stepkpl_listdc_hotths_hot
8. 開示情報/ニュース/調査レポート/政策
典型的な質問:
- 最近、開示情報や材料はあった?
- 最近、調査レポートは発表された?
- 最近、政策面で何が起きた?
よく使用する API:
anns_dnewsmajor_newsresearch_reportnprirm_qa_shirm_qa_sz
9. マクロ/クロスマーケット
典型的な質問:
- CPI/PMI/社会融資総量/M2
- 金利とイールドカーブ
- 香港株/米国株/米国債のデータ
よく使用する API:
cn_cpicn_ppicn_pmicn_gdpcn_msf_monthshiborshibor_lprus_tycrus_dailyhk_dailyindex_global
10. エクスポート/リサーチの準備
典型的な質問:
- 特定の銘柄の一定期間の相場データをエクスポートする
- バックテスト用のデータテーブルを作成する
- CSV/parquet を出力する
よく使用する API:
- 上流のタスクに応じて選択します。統一された出力ルールと命名規則が重要です
エンティティ解決ルール
銘柄の特定
- 株式名、株式コード、指数名、ETF 名、ファンド名を優先的に特定する
- 中国語の略称は、まず標準の対象に照合する
- 同じ名前の候補が複数ある場合は候補を列挙し、必要最小限の確認を行う
- 証券コードは内部で
600519.SH、000001.SZのような標準形式に統一する
市場の特定
- ユーザーが香港株/米国株/ファンド/債券/先物を明示しない限り、まず A 株として扱う
- 指数、ETF、個別銘柄を区別し、API を混同しない
時間のデフォルト値
ユーザーが時間範囲を明示していない場合は、適切なデフォルト値を使用します。
- 「最近の動向」→ デフォルトで直近20取引日
- 「この期間/最近の一定期間」→ デフォルトで直近3か月
- 「決算/業績」→ デフォルトで直近8四半期+直近年度
- 「資金フローは最近どうか」→ デフォルトで直近5~20取引日。タスクの粒度に応じて調整します
- 「マクロは最近どうか」→ デフォルトで直近6~12期を確認します
セクター分類のデフォルト値
ユーザーが「セクター/業種/テーマ」のみを指定し、分類体系を指定していない場合:
- 業種には、申万/中信など、比較的安定した分類を優先します
- テーマには、同花順/東方財富などのテーマ分類を優先します
- 結論が具体的な分類基準の違いに左右される場合は、使用した分類を明記します
入力の正規化ルール
データをリクエストする前に、まず正規化します。
- 日付は
YYYYMMDDに統一します start_date <= end_dateであることを確認します- ユーザーが未来の日付を入力した場合は、利用可能な最新日まで自動的に切り詰め、その旨を伝えます
- コードだけの入力(例:
000001)を安易に推測しません。補完できる場合は補完ルールを説明し、できない場合は確認します trade_dateとstart_date/end_dateが同時に指定されているなど、パラメーターが競合する場合は、先に判断し、無造作にそのまま渡さないでください
データ取得ルール
ドキュメントを先に確認
リクエストコードを書く前に、次の点を確認します。
- インターフェース名が正しいか
- 必須パラメーター
- オプションパラメーター
- 戻り値のフィールド
- ポイント/頻度制限
記憶だけを頼りにフィールド名を記述しないでください。
フィールドの確認
fields パラメーターには、既知のフィールドのホワイトリスト、またはインターフェースドキュメントで確認したものを優先して使用します。
ユーザーが要求したフィールドが存在しない場合は、無作為に検索せず、その旨を明確に伝えます。
デフォルトで分割取得
長期間のデータを一度にすべて取得しないでください。 次のように分割することを推奨します。
- 日足/週足/月足:年または四半期ごとに分割
- 決算:年/報告期間ごとに分割
- 分足データ:月/週ごとに分割
- 大量の複数銘柄データ:銘柄ごとにバッチ処理し、さらに日付範囲を分割
リトライとレート制限
- 一時的なエラー(ネットワークの不安定、タイムアウト、429)のみ、回数を限定してリトライします
- パラメーターエラー、権限不足、フィールドエラーは、むやみにリトライしません
- バッチ取得時は間隔を設け、高頻度のリクエストで制限に抵触しないようにします
分割データの統合
分割して取得した後は、次の処理を行います。
- 統合
- 重複排除
- 主キーでソート
- 失敗した分割を記録
- 一部のみ成功した場合は、失敗した分割をユーザーに明確に伝えます
出力の契約
ユーザーが生のテーブルのみを明示的に求めている場合を除き、次の構成を優先します。
- 一文での結論
- データ範囲と分類基準
- 主要指標/主要テーブル
- 異常点/リスク/解釈上の制約
- ローカルに出力した場合は、ファイルパス
結果の提供形式
タスクの複雑さに応じて選択します。
- 小規模な結果:Markdown の要約+簡潔な表
- 中規模のデータテーブル:CSV
- 大規模データ/後続の分析用:Parquet
- 再利用可能なプロセスが必要な場合:Python スクリプトを添付
- 可視化が必要な場合:グラフを PNG で出力するか、作成可能なグラフを説明
メタ情報
データファイルを生成する際は、できるだけ次の情報も記録します。
- インターフェース名
- リクエストパラメーター
- 取得日時
- データ行数
- フィールド一覧
- 失敗した分割/欠損の有無
ワークフローテンプレート
以下のテンプレートは、この skill の中核です。 インターフェースから考え始めるのではなく、タスクテンプレートから考えてください。
1. 単一銘柄の相場分析
用途:
- XX の最近の状況を見て
- この銘柄は最近強い?
- 年初来のパフォーマンスは?
デフォルトの手順:
- 銘柄を特定します
- 時間範囲を決定します
- 相場データと必要な基本指標を取得します
- 期間中の騰落、取引の活発度、高値・安値、変動を要約します
- 一文での結論と主要数値を出力します
2. 複数銘柄の比較
用途:
- XX と YY はどちらが強い?
- この会社群を比較して
デフォルトの手順:
- 対象を確定します
- 時間の基準を統一します
- 主要指標を3~5個選びます
- 比較表を出力します
- 「どの点でどちらが優れているか」をまとめます
3. 財務品質のスナップショット
用途:
- XX の決算を見て
- 直近数四半期の利益推移
- 財務品質はどうか
デフォルトの手順:
- 直近8四半期+直近年度の財務主要データを取得します
- 売上高、利益、売上総利益率、ROE、キャッシュフローを区別します
- 改善/悪化/変動した点を示します
- 累計値、単四半期の値、前年同期比の基準を説明します
4. バリュエーション分析/スクリーニング
用途:
- 現在のバリュエーションは高い?
- どちらが割安?
- 低バリュエーション・高配当利回りの銘柄をスクリーニングして
デフォルトの手順:
- 対象銘柄群を明確にします
daily_basicなどのバリュエーション指標を取得します- 必要に応じて財務品質の分析と連携します
- 順位、極値、分類基準の説明を出力します
5. 資金フローの追跡
用途:
- 最近、資金は何を買っている?
- 最近、北向き資金はどこに流れている?
- 主力資金の流入が最も多い銘柄は?
デフォルトの手順:
- 資金の分類(北向き/主力/龍虎榜/セクター資金)を明確にします
- 期間を決定します
- 純流入額/取引の活発度/継続性を取得します
- 株価の動きと関連付けて説明します
- 単日のノイズをトレンドとして扱わないようにします
6. セクター/テーマのローテーション分析
用途:
- 最近、最も強いセクターは?
- ロボット関連は最近どの点が強い?
- あるテーマセクターの構成銘柄は?
デフォルトの手順:
- 分類基準を決定します
- セクターの期間中のパフォーマンスを取得します
- 必要に応じて構成銘柄、資金フロー、ストップ高銘柄の勢いと連携します
- 強いセクターのランキングと代表銘柄を出力します
7. 発表/ニュース/イベントの整理
用途:
- 最近、何か発表はあった?
- 何か株価を動かす材料はある?
- 最近のニュース面はどうか
デフォルトの手順:
- 対象と期間を明確にします
- 発表/ニュース/調査レポート/政策データを取得します
- ノイズを除去し、主要なテーマを3~5件抽出します
- 事実、発表、メディアの解釈を区別します
- 必要に応じて株価の急変と関連付け、因果関係を控えめに説明します
8. データのエクスポートと調査の準備
用途:
- CSV を取得して
- バックテスト用のデータテーブルを作成して
- 特定期間の相場データ/財務データをエクスポートして
デフォルトの手順:
- データ範囲、頻度、フィールドを明確にします
- 分割戦略を用いてデータを取得します
- クレンジング、重複排除、フィールド型の統一を行います
- CSV/parquet を出力します
- ファイルパスとメタ情報を提示します
9. 総合調査ブリーフィング
用途:
- XX を手早く調査して
- 投資家向けのブリーフィングを作成して
- まず全体像を判断して
デフォルトの手順:
- 一文での結論
- 相場の動き
- 財務の推移
- バリュエーション水準
- 資金フローの状況
- 発表/ニュースによる材料
- リスク
- さらに掘り下げる価値のある論点
データ品質ルール
データ取得後、少なくとも次のチェックを行います。
- スキーマの検証
- 主要フィールドの存在確認
- 主キーの重複排除
- 固定順でのソート
- 日付の標準化
- 数値フィールドの型の正規化
結果が空の場合の処理
テーブルが空でも、必ずしも失敗とは限りません。次を区別します。
- 取引日ではない
- 期間内にデータがない
- 株式が未上場
- パラメーターエラー
- インターフェースの権限不足
空の結果をすべて「インターフェースが壊れている」と説明しないでください。
キャッシュと再利用のルール
skill を長期的に再利用できるよう、次を優先的にサポートします。
- 基本テーブルのキャッシュ(
stock_basic、取引カレンダー、指数の基本情報など) - 毎回すべてを再取得するのではなく、増分更新
- 大規模タスクの中断地点からの再開
- 結果ファイルの命名規則の統一
推奨する命名形式:
daily_600519.SH_20230101_20231231_20260322.csvfina_indicator_300750.SZ_20260322.parquet
キャッシュが使われた場合は、キャッシュ由来のデータと新たに取得したデータを説明するのが望ましいです。
エラー処理
エラーは「ユーザーに分かりやすい説明+デバッグの詳細」という階層で出力することを優先します。
ユーザー向けの説明
- トークンが設定されていません
- 現在のインターフェースには、より高いポイント/権限が必要な可能性があります
- 時間範囲が広すぎるため、自動的に分割して取得しました
- 株式名が一意ではありません。どの銘柄か確認してください
- 現在の結果は空です。該当日が取引日ではない/銘柄が未上場/権限がない可能性があります
デバッグ情報
必要に応じて、次の情報を追加します。
- インターフェース名
- パラメーター
- 失敗した分割
- 例外の原文
部分成功の原則
一部の分割に失敗した場合、「正常に完了しました」とは言わないでください。 次の点を明確に伝えてください。
- 成功した部分
- 失敗した部分
- 不完全な結果がすでに生成されているかどうか
推奨する最小限のインターフェースセット
メインの skill 本文に何百ものインターフェースを詰め込まないでください。 日常的なタスクの80%で使う主要なインターフェースセットを優先して覚えてください。
stock_basictrade_caldailypro_bardaily_basicfina_indicatorincomebalancesheetcashflowforecastexpressmoneyflowmoneyflow_hsgthsgt_top10top_listindex_basicindex_dailyindex_classifysw_dailyths_indexths_memberlimit_list_dlimit_stepnewsmajor_newsresearch_reportanns_dcn_cpicn_pmius_tycr
すべてのデータインターフェースについては、references/数据接口.md を参照してください。
Best practices
- 先理解任务,再选接口
- 能少取就少取,先核心数据,再扩展
- 先给结论,再给证据
- 默认说人话,不堆字段名
- 对“最近 / 财报 / 强不强 / 资金关注”这类模糊中文表达,要有合理默认口径
- 大任务先给执行计划,再开跑
- 导出任务尽量保留脚本、元信息、文件路径,方便复用
Examples
单票行情
- 看下宁德时代最近三个月走势
- 茅台今年以来涨了多少
- 招行这两年最大回撤大概多少
财务 / 估值
- 看下比亚迪最近 8 个季度营收和净利润趋势
- 茅台现在估值算高吗
- 帮我找高 ROE 低负债的公司
对比
- 比一下茅台、五粮液、泸州老窖近一年的涨幅和估值
- 对比一下沪深300、中证500、创业板今年表现
资金流 / 板块
- 今天北向资金流入最多的股票有哪些
- 最近哪个板块最强
- 半导体板块最近一个月强不强
公告 / 事件
- 帮我梳理下寒武纪最近的重要公告
- 最近机器人板块有什么消息面催化
宏观
- 看一下最近 CPI、PPI、PMI 变化
- 当前市场风格偏成长还是价值
导出
- 把沪深300成分股近两年日线导成 CSV
- 下载宁德时代 2020 到现在的复权行情
- 把最近 3 年 ROE、PE、PB、营收增速拉成一个表
Quick rule
当用户在说:
- 看走势
- 查财报
- 比较公司
- 看板块
- 看资金流
- 梳理公告新闻
- 看宏观
- 拉数据导出
就不要先想“有哪些接口”。 先想: 这是什么任务?默认该走哪条数据工作流?结果应该怎样交付才真正有用?