基金助手

unlisted

by Jiaxin

更新基金净值、补算定投持仓,并基于场内ETF行情计算网格中轴与建议间距。

Updated 12d agoMIT
View on GitHub

基金助手

一个以 Obsidian Markdown 为数据载体的轻量基金管理插件,提供基金持仓总览、净值更新、定投推算、资产分组和网格策略辅助。

本插件仅用于个人资产记录和策略辅助,不构成任何投资建议。请以基金销售平台、基金公司和证券交易所公布的数据为准。

功能

  • 投资总览:汇总持有金额、收益、收益率、每日收益和分组配置。
  • 基金页面:展示净值、持仓、收益和定投状态,并支持持仓校准。
  • 净值更新:按基金代码获取历史净值,更新当前持仓数据。
  • 定投推算:支持日、周、月频率,按已公布净值补算应执行的定投。
  • 资产分组:自定义分组、目标占比和颜色。
  • 网格策略:使用用户指定的场内 ETF 作为参考,按正式收盘价计算网格中轴、间距和买卖触发点。
  • QDII 额度:列出标普500、纳斯达克100方向当前可申购的场外基金,展示代销/直销额度及管理费与托管费的合计费率。
  • 桌面端与移动端:不依赖桌面专属 API。

安装

使用 BRAT

  1. 在 Obsidian 第三方插件市场安装并启用 BRAT。
  2. 打开 BRAT 设置,选择 Add Beta plugin
  3. 输入仓库地址:l21b/fund-assistant
  4. 安装完成后,在 Obsidian 第三方插件列表启用“基金助手”。

手动安装

Releases 下载以下文件:

  • main.js
  • manifest.json
  • styles.css

将它们放入:

你的仓库/.obsidian/plugins/fund-assistant/

重新启动 Obsidian,然后在第三方插件设置中启用插件。

开始使用

首次启用后,进入插件设置并选择“一键创建”,插件会创建:

投资/投资总览.md
投资/网格策略.md
投资/QDII额度.md
投资/基金配置.json
投资/基金持仓/

随后可以在投资总览中添加基金。持仓校准需要填写当前份额、持有金额和持有收益,以减少销售平台显示精度造成的累计偏差。

自动定投与补算

  • 无需确认交易。刷新时读取历史净值,日定投按有净值的工作日逐期计算;周/月定投使用计划日及之后第一条有效净值。多期顺延到同一净值日时分别入账。
  • 没有打开插件期间的期数会在下次刷新时补算。每期记录计划日期、金额、费率、净值日期、净值和新增份额;按期次编号防重,记录与持仓一起保存。
  • 记录及计划版本以文本列表保存在基金笔记属性中。基金页面的“自动定投记录”默认折叠,可展开查看,不需要手动维护或确认。
  • 已有笔记首次升级时,以原来的“最后定投日期”为补算基准,不重建已计入持仓的历史交易。请勿删除记录、版本或补算基准属性,否则可能失去防重依据。
  • 新添加基金从次日开始定投,录入的份额作为当前持仓。通过定投设置修改金额、费率、频率,或暂停、恢复,均从保存次日生效;此前尚未公布净值的期数继续使用旧计划。迁移后直接编辑计划属性,从插件下次读取的次日生效;推荐使用设置界面。
  • 校准时须填写“持仓截止净值日期”:快照已经包含截至该净值日的定投,之后继续补算。不能回退到已入账日期之前。校准日的每日收益暂不显示,下一净值日恢复计算。
  • 按公开净值推算,不校验实际扣款是否成功。日定投的历史缺失净值后来补回时可以补记;周/月已入账期次及已采用净值不自动追溯修改。数据源遗漏或修订造成的差异可通过持仓校准处理。

数据与隐私

  • 基金持仓、定投设置和网格设置保存在用户自己的 Obsidian 仓库中。
  • 插件设置、网格历史行情和 QDII 公开数据缓存保存在插件的本地 data.json 中。
  • 插件不包含账号系统、遥测、广告或用户行为统计。
  • 插件不会上传笔记内容、基金持仓、文件名或其他个人信息。
  • 更新基金净值时会请求 fund.eastmoney.com
  • 更新网格行情时会请求 web.ifzq.gtimg.cnqt.gtimg.cn
  • 更新 QDII 额度时会请求 anxinletech.com 的公开额度日报和基金档案,并在页面中标注数据来源。
  • 第三方数据接口可能出现延迟、限流、格式调整或临时不可用。

更新方式

使用 BRAT 安装的用户可以通过 BRAT 检查更新。手动安装的用户需要从最新 Release 重新下载三个安装文件并覆盖旧文件。

本地开发

npm test
npm run build

构建产物位于 build/

许可证

MIT

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.