大师投资投资 & 收益 · masterinvest.info

如何用 CoinGecko 在 Google 表格追踪币价

昨天, 13:42

如何使用 CoinGecko API 在 Google 表格中追踪加密货币价格

1. 建表前先明确价格追踪需求

先写一份简短的需求说明,而不是马上编写公式。列出要追踪的币种、报价货币、更新频率,以及你需要的是最新价格、历史记录,还是两者都需要。用于查看 BTC 和 ETH 美元价格的表格,与记录欧元和英镑混合投资组合的表格,用途并不相同。

第一版尽量保持精简。例如,先用一种货币追踪三种币,每小时刷新一次。确认结果与 CoinGecko 显示的数据一致后,再增加行数或币种。所需请求量和可用刷新选项取决于你选择的接入方式和账户条款,因此设定更新频率前,请先确认当前限制。

明确表格中的“价格”具体指什么。当前报价是某一时点的数值,并不代表保证能以该价格成交。如果你打算将它与交易进行比较,请记录报价时间,不要把延迟或缓存的结果当作实时价格。

2. 选择适合你配置的 API 接入方式

将 CoinGecko 数据接入 Google 表格,常见方法有三种:使用表格插件、编写简短的 Apps Script,或使用第三方连接器。对不熟悉技术的用户来说,插件通常是最快捷的选择。脚本能让你更灵活地控制请求格式和数据存储方式。连接器可以省去编写代码的工作,但如果刷新停止运行,你还需要排查另一个服务。

选择前,请比较各方式的身份验证、请求配额和维护要求。确认是否需要 API 密钥、密钥存放在哪里、支持怎样的刷新频率,以及相关限制是否满足你计划追踪的币种和货币数量。CoinGecko 的 API 接入选项和条款可能会变化,请查阅其文档了解当前要求。

如果使用 Apps Script,请打开表格的脚本编辑器,编写一个从 CoinGecko 请求数据、解析响应并将所需字段写入工作表的函数。基础脚本只专注完成一项任务,并能给出清晰的错误信息,这样更容易排查问题。不要把私密 API 密钥放在所有表格查看者都能看到的单元格中。

如果你还在比较不同工具,可以阅读这篇关于如何选择最佳加密货币交易所的指南。它讨论的是另一个问题:如何选择交易平台,而不是数据来源。将这两项选择分开,有助于避免把 API 数据源误当成交易所账户。

3. 创建币种与货币查找表

请求时使用 CoinGecko 的币种 ID,而不是只用代号。不同项目可能使用相同的代号,而 ID 能让 API 精确查找特定资产。新建一个名为“Lookup”的工作表,并设置显示名称、CoinGecko ID、代号和目标货币几列。

显示名称CoinGecko ID代号货币
比特币bitcoinBTCusd
以太坊ethereumETHusd
示例资产[确认 ID][确认代号]eur

前两行展示了应记录的标识符格式;使用前,请逐一在 CoinGecko 上核实所有 ID。代号适合用作标签,但不能代替请求中的 ID。投资组合中如果包含代号与其他项目相似的小型代币,这一点尤其重要。

货币代码应采用统一格式,例如小写的 `usd` 或 `eur`,前提是所选接口要求这种格式。你可以在 Google 表格中添加数据验证规则,将货币列限制为当前配置支持的币种。这样的小检查可以避免将 `usdd` 之类的拼写错误传给 API。

4. 将当前价格导入清晰的数据表

将 API 原始输出与供人查看价格的工作表分开。“Raw”工作表可以存放响应内容或最近导入的数值;“Prices”工作表则显示币种名称、代号、货币、价格和时间戳。这样分开后,调整显示格式时不容易意外破坏请求逻辑。

典型的当前价格请求会将所选币种 ID 和报价货币发送到 CoinGecko 的价格接口。具体 URL、参数、身份验证方式和响应字段取决于所使用的 API 产品及接入方式,因此请参阅 CoinGecko 文档了解接口详情。整理返回数据时,应根据 ID 将数值对应到相应币种,不要假设响应顺序始终与手动输入的行顺序一致。

例如,你的展示表可以包含“比特币 | BTC | USD | 价格 | 更新时间”。价格列应设置为适当的小数位数,但要为所追踪的资产保留足够精度。对显示数值进行四舍五入属于展示选择;如果存储数值也被舍入,后续计算可能会失真。

如果你正在搜索“如何用 CoinGecko API 在 Google 表格追踪加密货币价格”,不妨先从一种币和一种货币开始,再确认返回的 ID、货币和报价都与数据源一致。确认可行后,再扩充查找表并逐行测试。搭建大型仪表板可能更有吸引力,但这种做法能及早发现 ID 不匹配的问题。

用公式进行计算,不要用公式掩盖数据缺失。如果请求失败,请显示“请求出错”等明确标记,或保留可见的错误状态,不要显示 0,让人误以为该资产已经一文不值。零值会影响投资组合总额,也可能引发与市场状况无关的决策。

5. 设置定时刷新并处理请求限制

只有在刷新间隔符合 API 接入权限时,自动刷新才有用。表格插件的刷新控制、Apps Script 触发器和连接器的定时设置各不相同。设置刷新间隔前,请先确认所选方式当前的配额和刷新规则;具体限制可能因套餐而异,也可能随时变更。

从较保守的更新频率和较小的请求开始。如果你追踪五种资产,而一次请求就能返回所需数值,就不要为每个单元格单独发起请求。减少调用次数有助于简化表格维护,但也要确认接口支持你同时提交的这些 ID 和货币。

通过合理设置 Apps Script 触发器或插件的刷新计划,可以实现 CoinGecko Google 表格自动更新币价;不过,自动化仍须遵循所选接入方式的请求配额和刷新规则。也要为失败情况做好准备:API 可能返回错误,服务可能暂时不可用,或者请求配额可能耗尽。请保留并显示最近一次成功更新的时间;除非你确实打算清除数据,否则不要用空响应覆盖之前的有效数据。过期报价仍然是过期的,因此应明确标注,而不是当作当前价格展示。

Apps Script 触发器可以按计划运行,但仍受 Google 自身的执行限制和授权要求约束。设置完成后,请检查触发器状态;如果更新停止,请查看执行日志。Google 和 CoinGecko 的限制彼此独立;遵守其中一方的限制,并不意味着另一方一定会接受每个请求。

6. 添加时间戳并保留价格快照

如果表格每天都用最新价格覆盖前一天的数据,就无法查看价格变化。新建一个“History”工作表,按币种和每次刷新各存一行,列中包含时间戳、币种 ID、货币和价格。每次成功获取数据时都新增一行,不要覆盖之前的记录。这样就能用 Google 表格记录加密货币历史价格,并保留每次观测的数据。

例如,一条快照记录可以是“2026-11-12 10:00 | bitcoin | usd | [返回的数值]”。使用连接程序或脚本实际报告的时间,并注明是 UTC 还是本地时间。展示的价格应与同一次刷新的时间戳配对,而不是与某人上次打开表格的时间配对。

在历史记录不断增加之前,先确定保留方案。根据用途和请求配额,你可以为长期个人追踪器保留每日快照,也可以为短期监控保存更频繁的记录。不要因为表格积累了快照,就以为 API 响应提供了历史数据;两者的数据来源并不相同。

有了带日期的记录,只要币种 ID 和报价货币一致,就可以计算两次观测之间的变化。比较 BTC/USD 与 BTC/EUR 的记录时,结果既包含价格变化,也受到汇率影响;在绘制图表前,请明确标注不同数据序列。

7. 验证结果并维护数据连接

在信任仪表板前,先做几项检查。确认币种 ID 正确、货币标签与请求一致、返回的价格是数值,并且时间戳属于本次刷新。然后从结果中抽样与 CoinGecko 网站上的数据对比,同时考虑到两处数据的更新时间可能不同。

测试时应保留可见的错误响应。请求失败可能是因为密钥无效、参数格式不正确、配额问题或服务暂时故障。记录错误信息和发生时间;一次改动多个设置会让问题更难定位。如果同一错误反复出现,请检查接口文档和接入方案。

记录脚本或连接器的负责人、凭证存放位置,以及哪些工作表可以安全编辑。如果有人重命名了脚本依赖的列,即使 CoinGecko 没有任何变化,连接也可能失效。保护查找表和原始数据表,避免被随意编辑,可减少这类问题。

当 CoinGecko 更改 API 条款、身份验证方式、可用接口或配额时,请检查并维护当前配置;修改正式使用的表格前,先确认最新要求。每次变更后用一种币做测试,通常就足以在错误参数影响所有行之前发现问题。将这个测试保留在工作簿中,方便其他人日后重复执行。