示例与演示

仓库里有两类可运行材料:展示 API 用法的小程序,以及测量它的基准。它们都用同一份检出构建;都不会下载数据。

渲染一份因子报表

examples/render_factor_report.cpp 构建一个合成因子面板、分析它,并写出三个产物:英文 HTML 报表、中文 HTML 报表与 XLSX 工作簿。它展示了从准备好的数据到渲染文档的最短路径。

cmake --build build --parallel --target fincore_report_render
./build/fincore_report_render report.html
# writes report.html, report.zh.html and report.xlsx

传 --echarts 可用内嵌 ECharts 渲染图表,而不是内联 SVG:

./build/fincore_report_render --echarts report.html

报表是确定性的:同一文档渲染两次得到相同字节,这正是文件可以安全比较与哈希的原因。

用所有后端渲染同一份文档

examples/render_iteration8_artifacts.cpp 接收一个目录,把同一份文档写成 HTML(内联 SVG 与 ECharts)、XLSX、Plotly JSON、Bokeh JSON 与 PDF,然后打印文档的语义摘要。

cmake --build build --parallel --target fincore_i8_artifacts
./build/fincore_i8_artifacts ./out

摘要只取决于文档,与后端无关,因此这六个文件即使格式不同,也可以对照一个记录好的摘要。

交互式 ImPlot 仪表盘

examples/implot_dashboard.cpp 在 ImGui/ImPlot 窗口中绘制 tears、前沿、热力图与事件面板。只有开启图形选项且图形依赖存在时才会构建:

cmake -S . -B build-gui -DFINCORE_BUILD_IMPLOT=ON -DFINCORE_BUILD_IMPLOT_DEMO=ON
cmake --build build-gui --parallel --target fincore_implot_demo

变量

作用

FINCORE_IMPLOT_VIEW

general、factor、groups、events 或 specialized

FINCORE_IMPLOT_CAPTURE

无界面渲染三帧并写出 PPM 图像

无法识别的视图名会以退出码 2 拒绝,而不是静默回退到通用视图。

基准

目标

作用

fincore_factor_benchmark

一次计算型因子流水线用例,每个用例一条 JSON 记录

fincore_alpha003_research

性能对比使用的 Alpha003 A 股研究负载

cmake --build build --parallel --target fincore_factor_benchmark fincore_alpha003_research
python benchmarks/alpha003_a_stocks/run_benchmark.py --help

Python 驱动器运行成对的参考/候选评估,按摘要比较研究表,并写出一份 HTML 对比报告。比率说明与不说明什么见性能,生成的产物不要入库。

代码在哪里

examples/        report rendering and dashboard demos
benchmarks/      factor and alpha003 workloads, plus the Python drivers
tests/           unit, consumer and oracle tests

每个示例都是已安装库的普通消费者:它包含 <fincore/...> 头文件并链接 fincore::fincore,因此它同时是一次编译期检查 —— 公共接口在构建树之外可用。