Files
sanguo_vnpy/graphify-out/cache/ast/2f5d350101a282514ee64ef4814c1a1c63fb3a2173506dbf746266b6e82b96e1.json
T
2026-05-06 23:12:48 +08:00

1 line
21 KiB
JSON

{"nodes": [{"id": "users_chufeng_openclaw_sanguo_projects_sanguo_vnpy_docs_data_platform_01_requirements_md", "label": "01-requirements.md", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L1"}, {"id": "data_platform_01_requirements", "label": "\u9700\u6c42\u89c4\u683c\u6587\u6863\uff1a\u672c\u5730\u6570\u636e\u6e90\u4f53\u7cfb\u5efa\u8bbe", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L1"}, {"id": "data_platform_01_requirements_10", "label": "\u4e00\u3001\u9879\u76ee\u80cc\u666f\u4e0e\u6838\u5fc3\u95ee\u9898", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L10"}, {"id": "data_platform_01_requirements_1_1", "label": "1.1 \u73b0\u72b6", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L12"}, {"id": "data_platform_01_requirements_1_2", "label": "1.2 \u6838\u5fc3\u95ee\u9898", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L22"}, {"id": "data_platform_01_requirements_codeblock_1", "label": "code:python (engine.load_data() # \u4ecevnpy SQLite\u6570\u636e\u5e93\u52a0\u8f7d)", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L27"}, {"id": "data_platform_01_requirements_1_3", "label": "1.3 \u76ee\u6807", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L32"}, {"id": "data_platform_01_requirements_38", "label": "\u4e8c\u3001\u529f\u80fd\u9700\u6c42", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L38"}, {"id": "data_platform_01_requirements_p1_vnpy", "label": "P1\uff1a\u6253\u901avnpy\u6570\u636e\u901a\u8def", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L40"}, {"id": "data_platform_01_requirements_p1_1_docker_volume", "label": "P1-1\uff1a\u786e\u8ba4Docker volume\u6620\u5c04\u8def\u5f84", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L42"}, {"id": "data_platform_01_requirements_p1_2_vnpy_db", "label": "P1-2\uff1a\u7f16\u5199vnpy DB\u5bfc\u5165\u811a\u672c", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L57"}, {"id": "data_platform_01_requirements_codeblock_2", "label": "code:block2 (date, open, high, low, close, volume, amount, outstanding_sh)", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L73"}, {"id": "data_platform_01_requirements_p1_3", "label": "P1-3\uff1a\u5168\u91cf\u5bfc\u5165\u65e5\u7ebf", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L85"}, {"id": "data_platform_01_requirements_p1_4", "label": "P1-4\uff1a\u9a8c\u8bc1\u56de\u6d4b\u670d\u52a1\u53ef\u7528", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L95"}, {"id": "data_platform_01_requirements_p2", "label": "P2\uff1a\u6570\u636e\u57fa\u7840\u8bbe\u65bd", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L106"}, {"id": "data_platform_01_requirements_p2_1_fallback_py", "label": "P2-1\uff1a\u591a\u6e90\u964d\u7ea7\u7ba1\u7406\u5668 `fallback.py`", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L108"}, {"id": "data_platform_01_requirements_p2_2_validator_py", "label": "P2-2\uff1a\u6570\u636e\u6821\u9a8c\u5c42 `validator.py`", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L119"}, {"id": "data_platform_01_requirements_p2_3_realtime_py", "label": "P2-3\uff1a\u5b9e\u65f6\u884c\u60c5\u4e09\u6e90\u964d\u7ea7 `realtime.py`", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L128"}, {"id": "data_platform_01_requirements_p2_4_updater_py", "label": "P2-4\uff1a\u589e\u91cf\u66f4\u65b0 `updater.py`", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L137"}, {"id": "data_platform_01_requirements_p2_5_cron", "label": "P2-5\uff1acron\u5b9a\u65f6\u4efb\u52a1", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L147"}, {"id": "data_platform_01_requirements_p3", "label": "P3\uff1a\u5206\u949f\u7ebf\u6570\u636e", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L157"}, {"id": "data_platform_01_requirements_p3_1_p0", "label": "P3-1\uff1aP0\u9650\u9891\u9a8c\u8bc1", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L159"}, {"id": "data_platform_01_requirements_p3_2_p3_3", "label": "P3-2/P3-3\uff1a\u5206\u949f\u7ebf\u5168\u91cf\u4e0b\u8f7d", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L169"}, {"id": "data_platform_01_requirements_p3_4_vnpy_db", "label": "P3-4\uff1a\u5206\u949f\u7ebf\u5bfc\u5165vnpy DB", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L179"}, {"id": "data_platform_01_requirements_p4_skill", "label": "P4\uff1a\u914d\u5957skill\u4e0e\u81ea\u52a8\u5316", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L189"}, {"id": "data_platform_01_requirements_p4_1_p4_2_skill", "label": "P4-1/P4-2\uff1a\u66f4\u65b0skill\u6587\u6863", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L191"}, {"id": "data_platform_01_requirements_p4_3", "label": "P4-3\uff1a\u5168\u91cf\u6821\u9a8c\u811a\u672c", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L195"}, {"id": "data_platform_01_requirements_p4_4_cron", "label": "P4-4\uff1a\u5468\u7ef4\u62a4cron", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L199"}, {"id": "data_platform_01_requirements_205", "label": "\u4e09\u3001\u4ea4\u4ed8\u7269\u6e05\u5355", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L205"}, {"id": "data_platform_01_requirements_openclaw_sanguo_projects_sanguo_vnpy_data_platform", "label": "\u4ee3\u7801\u6587\u4ef6\uff08\u653e\u5230 `~/.openclaw/sanguo_projects/sanguo_vnpy/data_platform/`\uff09", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L207"}, {"id": "data_platform_01_requirements_218", "label": "\u6587\u6863\u6587\u4ef6", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L218"}, {"id": "data_platform_01_requirements_226", "label": "\u914d\u7f6e\u6587\u4ef6", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L226"}, {"id": "data_platform_01_requirements_235", "label": "\u56db\u3001\u5047\u8bbe\u4e0e\u4e0d\u786e\u5b9a\u9879", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L235"}, {"id": "data_platform_01_requirements_253", "label": "\u4e94\u3001\u7ea6\u675f", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L253"}, {"id": "data_platform_01_requirements_267", "label": "\u516d\u3001\u6210\u529f\u6807\u51c6", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L267"}, {"id": "data_platform_01_requirements_280", "label": "\u4e03\u3001\u6570\u636e\u6d41\u67b6\u6784", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L280"}, {"id": "data_platform_01_requirements_codeblock_3", "label": "code:block3 (Layer 1: \u8fdc\u7a0b\u6570\u636e\u6e90)", "file_type": "document", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L282"}], "edges": [{"source": "users_chufeng_openclaw_sanguo_projects_sanguo_vnpy_docs_data_platform_01_requirements_md", "target": "data_platform_01_requirements", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L1", "weight": 1.0}, {"source": "data_platform_01_requirements", "target": "data_platform_01_requirements_10", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L10", "weight": 1.0}, {"source": "data_platform_01_requirements_10", "target": "data_platform_01_requirements_1_1", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L12", "weight": 1.0}, {"source": "data_platform_01_requirements_10", "target": "data_platform_01_requirements_1_2", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L22", "weight": 1.0}, {"source": "data_platform_01_requirements_1_2", "target": "data_platform_01_requirements_codeblock_1", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L27", "weight": 1.0}, {"source": "data_platform_01_requirements_10", "target": "data_platform_01_requirements_1_3", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L32", "weight": 1.0}, {"source": "data_platform_01_requirements", "target": "data_platform_01_requirements_38", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L38", "weight": 1.0}, {"source": "data_platform_01_requirements_38", "target": "data_platform_01_requirements_p1_vnpy", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L40", "weight": 1.0}, {"source": "data_platform_01_requirements_p1_vnpy", "target": "data_platform_01_requirements_p1_1_docker_volume", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L42", "weight": 1.0}, {"source": "data_platform_01_requirements_p1_vnpy", "target": "data_platform_01_requirements_p1_2_vnpy_db", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L57", "weight": 1.0}, {"source": "data_platform_01_requirements_p1_2_vnpy_db", "target": "data_platform_01_requirements_codeblock_2", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L73", "weight": 1.0}, {"source": "data_platform_01_requirements_p1_vnpy", "target": "data_platform_01_requirements_p1_3", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L85", "weight": 1.0}, {"source": "data_platform_01_requirements_p1_vnpy", "target": "data_platform_01_requirements_p1_4", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L95", "weight": 1.0}, {"source": "data_platform_01_requirements_38", "target": "data_platform_01_requirements_p2", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L106", "weight": 1.0}, {"source": "data_platform_01_requirements_p2", "target": "data_platform_01_requirements_p2_1_fallback_py", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L108", "weight": 1.0}, {"source": "data_platform_01_requirements_p2", "target": "data_platform_01_requirements_p2_2_validator_py", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L119", "weight": 1.0}, {"source": "data_platform_01_requirements_p2", "target": "data_platform_01_requirements_p2_3_realtime_py", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L128", "weight": 1.0}, {"source": "data_platform_01_requirements_p2", "target": "data_platform_01_requirements_p2_4_updater_py", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L137", "weight": 1.0}, {"source": "data_platform_01_requirements_p2", "target": "data_platform_01_requirements_p2_5_cron", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L147", "weight": 1.0}, {"source": "data_platform_01_requirements_38", "target": "data_platform_01_requirements_p3", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L157", "weight": 1.0}, {"source": "data_platform_01_requirements_p3", "target": "data_platform_01_requirements_p3_1_p0", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L159", "weight": 1.0}, {"source": "data_platform_01_requirements_p3", "target": "data_platform_01_requirements_p3_2_p3_3", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L169", "weight": 1.0}, {"source": "data_platform_01_requirements_p3", "target": "data_platform_01_requirements_p3_4_vnpy_db", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L179", "weight": 1.0}, {"source": "data_platform_01_requirements_38", "target": "data_platform_01_requirements_p4_skill", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L189", "weight": 1.0}, {"source": "data_platform_01_requirements_p4_skill", "target": "data_platform_01_requirements_p4_1_p4_2_skill", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L191", "weight": 1.0}, {"source": "data_platform_01_requirements_p4_skill", "target": "data_platform_01_requirements_p4_3", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L195", "weight": 1.0}, {"source": "data_platform_01_requirements_p4_skill", "target": "data_platform_01_requirements_p4_4_cron", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L199", "weight": 1.0}, {"source": "data_platform_01_requirements", "target": "data_platform_01_requirements_205", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L205", "weight": 1.0}, {"source": "data_platform_01_requirements_205", "target": "data_platform_01_requirements_openclaw_sanguo_projects_sanguo_vnpy_data_platform", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L207", "weight": 1.0}, {"source": "data_platform_01_requirements_205", "target": "data_platform_01_requirements_218", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L218", "weight": 1.0}, {"source": "data_platform_01_requirements_205", "target": "data_platform_01_requirements_226", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L226", "weight": 1.0}, {"source": "data_platform_01_requirements", "target": "data_platform_01_requirements_235", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L235", "weight": 1.0}, {"source": "data_platform_01_requirements", "target": "data_platform_01_requirements_253", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L253", "weight": 1.0}, {"source": "data_platform_01_requirements", "target": "data_platform_01_requirements_267", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L267", "weight": 1.0}, {"source": "data_platform_01_requirements", "target": "data_platform_01_requirements_280", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L280", "weight": 1.0}, {"source": "data_platform_01_requirements_280", "target": "data_platform_01_requirements_codeblock_3", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/chufeng/.openclaw/sanguo_projects/sanguo_vnpy/docs/data-platform/01-requirements.md", "source_location": "L282", "weight": 1.0}], "input_tokens": 0, "output_tokens": 0}