因此,我有来自 CoinMarketCap 的这个脚本来查询加密货币价格。我想修改这个脚本,以便可以将其应用于单元格,然后将其拖放到列中以读取另一个单元格列中的股票代码。我对 App Scripts 完全是菜鸟。
function getLatestBTCPrice() {
var url = "https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest";
var apiKey = 'YOUR_API_KEY'; // Replace with your API key
var headers = {
"X-CMC_PRO_API_KEY": apiKey,
"Accept": "application/json"
};
var parameters = {
"symbol": "BTC"
};
var response = UrlFetchApp.fetch(url + "?" + Object.keys(parameters).map(key => key + '=' +
parameters[key]).join('&'), {'headers': headers});
var json = JSON.parse(response.getContentText());
var btcPrice = json.data.BTC.quote.USD.price;
return btcPrice;
}
这是我迄今为止尝试过的方法,但没有成功。我遇到的问题是,var tickerPrice = json.data.ETC.quote.USD.price;
我想让 ETC 更新,因为它读取了新的股票代码,但我似乎无法弄清楚。
function getTickerPrice() {
var url = "https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest";
var apiKey = 'YOUR_API_KEY'; // Replace with your API key
var headers = {
"X-CMC_PRO_API_KEY": apiKey,
"Accept": "application/json"
};
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var ticker = sheet.getRange('A3').getValue();
var parameters = {
"symbol": ticker
};
var response = UrlFetchApp.fetch(url + "?" + Object.keys(parameters).map(key => key + '=' +
parameters[key]).join('&'), {'headers': headers});
var json = JSON.parse(response.getContentText());
var tickerPrice = json.data.ETC.quote.USD.price;
return tickerPrice;
目标是有一个公式和
apply it to a cell and then drag and drop it down the column to read the ticker symbol in another cell column
。这是脚本的修改版本,它应该可以实现您想要的功能:
我删除了脚本中的
var sheet = SpreadsheetApp.getActiveSpreadsheet();
和,因为它仅捕获和更改为,以便它从您将指向它的单元格中读取股票行情机。var ticker = sheet.getRange('A3').getValue();
A3
var tickerPrice = json.data.ETC.quote.USD.price;
var tickerPrice = json.data[ticker].quote.USD.price;
输出
注意:为了使其工作,您需要像
=getTickerPrice(A3)
在 Google 表格中一样调用该and then drag
函数down
。参考