Я пытаюсь получить исторические данные о ценах на данный продукт за определенный период из GDAX API. Я понимаю следующее примечание:
Максимальное количество точек данных для одного запроса — 350 свечей. Если ваш выбор времени начала/окончания и детализации приведет к более чем 350 точкам данных, ваш запрос будет отклонен. Если вы хотите получить данные с высокой степенью детализации за более широкий временной диапазон, вам нужно будет сделать несколько запросов с новыми начальными и конечными диапазонами.
Однако, если бы я хотел получить дневное значение за 1 год со следующим кодом:
const Gdax = require('gdax');
const publicClient = new Gdax.PublicClient();
publicClient.getProductHistoricRates(
'BTC-USD',
{ granularity: 60,
start: '2017-01-01', end: '2018-01-01' }
).then((res) => {
console.log(res)
});
то я получаю следующее сообщение об ошибке:
{ сообщение: 'детализация слишком мала для запрошенного диапазона времени' }
что имеет смысл, потому что будет 365 результатов, что превышает лимит в 350. Думаю, я мог бы сделать запрос на 1 января -> 16 декабря и второй запрос на 16 декабря -> 31 декабря. Однако следующее замечание:
Исторические данные о курсах могут быть неполными. Для интервалов, где нет тиков, данные не публикуются.
Предполагает, что, особенно на меньших интервалах, эта логика может быть ошибочной. Есть ли более интеллектуальный способ перечисления за период более 350 точек данных?