Skip to content

Commit aaf30e3

Browse files
committed
wip: add A-share collection bootstrap pack
1 parent 8612c7a commit aaf30e3

7 files changed

Lines changed: 1332 additions & 0 deletions

configs/a-share-quant-pack.json

Lines changed: 285 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,285 @@
1+
{
2+
"version": 1,
3+
"name": "a-share-quant-core",
4+
"description": "Node-aware A-share quant collection pack for OpenCLI Admin.",
5+
"node_classes": [
6+
{
7+
"id": "cn-public",
8+
"label": "CN public web/API node",
9+
"requires_login": false,
10+
"channels": ["api", "rss", "web_scraper"],
11+
"notes": "Use for official public pages, regulator pages, exchange public data, and RSS-like feeds."
12+
},
13+
{
14+
"id": "cn-browser",
15+
"label": "CN browser/opencli node",
16+
"requires_login": false,
17+
"channels": ["opencli", "web_scraper"],
18+
"notes": "Use when JavaScript-heavy pages or opencli browser collection is required."
19+
},
20+
{
21+
"id": "cn-login",
22+
"label": "CN logged-in browser/opencli node",
23+
"requires_login": true,
24+
"channels": ["opencli"],
25+
"notes": "Use for sources that require account/cookie state. Keep profile on edge node."
26+
}
27+
],
28+
"bindings": [
29+
{
30+
"site": "xueqiu",
31+
"node_class": "cn-login",
32+
"browser_endpoint_env": "A_SHARE_BINDING_XUEQIU_ENDPOINT",
33+
"notes": "Optional logged-in Xueqiu node binding. Set env to agent endpoint before bootstrap."
34+
},
35+
{
36+
"site": "eastmoney",
37+
"node_class": "cn-public",
38+
"browser_endpoint_env": "A_SHARE_BINDING_EASTMONEY_ENDPOINT",
39+
"notes": "Optional Eastmoney browser node binding for JS-heavy fallback."
40+
}
41+
],
42+
"sources": [
43+
{
44+
"key": "cninfo-announcements",
45+
"name": "A股-巨潮资讯-公告入口",
46+
"description": "CSRC-designated disclosure platform. Use for company announcements, reports, risk warnings, and corporate actions.",
47+
"node_class": "cn-public",
48+
"channel_type": "web_scraper",
49+
"channel_config": {
50+
"url": "https://www.cninfo.com.cn/",
51+
"list_selector": "a",
52+
"selectors": {
53+
"title": "a",
54+
"text": "a"
55+
},
56+
"timeout": 30
57+
},
58+
"ai_agent": "XR Smart Default - MiniMax",
59+
"tags": ["a-share", "official", "disclosure", "announcement", "cninfo"],
60+
"schedules": [
61+
{
62+
"name": "A股-巨潮公告-交易时段轮询",
63+
"cron_expression": "*/10 9-18 * * 1-5",
64+
"timezone": "Asia/Shanghai",
65+
"parameters": {
66+
"window": "intraday"
67+
},
68+
"priority": 8
69+
},
70+
{
71+
"name": "A股-巨潮公告-盘后复查",
72+
"cron_expression": "30 20 * * 1-5",
73+
"timezone": "Asia/Shanghai",
74+
"parameters": {
75+
"window": "after_close"
76+
},
77+
"priority": 7
78+
}
79+
]
80+
},
81+
{
82+
"key": "sse-announcements",
83+
"name": "A股-上交所-上市公司最新公告",
84+
"description": "SSE listed company announcement feed/page.",
85+
"node_class": "cn-public",
86+
"channel_type": "web_scraper",
87+
"channel_config": {
88+
"url": "https://www.sse.com.cn/disclosure/listedinfo/announcement/",
89+
"list_selector": "li",
90+
"selectors": {
91+
"title": "a",
92+
"date": ".date, span",
93+
"text": "li"
94+
},
95+
"timeout": 30
96+
},
97+
"ai_agent": "XR Smart Default - MiniMax",
98+
"tags": ["a-share", "official", "sse", "announcement"],
99+
"schedules": [
100+
{
101+
"name": "A股-上交所公告-交易日轮询",
102+
"cron_expression": "*/15 9-19 * * 1-5",
103+
"timezone": "Asia/Shanghai",
104+
"parameters": {},
105+
"priority": 8
106+
}
107+
]
108+
},
109+
{
110+
"key": "szse-trade-public",
111+
"name": "A股-深交所-竞价交易公开信息",
112+
"description": "SZSE public trading disclosure, including longhubang and abnormal trading disclosures.",
113+
"node_class": "cn-public",
114+
"channel_type": "web_scraper",
115+
"channel_config": {
116+
"url": "https://www.szse.cn/disclosure/deal/public/index.html",
117+
"list_selector": "li",
118+
"selectors": {
119+
"title": "a",
120+
"date": ".date, span",
121+
"text": "li"
122+
},
123+
"timeout": 30
124+
},
125+
"ai_agent": "XR Smart Default - MiniMax",
126+
"tags": ["a-share", "official", "szse", "trade-public", "longhubang"],
127+
"schedules": [
128+
{
129+
"name": "A股-深交所交易公开信息-盘后",
130+
"cron_expression": "40 16 * * 1-5",
131+
"timezone": "Asia/Shanghai",
132+
"parameters": {},
133+
"priority": 7
134+
}
135+
]
136+
},
137+
{
138+
"key": "sse-trade-public",
139+
"name": "A股-上交所-交易公开信息",
140+
"description": "SSE public trading disclosure and abnormal movement records.",
141+
"node_class": "cn-public",
142+
"channel_type": "web_scraper",
143+
"channel_config": {
144+
"url": "https://www.sse.com.cn/disclosure/diclosure/public/",
145+
"list_selector": "li, tr",
146+
"selectors": {
147+
"title": "a, td",
148+
"text": "li, tr"
149+
},
150+
"timeout": 30
151+
},
152+
"ai_agent": "XR Smart Default - MiniMax",
153+
"tags": ["a-share", "official", "sse", "trade-public", "longhubang"],
154+
"schedules": [
155+
{
156+
"name": "A股-上交所交易公开信息-盘后",
157+
"cron_expression": "45 16 * * 1-5",
158+
"timezone": "Asia/Shanghai",
159+
"parameters": {},
160+
"priority": 7
161+
}
162+
]
163+
},
164+
{
165+
"key": "sse-margin",
166+
"name": "A股-上交所-融资融券汇总",
167+
"description": "SSE margin trading summary.",
168+
"node_class": "cn-public",
169+
"channel_type": "web_scraper",
170+
"channel_config": {
171+
"url": "https://www.sse.com.cn/market/othersdata/margin/sum/",
172+
"list_selector": "tr",
173+
"selectors": {
174+
"row": "tr",
175+
"text": "tr"
176+
},
177+
"timeout": 30
178+
},
179+
"ai_agent": "XR Local Bulk",
180+
"tags": ["a-share", "official", "sse", "margin"],
181+
"schedules": [
182+
{
183+
"name": "A股-上交所融资融券-每日",
184+
"cron_expression": "20 18 * * 1-5",
185+
"timezone": "Asia/Shanghai",
186+
"parameters": {},
187+
"priority": 5
188+
}
189+
]
190+
},
191+
{
192+
"key": "csrc-policy",
193+
"name": "A股-证监会-监管政策新闻",
194+
"description": "CSRC policy, enforcement, rules and regulatory news.",
195+
"node_class": "cn-public",
196+
"channel_type": "web_scraper",
197+
"channel_config": {
198+
"url": "https://www.csrc.gov.cn/",
199+
"list_selector": "li",
200+
"selectors": {
201+
"title": "a",
202+
"date": ".date, span",
203+
"text": "li"
204+
},
205+
"timeout": 30
206+
},
207+
"ai_agent": "XR Smart Default - MiniMax",
208+
"tags": ["a-share", "official", "regulator", "csrc", "policy"],
209+
"schedules": [
210+
{
211+
"name": "A股-证监会监管政策-轮询",
212+
"cron_expression": "*/30 8-22 * * 1-5",
213+
"timezone": "Asia/Shanghai",
214+
"parameters": {},
215+
"priority": 8
216+
}
217+
]
218+
},
219+
{
220+
"key": "chinamoney-rates",
221+
"name": "A股-中国货币网-利率数据",
222+
"description": "ChinaMoney rate data entry for macro and rates factors.",
223+
"node_class": "cn-public",
224+
"channel_type": "web_scraper",
225+
"channel_config": {
226+
"url": "https://www.chinamoney.com.cn/chinese/sddsint/",
227+
"list_selector": "tr, li",
228+
"selectors": {
229+
"title": "td, a",
230+
"text": "tr, li"
231+
},
232+
"timeout": 30
233+
},
234+
"ai_agent": "XR Local Bulk",
235+
"tags": ["a-share", "official", "macro", "rates", "chinamoney"],
236+
"schedules": [
237+
{
238+
"name": "A股-中国货币网利率-每日",
239+
"cron_expression": "10 18 * * 1-5",
240+
"timezone": "Asia/Shanghai",
241+
"parameters": {},
242+
"priority": 5
243+
}
244+
]
245+
},
246+
{
247+
"key": "eastmoney-longhubang",
248+
"name": "A股-东方财富-龙虎榜补充",
249+
"description": "Third-party longhubang cross-check source. Not source of truth.",
250+
"node_class": "cn-public",
251+
"channel_type": "web_scraper",
252+
"channel_config": {
253+
"url": "https://acttg.eastmoney.com/pub/web_dfcfsy_wzl_dhl_03_01_11_0",
254+
"list_selector": "tr, li",
255+
"selectors": {
256+
"title": "a, td",
257+
"text": "tr, li"
258+
},
259+
"timeout": 30
260+
},
261+
"ai_agent": "XR Local Bulk",
262+
"tags": ["a-share", "third-party", "eastmoney", "longhubang"],
263+
"schedules": [
264+
{
265+
"name": "A股-东方财富龙虎榜补充-盘后",
266+
"cron_expression": "55 16 * * 1-5",
267+
"timezone": "Asia/Shanghai",
268+
"parameters": {},
269+
"priority": 4
270+
}
271+
]
272+
}
273+
],
274+
"immediate_tasks": [
275+
{
276+
"source": "A股-巨潮资讯-公告入口",
277+
"agent": "XR Smart Default - MiniMax",
278+
"parameters": {
279+
"window": "smoke"
280+
},
281+
"priority": 8,
282+
"enabled_by_default": false
283+
}
284+
]
285+
}

0 commit comments

Comments
 (0)