Skip to content

Instantly share code, notes, and snippets.

@wannadrunk
Last active January 11, 2025 10:09
Show Gist options
  • Save wannadrunk/f2d005e32b89b660ce7be39879a8cc77 to your computer and use it in GitHub Desktop.
Save wannadrunk/f2d005e32b89b660ce7be39879a8cc77 to your computer and use it in GitHub Desktop.
Get the SCBAM fund nav to Google Sheet.
function getSCBAMNAV() {
var url = 'https://';
var options = {
'method': 'get',
'contentType': 'application/json'
};
var today = Utilities.formatDate(new Date(), Session.getScriptTimeZone(), 'yyyy-MM-dd HH:mm');
var response = UrlFetchApp.fetch(url, options);
var tableNAV = JSON.parse(response.getContentText());
var sortedFundCodes = Object.keys(tableNAV).sort();
var data = sortedFundCodes.map(function(fundcode) {
return [fundcode, tableNAV[fundcode].navunit, tableNAV[fundcode].navdate];
});
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('SCBAMNAV');
if (!sheet) {
sheet = SpreadsheetApp.getActiveSpreadsheet().insertSheet('SCBAMNAV');
sheet.appendRow(['Fund Code', 'NAV', 'NAV Date']);
}
sheet.getRange('E1').setValue(today);
var range = sheet.getRange('A2:D')
range.clearContent();
sheet.getRange(2, 1, data.length, 3).setValues(data);
var cell = sheet.getRange('B2:B');
cell.setNumberFormat('0.0000');
}
/**
* create custom menu
*/
function onOpen() {
var ui = SpreadsheetApp.getUi();
ui.createMenu('SCBAM NAV')
.addItem('Get NAV', 'getSCBAMNAV')
.addToUi();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment