@dsh-ft/dsh-fft-ftshare 0.0.0-stage → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +80 -2
- package/catalog.json +9762 -0
- package/catalog.meta.json +7 -0
- package/catalog.txt +250 -0
- package/cordis.patch.yml +27 -0
- package/lib/capabilities.d.ts +47 -0
- package/lib/capabilities.d.ts.map +1 -0
- package/lib/capabilities.js +145 -0
- package/lib/capabilities.js.map +1 -0
- package/lib/catalog-host.d.ts +19 -0
- package/lib/catalog-host.d.ts.map +1 -0
- package/lib/catalog-host.js +31 -0
- package/lib/catalog-host.js.map +1 -0
- package/lib/catalog.d.ts +51 -0
- package/lib/catalog.d.ts.map +1 -0
- package/lib/catalog.js +60 -0
- package/lib/catalog.js.map +1 -0
- package/lib/client.d.ts +52 -0
- package/lib/client.d.ts.map +1 -0
- package/lib/client.js +149 -0
- package/lib/client.js.map +1 -0
- package/lib/contract.d.ts +122 -0
- package/lib/contract.d.ts.map +1 -0
- package/lib/contract.js +24 -0
- package/lib/contract.js.map +1 -0
- package/lib/errors.d.ts +93 -0
- package/lib/errors.d.ts.map +1 -0
- package/lib/errors.js +261 -0
- package/lib/errors.js.map +1 -0
- package/lib/index.d.ts +64 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +160 -0
- package/lib/index.js.map +1 -0
- package/lib/mask.d.ts +66 -0
- package/lib/mask.d.ts.map +1 -0
- package/lib/mask.js +106 -0
- package/lib/mask.js.map +1 -0
- package/lib/project.d.ts +98 -0
- package/lib/project.d.ts.map +1 -0
- package/lib/project.js +326 -0
- package/lib/project.js.map +1 -0
- package/lib/route.d.ts +48 -0
- package/lib/route.d.ts.map +1 -0
- package/lib/route.js +90 -0
- package/lib/route.js.map +1 -0
- package/lib/tools.d.ts +31 -0
- package/lib/tools.d.ts.map +1 -0
- package/lib/tools.js +132 -0
- package/lib/tools.js.map +1 -0
- package/lib/transport.d.ts +53 -0
- package/lib/transport.d.ts.map +1 -0
- package/lib/transport.js +147 -0
- package/lib/transport.js.map +1 -0
- package/package.json +91 -4
package/catalog.txt
ADDED
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
ft_v1_abnormal_trading_details | 龙虎榜明细 | date,page,page_size
|
|
2
|
+
ft_v1_abnormal_trading_overview | 龙虎榜总览 | date,page,page_size
|
|
3
|
+
ft_v1_block_trades | 大宗交易 | date,page,page_size
|
|
4
|
+
ft_v1_bse_mapping | 北交所映射 | n_code,new_code,o_code,old_code,page,page_size
|
|
5
|
+
ft_v1_bullion_price | 贵金属价格 | end_date*,page*,page_size*,start_date*,symbol*
|
|
6
|
+
ft_v1_cb_cb_lists | 可转债列表 |
|
|
7
|
+
ft_v1_chinabond_yield_daily | 中债收益率日数据 | curve_name,end_date*,page,page_size,start_date*
|
|
8
|
+
ft_v1_company_list | 公司列表 | page,page_size,stock_code,stock_name
|
|
9
|
+
ft_v1_convertible_bond_candlesticks | 可转债历史K线 | adjust_kind,interval_unit*,interval_value,limit,since_ts_millis*,symbol*,until_ts_millis*
|
|
10
|
+
ft_v1_convertible_bond_szse_directed_trades | 深交所可转债定向交易 | end_date,page,page_size,security_code,start_date,trade_date
|
|
11
|
+
ft_v1_convertible_bond_szse_matching_trades | 深交所可转债匹配成交 | end_date,page,page_size,security_code,start_date,trade_date
|
|
12
|
+
ft_v1_convertible_bond_szse_negotiated_trades | 深交所可转债协商成交 | end_date,page,page_size,security_code,start_date,trade_date
|
|
13
|
+
ft_v1_corporate_contract | 重大合同 | end_date*,start_date*
|
|
14
|
+
ft_v1_corporate_contract_by_symbol | 重大合同按标的 | page,page_size,symbol*
|
|
15
|
+
ft_v1_corporate_contract_summary | 重大合同汇总 | page,page_size
|
|
16
|
+
ft_v1_corporate_meeting | 股东大会 | page,page_size
|
|
17
|
+
ft_v1_daec_history_prev_closes | 标的昨收价 | since*,symbol*,until*
|
|
18
|
+
ft_v1_daec_market_snapshot | 市场行情快照 | scope
|
|
19
|
+
ft_v1_daec_stocks | A股行情列表 | filter,order_by,page,page_size
|
|
20
|
+
ft_v1_eastmoney_all_board_daily_ohlc | 东方财富全板块日线 OHLC | end_date,page,page_size,start_date
|
|
21
|
+
ft_v1_eastmoney_board_constituents | 东方财富板块成分股 | board_code*,date,page,page_size
|
|
22
|
+
ft_v1_eastmoney_board_daily_ohlc | 东方财富板块日线OHLC | board_code*,end_date,page,page_size,start_date
|
|
23
|
+
ft_v1_eastmoney_concept_boards | 东方财富概念板块 |
|
|
24
|
+
ft_v1_eastmoney_dapan_flow | 东方财富大盘资金流 | end_date,page,page_size,start_date,trade_date
|
|
25
|
+
ft_v1_eastmoney_etf_flow | 东方财富 ETF 资金流 | end_date,page,page_size,start_date,symbol,trade_date
|
|
26
|
+
ft_v1_eastmoney_futures_position | 东方财富期货持仓 | contract_code,end_date,exchange,member_name_abbr,page,page_size,start_date,trade_date,variety_code
|
|
27
|
+
ft_v1_eastmoney_futures_strange | 东方财富期货龙虎榜 | contract*,exchange*,trade_date*,variety*
|
|
28
|
+
ft_v1_eastmoney_market_valuation | 东方财富市场估值 | end_date,market_code,page,page_size,start_date,trade_date
|
|
29
|
+
ft_v1_eastmoney_rank | 东方财富股票排名 | market,rank_group,trade_date
|
|
30
|
+
ft_v1_eastmoney_sector_flow | 东方财富板块资金流 | board_code,board_level,board_type,end_date,page,page_size,start_date,trade_date
|
|
31
|
+
ft_v1_eastmoney_stock_flow | 东方财富个股资金流 | end_date,page,page_size,start_date,symbol,trade_date
|
|
32
|
+
ft_v1_eastmoney_stock_valuation | 东方财富个股估值 | end_date,page,page_size,start_date,symbol,trade_date
|
|
33
|
+
ft_v1_eastmoney_us_stock_daily_ohlc | 东方财富美股日OHLC | end_date,page,page_size,start_date,stock_code
|
|
34
|
+
ft_v1_eastmoney_us_stock_list | 东方财富美股列表 | page,page_size,refresh
|
|
35
|
+
ft_v1_economic_china_cpi | CPI | page,page_size
|
|
36
|
+
ft_v1_economic_china_credit_loans | 社融信贷 | page,page_size
|
|
37
|
+
ft_v1_economic_china_customs_trade | 进出口 | page,page_size
|
|
38
|
+
ft_v1_economic_china_fiscal_revenue | 财政收入 | page,page_size
|
|
39
|
+
ft_v1_economic_china_fixed_asset_investment | 固定资产投资 | page,page_size
|
|
40
|
+
ft_v1_economic_china_gdp | GDP | file_ids,page,page_size
|
|
41
|
+
ft_v1_economic_china_industrial_added_value | 工业增加值 | file_ids,page,page_size
|
|
42
|
+
ft_v1_economic_china_lpr | LPR | page,page_size
|
|
43
|
+
ft_v1_economic_china_money_supply | 货币供应 | page,page_size
|
|
44
|
+
ft_v1_economic_china_pmi | PMI | page,page_size
|
|
45
|
+
ft_v1_economic_china_ppi | PPI | file_ids,page,page_size
|
|
46
|
+
ft_v1_economic_china_reserve_ratio | 存款准备金率 | file_ids,page,page_size
|
|
47
|
+
ft_v1_economic_china_retail_sales | 社零 | page,page_size
|
|
48
|
+
ft_v1_economic_china_tax_revenue | 税收 | page,page_size
|
|
49
|
+
ft_v1_economic_us_economic | 美国经济指标 | page,page_size,type*
|
|
50
|
+
ft_v1_etf_adjust_factor | ETF复权因子 | end_date,page,page_size,start_date,symbol,trade_date
|
|
51
|
+
ft_v1_etf_candlesticks | ETFK线 | adjust_kind,interval_unit*,interval_value,limit,since_ts_millis*,symbol*,until_ts_millis*
|
|
52
|
+
ft_v1_etf_pcf_etf_pcf_download | ETF PCF清单文件下载信息 | filename*
|
|
53
|
+
ft_v1_exchange_margin_summaries | 交易所融资融券汇总日度 | end_date*,exchange,page,page_size,start_date*
|
|
54
|
+
ft_v1_finance_balance | A股资产负债表 | page,page_size,report_type,stock_code,year
|
|
55
|
+
ft_v1_finance_cashflow | A股现金流量表 | page,page_size,report_type,stock_code,year
|
|
56
|
+
ft_v1_finance_financial_calendar_baidu | 百度财经日历 | category,end_date*,page,page_size,start_date*
|
|
57
|
+
ft_v1_finance_financial_calendar_wallstreetcn | 华尔街见闻财经日历 | end_date*,page,page_size,start_date*
|
|
58
|
+
ft_v1_finance_income | A股利润表 | page,page_size,report_type,stock_code,year
|
|
59
|
+
ft_v1_finance_stock_performance_express | 业绩快报 | page,page_size,report_type,stock_code,year
|
|
60
|
+
ft_v1_finance_stock_performance_forecast | 业绩预告 | page,page_size,report_type,stock_code,year
|
|
61
|
+
ft_v1_fund_fund_asset_allocation | 基金资产配置 | end_date,fund_code*,page,page_size,publish_date,report_date,start_date
|
|
62
|
+
ft_v1_fund_fund_basicinfo | 基金基础信息 | fund_code,page,page_size
|
|
63
|
+
ft_v1_fund_fund_cal_return | 基金收益 | cal-type*,fund_code*
|
|
64
|
+
ft_v1_fund_fund_classification | 基金分类 | classify_std,fund_code*
|
|
65
|
+
ft_v1_fund_fund_company | 基金公司 | fund_company,page,page_size
|
|
66
|
+
ft_v1_fund_fund_fee | 基金费率 | charge_type,client_type,fund_code*,page,page_size
|
|
67
|
+
ft_v1_fund_fund_holder_structure | 基金持有人结构 | end_date,fund_code*,report_type,start_date
|
|
68
|
+
ft_v1_fund_fund_list | 基金列表 | fund_code,fund_type,page,page_size
|
|
69
|
+
ft_v1_fund_fund_manager | 基金经理任职关系 | fund_code,fund_manager,is_inoffice,page,page_size
|
|
70
|
+
ft_v1_fund_fund_net_value | 基金净值明细 | end_date,fund_code*,nav_date,page,page_size,start_date
|
|
71
|
+
ft_v1_fund_fund_net_value_performance | 基金净值收益表现 | end_date,fund_code*,page,page_size,start_date,stat_date
|
|
72
|
+
ft_v1_fund_fund_new_found | 基金新发 | end_date,fund_type,page,page_size,start_date
|
|
73
|
+
ft_v1_fund_fund_overview | 基金总览 | page*,page_size*
|
|
74
|
+
ft_v1_fund_fund_portfolio | 基金持仓明细 | end_date,fund_code*,page,page_size,publish_date,report_date,start_date
|
|
75
|
+
ft_v1_fund_fund_risk_level | 基金风险等级 | fund_code*,history
|
|
76
|
+
ft_v1_fund_fund_share | 基金份额 | end_date,fund_code*,page,page_size,start_date,stati_perd
|
|
77
|
+
ft_v1_fund_fund_support_symbols | 基金支持标的 | page*,page_size*
|
|
78
|
+
ft_v1_futures_ft_limit | 期货涨跌停价格 | cont,end_date,exchange*,page,page_size,start_date,trade_date,ts_code
|
|
79
|
+
ft_v1_futures_fut_settle | 期货每日结算参数 | end_date,exchange*,page,page_size,start_date,trade_date,ts_code
|
|
80
|
+
ft_v1_futures_fut_weekly_detail | 期货周度持仓明细 | end_week,exchange,page,page_size,prd,start_week,week
|
|
81
|
+
ft_v1_futures_fut_wsr | 期货周度报告 | end_date,exchange,page,page_size,start_date,symbol,trade_date
|
|
82
|
+
ft_v1_futures_futures_base_data | 中国期货基础数据 | page,page_size,symbol,trade_date
|
|
83
|
+
ft_v1_futures_futures_lists | 中国期货列表 | trade_date
|
|
84
|
+
ft_v1_futures_kline | 期货合约历史K线 | end,interval,limit,start,symbol*
|
|
85
|
+
ft_v1_futures_nanhua_index_kline | 南华期货指数日 K 线 | code,end_date,page,page_size,start_date,trade_date
|
|
86
|
+
ft_v1_global_index_daily_kline | 全球指数日K线 | end_date,limit,secid*,start_date
|
|
87
|
+
ft_v1_goodwill_industry | 商誉行业 | date*,page,page_size
|
|
88
|
+
ft_v1_goodwill_market_overview | 商誉市场总览 |
|
|
89
|
+
ft_v1_goodwill_predict | 商誉预测 | date*,page,page_size
|
|
90
|
+
ft_v1_goodwill_stock_detail | 商誉个股明细 | date*,page,page_size
|
|
91
|
+
ft_v1_goodwill_stock_impairment | 商誉减值 | date*,page,page_size
|
|
92
|
+
ft_v1_hibor_daily | 香港银行同业拆息日数据 | end_date*,page,page_size,start_date*
|
|
93
|
+
ft_v1_hk_hsi_daily_weight | 恒生指数每日权重 | index_slug,page,page_size,stock_code,trade_date*
|
|
94
|
+
ft_v1_hk_stk_ah_comparison | AH股对比 | end_date,hk_code,page,page_size,start_date,trade_date,ts_code
|
|
95
|
+
ft_v1_holder_stock_ggcg_em | 东方财富股东增减持 | page,page_size,symbol*
|
|
96
|
+
ft_v1_holder_stock_ggmx | 董监高持股变动 | change_direction,end_date,page,page_size,start_date,stock_code
|
|
97
|
+
ft_v1_holder_stock_holder_ften | 十大流通股东 | is_last,page,page_size,stock_code
|
|
98
|
+
ft_v1_holder_stock_holder_nums | 股东人数 | is_last,page,page_size,stock_code
|
|
99
|
+
ft_v1_holder_stock_holder_ten | 十大股东 | is_last,page,page_size,stock_code
|
|
100
|
+
ft_v1_holder_stock_share_chg | 股东增减持 | is_last,page,page_size,stock_code
|
|
101
|
+
ft_v1_index_candlesticks | 指数K线 | adjust_kind,interval_unit*,interval_value,limit,since_ts_millis*,symbol*,until_ts_millis*
|
|
102
|
+
ft_v1_index_description_all | 指数基础信息 | page,page_size
|
|
103
|
+
ft_v1_index_index_description | 中证指数描述列表 | page,page_size
|
|
104
|
+
ft_v1_index_index_description_download | 指数说明文件下载信息 | url_hash*
|
|
105
|
+
ft_v1_index_index_weight | 指数权重列表 | date,index_code*,page,page_size
|
|
106
|
+
ft_v1_index_index_weight_download | 指数权重文件下载信息 | url_hash*
|
|
107
|
+
ft_v1_index_index_weight_summary | 指数权重汇总 | index_code*,page,page_size
|
|
108
|
+
ft_v1_intraday_auction_volume_symbol | 单标的连续竞价成交量 | page,page_size,symbol*,trade_date
|
|
109
|
+
ft_v1_libor_daily | 伦敦银行同业拆息日数据 | currency,end_date*,page,page_size,start_date*,tenor
|
|
110
|
+
ft_v1_limit_list | 涨跌停股票池 | limit_type*,page,page_size,trade_date
|
|
111
|
+
ft_v1_margin_trading_details | 融资融券明细 | date,page,page_size,stock
|
|
112
|
+
ft_v1_namechange | 股票曾用名 | end_date,start_date,trade_code*
|
|
113
|
+
ft_v1_northbound | 北向资金交易 | date*
|
|
114
|
+
ft_v1_pledge_pledge_detail | 股权质押明细 | is_last,page,page_size,stock_code
|
|
115
|
+
ft_v1_pledge_pledge_summary | 股权质押汇总 | page,page_size
|
|
116
|
+
ft_v1_report_announcements_list | 市场数据 v1:report-announcements/list | date*,page,page_size,sec_code
|
|
117
|
+
ft_v1_risk_warning_stocks | 风险警示股 | date*,page,page_size
|
|
118
|
+
ft_v1_search | 标的搜索 | limit,query*
|
|
119
|
+
ft_v1_shibor_daily | 上海银行同业拆放利率日数据 | end_date*,page,page_size,start_date*
|
|
120
|
+
ft_v1_shibor_quote_daily | SHIBOR 报价行日数据 | bank,end_date*,page,page_size,start_date*
|
|
121
|
+
ft_v1_southbound | 南向资金交易 | date*
|
|
122
|
+
ft_v1_stk_code_change | A股代码变更 | end_date,start_date,trade_code*
|
|
123
|
+
ft_v1_stk_code_change_timeline | A股代码变更时间线 |
|
|
124
|
+
ft_v1_stk_limit | 涨跌停价 | end_date,instrument_type,market_id,page,page_size,start_date,symbol*,symbol_id,trade_date
|
|
125
|
+
ft_v1_stk_manager_hold | 上市公司管理层持股 | end_date,trade_code*
|
|
126
|
+
ft_v1_stk_manager_pay | 上市公司管理层薪酬 | end_date,trade_code*
|
|
127
|
+
ft_v1_stk_managers | 上市公司管理层 | begin_date,candi_date,end_date,trade_code*
|
|
128
|
+
ft_v1_stk_status_change | A股状态变更 | change_date,change_type,trade_code
|
|
129
|
+
ft_v1_stock_adjust_factor | 股票复权因子 | end_date,page,page_size,start_date,symbol,trade_date
|
|
130
|
+
ft_v1_stock_candlesticks | 股票K线 | adjust_kind,interval_unit*,interval_value,limit,since_ts_millis,symbol*,until_ts_millis*
|
|
131
|
+
ft_v1_stock_candlesticks_daily | 股票日K快照 | page,page_size,trade_date*
|
|
132
|
+
ft_v1_stock_capital_flows | 股票资金流向 | date,page,page_size,symbol,time
|
|
133
|
+
ft_v1_stock_comment_desire | 千股千评意愿度 | symbol*
|
|
134
|
+
ft_v1_stock_comment_focus | 千股千评关注度 | symbol*
|
|
135
|
+
ft_v1_stock_comment_index | 千股千评 | page,page_size
|
|
136
|
+
ft_v1_stock_comment_org_participate | 机构参与度 | symbol*
|
|
137
|
+
ft_v1_stock_comment_score | 千股千评评分 | symbol*
|
|
138
|
+
ft_v1_stock_connect_members | 市场数据 v1:stock-connect-members | channel*,direction*,page,page_size
|
|
139
|
+
ft_v1_stock_description | 市场数据 v1:stock-description | page,page_size,symbol_id
|
|
140
|
+
ft_v1_stock_dividends | 市场数据 v1:stock-dividends | page,page_size,since_date,symbol,until_date
|
|
141
|
+
ft_v1_stock_history_list | 市场数据 v1:stock-history-list | board,code,fields,full,order,page,page_size,rank,trade_date*
|
|
142
|
+
ft_v1_stock_ipos | 股票IPO | page,page_size
|
|
143
|
+
ft_v1_stock_list | 股票列表 | page,page_size
|
|
144
|
+
ft_v1_stock_st_history | 股票历史风险警示区间 | st_type,symbol*
|
|
145
|
+
ft_v1_suspension_list | 停牌列表 | page,page_size,trade_date
|
|
146
|
+
ft_v1_sw_index_history_minutes | 市场数据 v1:sw-index/history-minutes | end_date*,index_code*,page,page_size,start_date*
|
|
147
|
+
ft_v1_sw_industry_constituent_history | 申万行业成份股历史 | industry_code*
|
|
148
|
+
ft_v1_sw_industry_daily_metrics | 申万行业日度指标 | end_date*,industry_code*,level,page,page_size,start_date*
|
|
149
|
+
ft_v1_sw_industry_overview | 申万行业总览 | date*,level,page,page_size
|
|
150
|
+
ft_v1_tdx_board_daily | 通达信板块日行情 | board_name,board_type,board_type_code,end_date*,market,page,page_size,start_date*,ts_code
|
|
151
|
+
ft_v1_tdx_board_index | 通达信板块指数快照 | board_name,board_type,board_type_code,market,page,page_size,ts_code
|
|
152
|
+
ft_v1_tdx_board_members | 通达信板块成分快照 | board_name,board_type,board_type_code,con_code,con_name,market,page,page_size,ts_code
|
|
153
|
+
ft_v1_ths_all_board_kline | 同花顺全板块K线 | end_date,page,page_size,start_date
|
|
154
|
+
ft_v1_ths_board_constituents | 同花顺板块成分股 | board_code,board_name,board_type,date,page,page_size
|
|
155
|
+
ft_v1_ths_board_kline | 同花顺板块K线 | board_code*,end_date,page,page_size,start_date
|
|
156
|
+
ft_v1_ths_board_list | 同花顺板块列表 |
|
|
157
|
+
ft_v1_ths_concept_daily_flow | 同花顺概念板块日资金流 | board_name,end_date*,page,page_size,start_date*
|
|
158
|
+
ft_v1_ths_hot_list | 同花顺热榜 | list_type*,page,page_size,trade_date
|
|
159
|
+
ft_v1_ths_industry_constituents | 同花顺行业成分股 | industry_code,industry_name,page,page_size,stock_code,stock_name
|
|
160
|
+
ft_v1_ths_industry_daily_flow | 同花顺行业板块日资金流 | board_name,end_date*,page,page_size,start_date*
|
|
161
|
+
ft_v1_ths_stock_daily_flow | 同花顺个股日资金流 | code,end_date*,name,page,page_size,start_date*
|
|
162
|
+
ft_v1_time_get_nth_trade_date | 第N个交易日 | n*
|
|
163
|
+
ft_v1_time_trading_calendar | 市场数据 v1:time/trading-calendar | end_date*,market*,start_date*
|
|
164
|
+
ft_v1_unlock_stock_unlock | 市场数据 v1:unlock/stock_unlock | end_date,page,page_size,start_date,stock_code
|
|
165
|
+
ft_v1_wz_index_daily | 市场数据 v1:wz-index-daily | end_date*,page,page_size,start_date*
|
|
166
|
+
ft_v1_xueqiu_rank | 雪球股票排名 | page,page_size,period,rank_group,trade_date
|
|
167
|
+
ft_v1_yzxdr_detail | 一致行动人明细 | page,page_size,quarter*,stock_code,year*
|
|
168
|
+
ft_v2_announcements_etf_announcement_download | ETF公告文件下载信息 | url_hash*
|
|
169
|
+
ft_v2_announcements_etf_announcements | ETF公告列表 | end_date,etf_code,page*,page_size*,start_date
|
|
170
|
+
ft_v2_announcements_stock_announcement_download | 公告文件下载信息 | url_hash*
|
|
171
|
+
ft_v2_announcements_stock_announcements | 公告列表 | page*,page_size*,start_date,stock_code,type*
|
|
172
|
+
ft_v2_announcements_stock_prospectus_download | 招股书文件下载信息 | url_hash*
|
|
173
|
+
ft_v2_announcements_stock_prospectuses | 招股书列表 | end_date,page*,page_size*,start_date,stock_code
|
|
174
|
+
ft_v2_ashare_interactions | 市场数据 v2:ashare-interactions | company_name,data_source,end_date*,industry_code,industry_name,page,page_size,start_date*,trade_code
|
|
175
|
+
ft_v2_auction_results | 集合竞价结果 | end_date,page,page_size,start_date,trade_date,ts_code
|
|
176
|
+
ft_v2_convertible_bond_candlesticks_batch | 批量可转债历史K线 | adjust_kind,interval_unit*,interval_value,limit,since_ts_millis*,symbols*,until_ts_millis*
|
|
177
|
+
ft_v2_convertible_bond_minute_candlesticks | 可转债历史分钟K线 | interval_value,limit,since_ts_millis*,symbol,symbols,until_ts_millis*
|
|
178
|
+
ft_v2_etf_candlesticks_batch | 批量ETF K线 | adjust_kind,interval_unit*,limit,since_ts_millis,symbols*,until_ts_millis*
|
|
179
|
+
ft_v2_etf_component_details | ETF成分证券明细 | symbol*,trade_date
|
|
180
|
+
ft_v2_etf_components_all | ETF成份列表 | page,page_size
|
|
181
|
+
ft_v2_etf_description_all | ETF基础信息 | page,page_size
|
|
182
|
+
ft_v2_etf_minutes | 市场数据 v2:etf_minutes | adjust_kind,interval_value,limit,since_ts_millis*,symbol*,until_ts_millis*
|
|
183
|
+
ft_v2_etf_minutes_batch | 市场数据 v2:etf_minutes/batch | adjust_kind,interval_value,limit,since_ts_millis*,symbols*,until_ts_millis*
|
|
184
|
+
ft_v2_etf_net_value | ETF净值 | end_date,etf_code*,nav_date,page,page_size,start_date
|
|
185
|
+
ft_v2_etf_pcf_etf_pcf_infos | ETF申赎清单 | end_date,page,page_size,start_date,symbol,trade_date
|
|
186
|
+
ft_v2_etf_pcf_etf_pcfs | ETF-PCF清单列表 | date*,page,page_size
|
|
187
|
+
ft_v2_etf_pre_data | ETF盘前数据 | date,page,page_size
|
|
188
|
+
ft_v2_etf_pre_single | 单只ETF盘前数据 | date,symbol*
|
|
189
|
+
ft_v2_etf_share | ETF份额 | end_date,etf_code*,page,page_size,start_date,stati_perd
|
|
190
|
+
ft_v2_finance_cashflow_stock_code | 现金流支持股票代码 | page,page_size
|
|
191
|
+
ft_v2_fund_index_fund | 指数跟踪基金 | index_code*,scope
|
|
192
|
+
ft_v2_futures_kline_batch | 批量期货合约历史K线 | end,interval,limit,start,symbols*
|
|
193
|
+
ft_v2_futures_minutes | 期货历史分钟K线 | end*,interval,limit,start*,symbol,symbols
|
|
194
|
+
ft_v2_hk_hk_candlesticks | 港股K线 | adjust_kind,interval_unit*,interval_value,limit,since_date,trade_code*,until_date*
|
|
195
|
+
ft_v2_holder_stock_ggmx_buy_ranking | 董监高增持排名 | page,page_size,time_range*
|
|
196
|
+
ft_v2_holder_stock_ggmx_sell_ranking | 董监高减持排名 | page,page_size,time_range*
|
|
197
|
+
ft_v2_index_candlesticks_batch | 批量指数K线 | adjust_kind,interval_unit*,limit,since_ts_millis,symbols*,until_ts_millis*
|
|
198
|
+
ft_v2_index_minutes | 市场数据 v2:index_minutes | adjust_kind,interval_value,limit,since_ts_millis*,symbol*,until_ts_millis*
|
|
199
|
+
ft_v2_index_minutes_batch | 市场数据 v2:index_minutes/batch | adjust_kind,interval_value,limit,since_ts_millis*,symbols*,until_ts_millis*
|
|
200
|
+
ft_v2_institution_institution_share_holdings | 机构股本持股 | institution_id*,invest_type*,report_type*,year*
|
|
201
|
+
ft_v2_intraday_auction_volume | 连续竞价成交量 | page,page_size,symbol,trade_date
|
|
202
|
+
ft_v2_limit_event_timeline_3s | 涨跌停事件时间线 | page,page_size,symbol,trade_date
|
|
203
|
+
ft_v2_market_distribution_intraday | 市场数据 v2:market-distribution-intraday |
|
|
204
|
+
ft_v2_member_build_process | 会员建仓过程 | contract_multiplier,end_date,exchange*,instrument_id*,member_name*,page,page_size,start_date
|
|
205
|
+
ft_v2_member_position_ranking | 会员持仓排名 | direction*,exchange*,instrument_id*,page,page_size,trade_date*
|
|
206
|
+
ft_v2_price_get_price_change | 价格变动 | base_date*,direction*,n*,stock_code*
|
|
207
|
+
ft_v2_report_announcements_summary | 市场数据 v2:report-announcements/summary | announcement_id*
|
|
208
|
+
ft_v2_report_stock_report_download | 研报文件下载信息 | url_hash*
|
|
209
|
+
ft_v2_report_stock_reports | 研报列表 | end_date,page*,page_size*,start_date,stock_code,type
|
|
210
|
+
ft_v2_share_get_stock_share | 股本 | date*,date_type,page,page_size,stock_code
|
|
211
|
+
ft_v2_share_stock_institution_holdings | 机构持股 | institution_type*,page,page_size,report_type*,year*
|
|
212
|
+
ft_v2_share_stock_institution_holdings_detail | 机构持股明细 | institution_type*,page,page_size,report_type*,stock_code*,year*
|
|
213
|
+
ft_v2_stk_alert_broker | 市场数据 v2:stk-alert-broker | end_date,page,page_size,start_date,ts_code
|
|
214
|
+
ft_v2_stk_premarket | 盘前数据 | end_date,page,page_size,start_date,trade_date,ts_code
|
|
215
|
+
ft_v2_stk_shock | 市场数据 v2:stk-shock | end_date,page,page_size,start_date,trade_date,ts_code
|
|
216
|
+
ft_v2_stk_surv | 市场数据 v2:stk-surv | end_date,page,page_size,start_date,trade_date,ts_code
|
|
217
|
+
ft_v2_stock_candlesticks_batch | 批量股票K线 | adjust_kind,interval_unit*,interval_value,limit,since_ts_millis,symbols*,until_ts_millis*
|
|
218
|
+
ft_v2_stock_dividends_effective | 股票有效分红记录 | page,page_size,since_date,symbol,until_date
|
|
219
|
+
ft_v2_stock_factor | 股票技术面因子 | category,symbol*,trade_date
|
|
220
|
+
ft_v2_stock_list_filter | 股票筛选 | board,listing_date_since,page,page_size,symbol
|
|
221
|
+
ft_v2_stock_minute_seal | 股票分钟封单金额 | page,page_size,symbol,trade_date*
|
|
222
|
+
ft_v2_stock_minutes | 市场数据 v2:stock_minutes | adjust_kind,interval_value,limit,since_ts_millis*,symbol*,until_ts_millis*
|
|
223
|
+
ft_v2_stock_minutes_batch | 市场数据 v2:stock_minutes/batch | adjust_kind,interval_value,limit,since_ts_millis*,symbols*,until_ts_millis*
|
|
224
|
+
ft_v3_ashare_news_sentiment_factors | A股新闻情绪因子 | end_date,page,page_size,start_date,trade_code*
|
|
225
|
+
ft_v3_ashare_rating_factor_snapshot | A股相关性 Top-K | date,top_k,trade_code*
|
|
226
|
+
ft_v3_kline_pattern_annotations | K线形态标注 | date,page,page_size,pattern,symbol,version
|
|
227
|
+
ft_v3_kline_pattern_image | 分K形态标注图 | image_hash*
|
|
228
|
+
ft_v3_limit_up_reports_briefs | 涨停简报 | date*
|
|
229
|
+
ft_v3_limit_up_reports_public_report | 涨停对外归因报告 | date*,security_code*
|
|
230
|
+
ft_v3_news_reaction_snapshot | 新闻市场反应快照 | end_date*,lookback_hours,page,page_size,start_date*,symbol*
|
|
231
|
+
ft_v3_semantic_search_news | 新闻语义搜索 | end_time,limit,query*,start_time,year
|
|
232
|
+
ft_v3_stock_signal_latest_snapshot | 信号最新快照 | page,page_size,signal_type
|
|
233
|
+
ft_v3_supply_chain_company_supply_chain_companies | 市场数据 v3:supply-chain/company-supply-chain-companies | direction*,page,page_size,trade_code*
|
|
234
|
+
ft_v3_supply_chain_industry_names | 供应链行业名称 |
|
|
235
|
+
ft_v3_supply_chain_subindustry_subsubindustries | 市场数据 v3:supply-chain/subindustry-subsubindustries | industry_name*
|
|
236
|
+
ft_v3_supply_chain_subindustry_supply_chain | 市场数据 v3:supply-chain/subindustry-supply-chain | direction*,industry_name*
|
|
237
|
+
ft_v3_supply_chain_subsubindustry_companies | 市场数据 v3:supply-chain/subsubindustry-companies | subindustry_name*
|
|
238
|
+
ft_v3_supply_chain_subsubindustry_parent_subindustries | 市场数据 v3:supply-chain/subsubindustry-parent-subindustries | subindustry_name*
|
|
239
|
+
ft_v4_convertible_bond_realtime_day_kline | 可转债实时日K线 | symbols*
|
|
240
|
+
ft_v4_convertible_bond_realtime_minute_kline | 可转债实时分钟K线 | symbols*
|
|
241
|
+
ft_v4_daec_history_prices | 标的分时数据 | compat,days,range,since,since_ts_ms,symbol*,ts_ms
|
|
242
|
+
ft_v4_etf_realtime_day_kline | ETF实时日K线 | symbols*
|
|
243
|
+
ft_v4_etf_realtime_minute_kline | ETF实时分钟K线 | symbols*
|
|
244
|
+
ft_v4_futures_minutes_realtime | 期货实时分钟K线 | symbols*
|
|
245
|
+
ft_v4_futures_realtime_day_kline | 期货实时日K线 | symbols*
|
|
246
|
+
ft_v4_index_realtime_day_kline | 指数实时日K线 | symbols*
|
|
247
|
+
ft_v4_index_realtime_minute_kline | 指数实时分钟K线 | symbols*
|
|
248
|
+
ft_v4_stock_intraday | 股票跨日分时行情 | days,range,symbol*,ts_ms
|
|
249
|
+
ft_v4_stock_realtime_day_kline | 股票实时日K线 | symbols*
|
|
250
|
+
ft_v4_stock_realtime_minute_kline | 股票实时分钟K线 | symbols*
|
package/cordis.patch.yml
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# dsh-fft-ftshare bundle patch
|
|
2
|
+
#
|
|
3
|
+
# `dsh.bundle.patch` layer of the published package. It carries four rows on
|
|
4
|
+
# purpose, because the two installation paths need different planes:
|
|
5
|
+
#
|
|
6
|
+
# * through the composition bundle `@ft/dsh-fft-bundle` — that patch inserts
|
|
7
|
+
# the bare-name provider row globally (a `provide` cannot live in a preset)
|
|
8
|
+
# and mounts this package's `/tools`, `/mask` and `/project` entries from
|
|
9
|
+
# `preset-ft-finance`; DO NOT add this package separately, or every row
|
|
10
|
+
# lands twice (see README).
|
|
11
|
+
# * standalone (`dsh plugin --profile <name> add @dsh-ft/dsh-fft-ftshare`) —
|
|
12
|
+
# there is no preset, so all four rows go on the global plane: the tools and
|
|
13
|
+
# the mask apply to every agent, and the projection hook covers every MCP
|
|
14
|
+
# result.
|
|
15
|
+
#
|
|
16
|
+
# The bare package name is the only row that provides the service. This package
|
|
17
|
+
# declares no `dsh.client`, so a bare-name row never composes a browser module
|
|
18
|
+
# source and the client half-plane question does not arise.
|
|
19
|
+
- insert:
|
|
20
|
+
- id: dsh-fft-ftshare
|
|
21
|
+
name: '@dsh-ft/dsh-fft-ftshare'
|
|
22
|
+
- id: ft-ftshare-tools
|
|
23
|
+
name: '@dsh-ft/dsh-fft-ftshare/tools'
|
|
24
|
+
- id: ft-ftshare-mask
|
|
25
|
+
name: '@dsh-ft/dsh-fft-ftshare/mask'
|
|
26
|
+
- id: ft-ftshare-project
|
|
27
|
+
name: '@dsh-ft/dsh-fft-ftshare/project'
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 接口表(capability table):本底座承接并对外提供的上游接口,人工策展。
|
|
3
|
+
*
|
|
4
|
+
* 与**目录**(`catalog.json`,上游全量快照)不是一回事:目录回答「上游有什么」,
|
|
5
|
+
* 接口表回答「我们承接什么」。两条准入判据:
|
|
6
|
+
*
|
|
7
|
+
* 1. **有本仓调用点**,记在 {@link Capability.provenance};
|
|
8
|
+
* 2. **不与 `dsh_kline` 的保留工具面重复** —— 行情、K 线、指标、板块联动、市场
|
|
9
|
+
* 脉搏、自选仍归 kline,这里只放它没有的能力。
|
|
10
|
+
*
|
|
11
|
+
* 上游接口名必须能在目录里找到(守护测试断言),不在目录就当不可调:不猜别名,
|
|
12
|
+
* 也不按版本前缀推断订阅档位(见 {@link ./errors.ts} 与设计文档附录 B)。
|
|
13
|
+
* @module @dsh-ft/dsh-fft-ftshare/capabilities
|
|
14
|
+
*/
|
|
15
|
+
import type { ParameterSchemaSpec } from '@deepseek-ai/dsh-tools';
|
|
16
|
+
/** 接口表里的一条:一个上游接口,外加我们给它的本地身份与暴露方式。 */
|
|
17
|
+
export interface Capability {
|
|
18
|
+
/** 内部能力名,例如 `finance_income`;本仓引用时用它,避免散落上游接口名。 */
|
|
19
|
+
id: string;
|
|
20
|
+
/** 中文短标题,模型工具描述的首行。 */
|
|
21
|
+
title: string;
|
|
22
|
+
/** 上游接口名,1:1,且必须在 `catalog.json` 内。 */
|
|
23
|
+
interface: string;
|
|
24
|
+
/** 入参:抄自上游 `inputSchema` 并做一次人工收敛(去掉本仓用不到的字段)。 */
|
|
25
|
+
args: ParameterSchemaSpec;
|
|
26
|
+
/** 有则注册成模型工具;没有则只供本仓程序调用。 */
|
|
27
|
+
expose?: {
|
|
28
|
+
/** 模型工具名,形如 `ftshare_*`。 */
|
|
29
|
+
name: string;
|
|
30
|
+
/** 模型可见描述。 */
|
|
31
|
+
description: string;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* 本仓调用点。记的是**文件与符号**而不是行号:行号每次重构即失效,也没有任何
|
|
35
|
+
* 守护测试能核实它,`path#symbol` 才是能被复核的定位。
|
|
36
|
+
*/
|
|
37
|
+
provenance: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* 接口表本体。顺序即模型看到的顺序:先用得上的排前面。
|
|
41
|
+
*/
|
|
42
|
+
export declare const FTSHARE_CAPABILITIES: readonly Capability[];
|
|
43
|
+
/** 按模型工具名反查接口表条目(只有带 `expose` 的条目才在表内)。 */
|
|
44
|
+
export declare const FTSHARE_CAPABILITY_BY_TOOL: ReadonlyMap<string, Capability>;
|
|
45
|
+
/** 按上游接口名反查接口表条目。 */
|
|
46
|
+
export declare const FTSHARE_CAPABILITY_BY_INTERFACE: ReadonlyMap<string, Capability>;
|
|
47
|
+
//# sourceMappingURL=capabilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAEjE,uCAAuC;AACvC,MAAM,WAAW,UAAU;IACzB,mDAAmD;IACnD,EAAE,EAAE,MAAM,CAAA;IACV,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,kDAAkD;IAClD,IAAI,EAAE,mBAAmB,CAAA;IACzB,6BAA6B;IAC7B,MAAM,CAAC,EAAE;QACP,4BAA4B;QAC5B,IAAI,EAAE,MAAM,CAAA;QACZ,cAAc;QACd,WAAW,EAAE,MAAM,CAAA;KACpB,CAAA;IACD;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAA;CACnB;AAYD;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,UAAU,EAkHrD,CAAA;AAED,2CAA2C;AAC3C,eAAO,MAAM,0BAA0B,EAAE,WAAW,CAAC,MAAM,EAAE,UAAU,CAEtE,CAAA;AAED,qBAAqB;AACrB,eAAO,MAAM,+BAA+B,EAAE,WAAW,CAAC,MAAM,EAAE,UAAU,CAE3E,CAAA"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 接口表(capability table):本底座承接并对外提供的上游接口,人工策展。
|
|
3
|
+
*
|
|
4
|
+
* 与**目录**(`catalog.json`,上游全量快照)不是一回事:目录回答「上游有什么」,
|
|
5
|
+
* 接口表回答「我们承接什么」。两条准入判据:
|
|
6
|
+
*
|
|
7
|
+
* 1. **有本仓调用点**,记在 {@link Capability.provenance};
|
|
8
|
+
* 2. **不与 `dsh_kline` 的保留工具面重复** —— 行情、K 线、指标、板块联动、市场
|
|
9
|
+
* 脉搏、自选仍归 kline,这里只放它没有的能力。
|
|
10
|
+
*
|
|
11
|
+
* 上游接口名必须能在目录里找到(守护测试断言),不在目录就当不可调:不猜别名,
|
|
12
|
+
* 也不按版本前缀推断订阅档位(见 {@link ./errors.ts} 与设计文档附录 B)。
|
|
13
|
+
* @module @dsh-ft/dsh-fft-ftshare/capabilities
|
|
14
|
+
*/
|
|
15
|
+
/** 常用入参文案。 */
|
|
16
|
+
const STOCK_CODE = 'A 股代码,支持 6 位纯代码、.SH/.SZ/.BJ 短后缀或 .XSHG/.XSHE/.BJSE 长后缀';
|
|
17
|
+
const DATE_COMPACT = '交易日,格式 YYYYMMDD';
|
|
18
|
+
const SYMBOL = '带市场后缀的证券代码,如 600519.SH';
|
|
19
|
+
/** 投研舱的取数模块;接口表里绝大多数条目由它调用。 */
|
|
20
|
+
const COCKPIT_DATA = 'packages/dsh-fft-research-cockpit/src/ftshare-data.ts';
|
|
21
|
+
/** 投研舱的研报/公告取数模块。 */
|
|
22
|
+
const COCKPIT_REPORT = 'packages/dsh-fft-research-cockpit/src/report-data.ts';
|
|
23
|
+
/**
|
|
24
|
+
* 接口表本体。顺序即模型看到的顺序:先用得上的排前面。
|
|
25
|
+
*/
|
|
26
|
+
export const FTSHARE_CAPABILITIES = [
|
|
27
|
+
{
|
|
28
|
+
id: 'finance_income',
|
|
29
|
+
title: '利润表',
|
|
30
|
+
interface: 'ft_v1_finance_income',
|
|
31
|
+
args: { stock_code: { type: 'string', description: STOCK_CODE, required: true } },
|
|
32
|
+
expose: {
|
|
33
|
+
name: 'ftshare_finance_income',
|
|
34
|
+
description: '读取个股利润表(营收、净利等)历史期数。用于基本面与盈利质量分析。',
|
|
35
|
+
},
|
|
36
|
+
provenance: `${COCKPIT_DATA}#loadSnapshot`,
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
id: 'finance_balance',
|
|
40
|
+
title: '资产负债表',
|
|
41
|
+
interface: 'ft_v1_finance_balance',
|
|
42
|
+
args: { stock_code: { type: 'string', description: STOCK_CODE, required: true } },
|
|
43
|
+
expose: {
|
|
44
|
+
name: 'ftshare_finance_balance',
|
|
45
|
+
description: '读取个股资产负债表历史期数。用于资产结构与偿债能力分析。',
|
|
46
|
+
},
|
|
47
|
+
provenance: `${COCKPIT_DATA}#loadSnapshot`,
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
id: 'finance_cashflow',
|
|
51
|
+
title: '现金流量表',
|
|
52
|
+
interface: 'ft_v1_finance_cashflow',
|
|
53
|
+
args: { stock_code: { type: 'string', description: STOCK_CODE, required: true } },
|
|
54
|
+
expose: {
|
|
55
|
+
name: 'ftshare_finance_cashflow',
|
|
56
|
+
description: '读取个股现金流量表历史期数。用于现金流与经营质量分析。',
|
|
57
|
+
},
|
|
58
|
+
provenance: `${COCKPIT_DATA}#loadSnapshot`,
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
id: 'stock_valuation',
|
|
62
|
+
title: '个股估值',
|
|
63
|
+
interface: 'ft_v1_eastmoney_stock_valuation',
|
|
64
|
+
args: {
|
|
65
|
+
symbol: { type: 'string', description: SYMBOL, required: true },
|
|
66
|
+
start_date: { type: 'string', description: `区间起(${DATE_COMPACT})` },
|
|
67
|
+
end_date: { type: 'string', description: `区间止(${DATE_COMPACT})` },
|
|
68
|
+
page: { type: 'number', description: '页码,默认 1' },
|
|
69
|
+
page_size: { type: 'number', description: '每页条数,默认 30' },
|
|
70
|
+
},
|
|
71
|
+
expose: {
|
|
72
|
+
name: 'ftshare_stock_valuation',
|
|
73
|
+
description: '读取个股估值时间序列(PE、PB 等)。区间按交易日给,单次最多一页。',
|
|
74
|
+
},
|
|
75
|
+
provenance: `${COCKPIT_DATA}#loadSnapshot`,
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
id: 'margin_trading',
|
|
79
|
+
title: '融资融券明细',
|
|
80
|
+
interface: 'ft_v1_margin_trading_details',
|
|
81
|
+
args: {
|
|
82
|
+
stock: { type: 'string', description: SYMBOL, required: true },
|
|
83
|
+
date: { type: 'string', description: `交易日(${DATE_COMPACT})`, required: true },
|
|
84
|
+
},
|
|
85
|
+
expose: {
|
|
86
|
+
name: 'ftshare_margin_trading',
|
|
87
|
+
description: '读取全市场某交易日的两融明细,可按标的筛选。用于杠杆资金观察。',
|
|
88
|
+
},
|
|
89
|
+
provenance: `${COCKPIT_DATA}#loadSnapshot`,
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
id: 'stock_reports',
|
|
93
|
+
title: '券商研报',
|
|
94
|
+
interface: 'ft_v2_report_stock_reports',
|
|
95
|
+
args: {
|
|
96
|
+
stock_code: { type: 'string', description: STOCK_CODE, required: true },
|
|
97
|
+
type: { type: 'string', description: '研报类型;按代码查只能用 StockReport', enum: ['StockReport'] },
|
|
98
|
+
page: { type: 'integer', description: '页码,上游必填,从 1 开始', required: true },
|
|
99
|
+
page_size: { type: 'integer', description: '每页条数,上游必填,1 到 500', required: true },
|
|
100
|
+
},
|
|
101
|
+
expose: {
|
|
102
|
+
name: 'ftshare_stock_reports',
|
|
103
|
+
description: '读取个股研报列表(标题、机构、观点摘要)。日期区间最多 3 天,页码必填。',
|
|
104
|
+
},
|
|
105
|
+
provenance: `${COCKPIT_DATA}#loadSnapshot, ${COCKPIT_REPORT}#announcementCallSpecs`,
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
id: 'stock_announcements',
|
|
109
|
+
title: '个股公告',
|
|
110
|
+
interface: 'ft_v2_announcements_stock_announcements',
|
|
111
|
+
args: {
|
|
112
|
+
stock_code: { type: 'string', description: STOCK_CODE, required: true },
|
|
113
|
+
type: { type: 'string', description: '查询类型,当前只支持 stock', enum: ['stock'], required: true },
|
|
114
|
+
start_date: { type: 'string', description: `${DATE_COMPACT},仅支持单日` },
|
|
115
|
+
page: { type: 'integer', description: '页码,上游必填,从 1 开始', required: true },
|
|
116
|
+
page_size: { type: 'integer', description: '每页条数,上游必填,1 到 500', required: true },
|
|
117
|
+
},
|
|
118
|
+
expose: {
|
|
119
|
+
name: 'ftshare_stock_announcements',
|
|
120
|
+
description: '按标的代码读取最新公告历史(标题、时间、链接)。',
|
|
121
|
+
},
|
|
122
|
+
provenance: `${COCKPIT_REPORT}#announcementCallSpecs`,
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
id: 'announcements_by_date',
|
|
126
|
+
title: '公告(按日期)',
|
|
127
|
+
interface: 'ft_v1_report_announcements_list',
|
|
128
|
+
args: {
|
|
129
|
+
date: { type: 'string', description: `公告日期(${DATE_COMPACT})`, required: true },
|
|
130
|
+
sec_code: { type: 'string', description: STOCK_CODE },
|
|
131
|
+
page: { type: 'integer', description: '页码,缺省 1' },
|
|
132
|
+
page_size: { type: 'integer', description: '每页条数,缺省 200,上限 500' },
|
|
133
|
+
},
|
|
134
|
+
expose: {
|
|
135
|
+
name: 'ftshare_announcements_by_date',
|
|
136
|
+
description: '按交易日读取全市场公告列表,可按证券代码筛选。',
|
|
137
|
+
},
|
|
138
|
+
provenance: `${COCKPIT_DATA}#loadRecentAnnouncements, ${COCKPIT_REPORT}#announcementCallSpecs`,
|
|
139
|
+
},
|
|
140
|
+
];
|
|
141
|
+
/** 按模型工具名反查接口表条目(只有带 `expose` 的条目才在表内)。 */
|
|
142
|
+
export const FTSHARE_CAPABILITY_BY_TOOL = new Map(FTSHARE_CAPABILITIES.flatMap(entry => entry.expose === undefined ? [] : [[entry.expose.name, entry]]));
|
|
143
|
+
/** 按上游接口名反查接口表条目。 */
|
|
144
|
+
export const FTSHARE_CAPABILITY_BY_INTERFACE = new Map(FTSHARE_CAPABILITIES.map(entry => [entry.interface, entry]));
|
|
145
|
+
//# sourceMappingURL=capabilities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 宿主侧的目录读取:把随包的 `catalog.json` 读进内存,供 `ftshare_call` 的准入
|
|
3
|
+
* 校验、`./route` 的接口名校验使用。
|
|
4
|
+
*
|
|
5
|
+
* 单独一个模块,是为了让浏览器侧只引 `./catalog`(纯函数),不把 `node:fs` 拖进
|
|
6
|
+
* 打包图里。
|
|
7
|
+
* @module @dsh-ft/dsh-fft-ftshare/catalog-host
|
|
8
|
+
*/
|
|
9
|
+
import { type Catalog } from './catalog.js';
|
|
10
|
+
/** 随包目录产物的路径;`lib/` 的上一层就是包根。 */
|
|
11
|
+
export declare const FTSHARE_CATALOG_PATH: URL;
|
|
12
|
+
/**
|
|
13
|
+
* 读取随包目录(首次调用读盘,之后走缓存)。
|
|
14
|
+
* @returns 目录;文件缺失或损坏时为空目录(调用方据此一律判「不在目录里」)。
|
|
15
|
+
*/
|
|
16
|
+
export declare function loadCatalog(): Catalog;
|
|
17
|
+
/** 目录索引文件的绝对路径,给模型 `grep` 用。 */
|
|
18
|
+
export declare const FTSHARE_CATALOG_INDEX_PATH: string;
|
|
19
|
+
//# sourceMappingURL=catalog-host.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog-host.d.ts","sourceRoot":"","sources":["../src/catalog-host.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtD,iCAAiC;AACjC,eAAO,MAAM,oBAAoB,KAA8C,CAAA;AAI/E;;;GAGG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAQrC;AAED,gCAAgC;AAChC,eAAO,MAAM,0BAA0B,QAAsD,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 宿主侧的目录读取:把随包的 `catalog.json` 读进内存,供 `ftshare_call` 的准入
|
|
3
|
+
* 校验、`./route` 的接口名校验使用。
|
|
4
|
+
*
|
|
5
|
+
* 单独一个模块,是为了让浏览器侧只引 `./catalog`(纯函数),不把 `node:fs` 拖进
|
|
6
|
+
* 打包图里。
|
|
7
|
+
* @module @dsh-ft/dsh-fft-ftshare/catalog-host
|
|
8
|
+
*/
|
|
9
|
+
import { readFileSync } from 'node:fs';
|
|
10
|
+
import { asCatalog } from './catalog.js';
|
|
11
|
+
/** 随包目录产物的路径;`lib/` 的上一层就是包根。 */
|
|
12
|
+
export const FTSHARE_CATALOG_PATH = new URL('../catalog.json', import.meta.url);
|
|
13
|
+
let cached;
|
|
14
|
+
/**
|
|
15
|
+
* 读取随包目录(首次调用读盘,之后走缓存)。
|
|
16
|
+
* @returns 目录;文件缺失或损坏时为空目录(调用方据此一律判「不在目录里」)。
|
|
17
|
+
*/
|
|
18
|
+
export function loadCatalog() {
|
|
19
|
+
if (cached !== undefined)
|
|
20
|
+
return cached;
|
|
21
|
+
try {
|
|
22
|
+
cached = asCatalog(JSON.parse(readFileSync(FTSHARE_CATALOG_PATH, 'utf8')));
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
cached = { entries: [] };
|
|
26
|
+
}
|
|
27
|
+
return cached;
|
|
28
|
+
}
|
|
29
|
+
/** 目录索引文件的绝对路径,给模型 `grep` 用。 */
|
|
30
|
+
export const FTSHARE_CATALOG_INDEX_PATH = new URL('../catalog.txt', import.meta.url).pathname;
|
|
31
|
+
//# sourceMappingURL=catalog-host.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog-host.js","sourceRoot":"","sources":["../src/catalog-host.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,EAAE,SAAS,EAAgB,MAAM,cAAc,CAAA;AAEtD,iCAAiC;AACjC,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAE/E,IAAI,MAA2B,CAAA;AAE/B;;;GAGG;AACH,MAAM,UAAU,WAAW;IACzB,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAA;IACvC,IAAI,CAAC;QACH,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;IAC5E,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;IAC1B,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,gCAAgC;AAChC,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA"}
|
package/lib/catalog.d.ts
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 目录(catalog):上游接口的**全量快照**,回答「上游有什么」。
|
|
3
|
+
*
|
|
4
|
+
* 与接口表(`capabilities.ts`,回答「我们承接什么」)不是一回事。目录由
|
|
5
|
+
* `scripts/build-catalog.mjs` 从 `tools/list` 生成,随包发布两份产物:
|
|
6
|
+
* `catalog.json`(完整,含 `description` 与 `inputSchema`)与 `catalog.txt`
|
|
7
|
+
* (一线索引,供模型 `grep`)。本模块只做纯函数——查名字、读必填入参——因此宿主
|
|
8
|
+
* 与浏览器两侧都能用;读文件的那一半在 `catalog-host.ts`。
|
|
9
|
+
* @module @dsh-ft/dsh-fft-ftshare/catalog
|
|
10
|
+
*/
|
|
11
|
+
/** 目录里的一条:接口名、标题、上游说明与入参 JSON Schema。 */
|
|
12
|
+
export interface CatalogEntry {
|
|
13
|
+
/** 上游接口名,例如 `ft_v1_finance_income`。 */
|
|
14
|
+
name: string;
|
|
15
|
+
/** 上游标题。 */
|
|
16
|
+
title: string;
|
|
17
|
+
/** 上游说明原文。 */
|
|
18
|
+
description?: string;
|
|
19
|
+
/** 上游入参 JSON Schema 原文,未做任何改写。 */
|
|
20
|
+
inputSchema?: unknown;
|
|
21
|
+
}
|
|
22
|
+
/** 随包的完整目录产物。 */
|
|
23
|
+
export interface Catalog {
|
|
24
|
+
/** 全部条目,按接口名排序。 */
|
|
25
|
+
entries: readonly CatalogEntry[];
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* 把任意解析结果收敛成目录。字段缺失的条目直接丢掉而不是留半条:目录是准入判据,
|
|
29
|
+
* 半条会让「在目录里」这个断言变得没有意义。
|
|
30
|
+
* @param value - `catalog.json` 的解析结果。
|
|
31
|
+
* @returns 目录;形状不对时为空目录。
|
|
32
|
+
*/
|
|
33
|
+
export declare function asCatalog(value: unknown): Catalog;
|
|
34
|
+
/**
|
|
35
|
+
* 按接口名查目录。
|
|
36
|
+
* @param catalog - 目录。
|
|
37
|
+
* @param name - 上游接口名。
|
|
38
|
+
* @returns 条目;不在目录里时 undefined。
|
|
39
|
+
*/
|
|
40
|
+
export declare function catalogEntryOf(catalog: Catalog, name: string): CatalogEntry | undefined;
|
|
41
|
+
/**
|
|
42
|
+
* 读出上游 `inputSchema.required` 里、这次调用没有给的入参名。
|
|
43
|
+
*
|
|
44
|
+
* 只查「有没有给」,不查类型与取值:本地能确定说出口的只有缺席,类型判断留给上游,
|
|
45
|
+
* 免得把「上游其实能容忍的写法」判成错误。
|
|
46
|
+
* @param entry - 目录条目。
|
|
47
|
+
* @param args - 本次调用入参。
|
|
48
|
+
* @returns 缺席的必填入参名,按 schema 顺序。
|
|
49
|
+
*/
|
|
50
|
+
export declare function missingRequiredArgs(entry: CatalogEntry, args: Record<string, unknown> | undefined): string[];
|
|
51
|
+
//# sourceMappingURL=catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,yCAAyC;AACzC,MAAM,WAAW,YAAY;IAC3B,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,cAAc;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kCAAkC;IAClC,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,iBAAiB;AACjB,MAAM,WAAW,OAAO;IACtB,mBAAmB;IACnB,OAAO,EAAE,SAAS,YAAY,EAAE,CAAA;CACjC;AAOD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAajD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAEvF;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,EAAE,CAK5G"}
|