Notas de quickstart
Grafique um histórico de preços no Google Sheets
O quickstart de Sheets atualiza o quadro a cada 15 minutos. Uma aba History que só cresce o transforma num registro de preços graficável.
O quickstart de Sheets atualiza o quadro de pré-jogo numa aba Odds a cada 15 minutos, uma linha por partida. Isso diz onde os preços estão, nunca onde estiveram. Uma segunda aba, que só cresce, transforma o mesmo script num histórico de preços, e um histórico é o que um gráfico precisa.
Adicione uma aba que nunca é limpa
O script do quickstart reescreve a aba Odds a cada execução. O histórico vive em outro lugar: uma aba History onde cada execução anexa linhas em vez de substituí-las. Uma função extra, chamada logo após a atualização, faz o anexo:
function appendHistory() {
const ss = SpreadsheetApp.getActive();
const odds = ss.getSheetByName('Odds');
let hist = ss.getSheetByName('History');
if (!hist) {
hist = ss.insertSheet('History');
hist.appendRow(['Time', 'Match', 'Home', 'Draw', 'Away']);
}
const rows = odds.getDataRange().getValues();
const now = new Date();
const out = [];
for (let i = 1; i < rows.length; i++) {
const r = rows[i];
out.push([now, r[2] + ' v ' + r[3], r[4], r[5], r[6]]);
}
if (out.length) {
hist.getRange(hist.getLastRow() + 1, 1, out.length, 5)
.setValues(out);
}
}
Chame appendHistory() no fim de refreshOdds, ou dê a ela o mesmo gatilho de 15 minutos. A cadência do quickstart é 96 chamadas por dia, que cabe no orçamento diário de uma chave gratuita, como a página de Sheets afirma, verificado em 2026-10-25; anexar linhas não custa nenhuma chamada extra, porque lê a aba que a atualização já escreveu.
Mantenha o histórico pequeno o bastante para virar gráfico
Cada execução adiciona uma linha por partida no quadro, e o quadro de um esporte inteiro é muito mais do que você vai um dia graficar. Filtre dentro do loop: uma liga, ou uma lista curta de partidas que você realmente acompanha. Dez partidas observadas a 96 execuções por dia dão cerca de 29.000 linhas por mês, confortável para uma planilha; o quadro inteiro a cada 15 minutos, não.
Uma coluna-chave de partida é o que torna as linhas utilizáveis. A linha do quickstart já traz os nomes de casa e fora; juntá-los, como o esboço faz, dá ao filtro do gráfico algo estável para casar.
Da aba ao gráfico
O gráfico em si não precisa de script. Filtre a aba History por uma partida (Dados, depois Criar filtro, e escolha na coluna Match), selecione a coluna Time e a coluna de preço desejada, e insira um gráfico de linhas. O gráfico segue o filtro, então trocar de partida redesenha a série.
Três colunas de preço dão três séries num gráfico, e o movimento entre execuções fica visível num relance: uma deriva quieta, um degrau súbito, a forma de um preço se aproximando do início. Essa forma é o que um snapshot único nunca mostra.
Para que serve o histórico
Um gráfico de preço responde às perguntas que um quadro não responde: quando este movimento começou, quão rápido ele andou, se ele segurou. A aba Odds continua sendo o presente, atualizada a cada 15 minutos. A aba History é o registro, e o gráfico é só o registro lido em voz alta.