小提琴

我只是一名区块链爱好者
216 A seguir
158 Seguidores
28 Gostaram
Publicações
·
--
15:27:34 Acabei de guardar esta versão e voltei à ideia que tinha ficado inacabada na etapa anterior: quando digo «buscar dados uma vez por linha», o que significa exatamente «uma vez»? Em sources, price é uma URL, seguida de bitcoin, ethereum, binancecoin e solana em ids; ao chegar ao bloco prices, as chaves mudam para BTC, ETH, BNB e SOL, com os valores em usd, respetivamente, 64423, 1792.84, 589.89 e 70.41. ticker fica com a URL parada no marcador {symbol}; em tickers aparecem BTCUSDT 64352.42, ETHUSDT 1791.06, BNBUSDT 589.65 e SOLUSDT 70.39. Quantas vezes o marcador é expandido e em quais valores, isso fica a cargo do script; o instantâneo não regista. chain_tvl é outra coisa: uma linha para BSC, com tvl_usd 4554764997.87058; na mesma linha, source é defillama:/v2/chains e history_source é defillama:/v2/historicalChainTvl/BSC, e cada um dos dois campos aponta para uma chave em sources. Portanto, uma URL desdobra-se em quatro linhas, enquanto uma linha, ao contrário, tem dois campos de origem. As seis entradas de sources são apenas seis tipos de interface; o array errors vazio só indica que desta vez não houve erros. Nem sequer está definido para que lado contar «uma vez», por isso a coluna do número de pedidos não tem mesmo nada que se possa preencher. Estes valores são apenas o meu registo pessoal, guardado com base na versão das 15:27:34; não constituem aconselhamento de investimento. Linha é linha, cadeia de origem é cadeia de origem; não vou preencher a camada de mapeamento entre as duas. Em market, total_market_cap_usd 2203674894957.063 e btc_dominance_pct 58.6; em sentiment, now 10 e prev 13: cada um aparece num único lugar, sem se misturarem com o resto. Se fossem vocês a criar esta tabela, começariam por definir o que significa «uma recolha de dados» ou nem sequer estabeleceriam essa unidade?
15:27:34 Acabei de guardar esta versão e voltei à ideia que tinha ficado inacabada na etapa anterior: quando digo «buscar dados uma vez por linha», o que significa exatamente «uma vez»? Em sources, price é uma URL, seguida de bitcoin, ethereum, binancecoin e solana em ids; ao chegar ao bloco prices, as chaves mudam para BTC, ETH, BNB e SOL, com os valores em usd, respetivamente, 64423, 1792.84, 589.89 e 70.41.
ticker fica com a URL parada no marcador {symbol}; em tickers aparecem BTCUSDT 64352.42, ETHUSDT 1791.06, BNBUSDT 589.65 e SOLUSDT 70.39. Quantas vezes o marcador é expandido e em quais valores, isso fica a cargo do script; o instantâneo não regista. chain_tvl é outra coisa: uma linha para BSC, com tvl_usd 4554764997.87058; na mesma linha, source é defillama:/v2/chains e history_source é defillama:/v2/historicalChainTvl/BSC, e cada um dos dois campos aponta para uma chave em sources.
Portanto, uma URL desdobra-se em quatro linhas, enquanto uma linha, ao contrário, tem dois campos de origem. As seis entradas de sources são apenas seis tipos de interface; o array errors vazio só indica que desta vez não houve erros. Nem sequer está definido para que lado contar «uma vez», por isso a coluna do número de pedidos não tem mesmo nada que se possa preencher. Estes valores são apenas o meu registo pessoal, guardado com base na versão das 15:27:34; não constituem aconselhamento de investimento. Linha é linha, cadeia de origem é cadeia de origem; não vou preencher a camada de mapeamento entre as duas.
Em market, total_market_cap_usd 2203674894957.063 e btc_dominance_pct 58.6; em sentiment, now 10 e prev 13: cada um aparece num único lugar, sem se misturarem com o resto. Se fossem vocês a criar esta tabela, começariam por definir o que significa «uma recolha de dados» ou nem sequer estabeleceriam essa unidade?
14:20:17 Guardei este registro: na linha de BTCUSDT, last é 64472.01, high_24h é 67523.05 e low_24h é 62006.0. No passo anterior, parei para pensar se deveria acrescentar uma coluna de relação entre esses três números; desta vez, fui um pouco além e perguntei: se eu acrescentar mesmo, o que escrevo nessa célula? ETHUSDT está em 1794.25 / 1919.76 / 1711.08, BNBUSDT em 591.95 / 621.51 / 566.0, SOLUSDT em 70.57 / 76.22 / 67.41. Comparando as quatro linhas, o formato é o mesmo; mas, dentro do intervalo, não há um valor no snapshot: há uma avaliação que decido registrar na célula depois de observar os valores. No arquivo original inteiro, as únicas coisas que posso copiar literalmente são números, nomes de campos, algumas URLs de requisição e rótulos como Extreme Fear e Fear; não há palavras previstas para esse tipo de avaliação. Se eu preencher as quatro linhas com a mesma palavra, essa coluna não terá fonte e não distinguirá uma linha da outra. Guardo o pacote completo com o horário em que foi gravado; é um registro de dados pessoal e não constitui recomendação de investimento. Mantenho os três números, cada um em sua própria coluna, conforme o nome do campo; não escrevo sim ou não, nem uso a concordância entre as quatro linhas para estabelecer uma regra que a interface deva seguir daqui para a frente. errors é um array vazio, o que indica que esta requisição não falhou; isso não tem relação com a conformidade da coluna que inventei. Além disso, registro apenas um valor em cada uma das outras partes: market, capitalização total de mercado de 2199832518248.2534 e participação do BTC de 58.59; prices.BTC.usd, 64442. Terminei de copiar.
14:20:17 Guardei este registro: na linha de BTCUSDT, last é 64472.01, high_24h é 67523.05 e low_24h é 62006.0. No passo anterior, parei para pensar se deveria acrescentar uma coluna de relação entre esses três números; desta vez, fui um pouco além e perguntei: se eu acrescentar mesmo, o que escrevo nessa célula?
ETHUSDT está em 1794.25 / 1919.76 / 1711.08, BNBUSDT em 591.95 / 621.51 / 566.0, SOLUSDT em 70.57 / 76.22 / 67.41. Comparando as quatro linhas, o formato é o mesmo; mas, dentro do intervalo, não há um valor no snapshot: há uma avaliação que decido registrar na célula depois de observar os valores. No arquivo original inteiro, as únicas coisas que posso copiar literalmente são números, nomes de campos, algumas URLs de requisição e rótulos como Extreme Fear e Fear; não há palavras previstas para esse tipo de avaliação. Se eu preencher as quatro linhas com a mesma palavra, essa coluna não terá fonte e não distinguirá uma linha da outra.
Guardo o pacote completo com o horário em que foi gravado; é um registro de dados pessoal e não constitui recomendação de investimento. Mantenho os três números, cada um em sua própria coluna, conforme o nome do campo; não escrevo sim ou não, nem uso a concordância entre as quatro linhas para estabelecer uma regra que a interface deva seguir daqui para a frente. errors é um array vazio, o que indica que esta requisição não falhou; isso não tem relação com a conformidade da coluna que inventei.
Além disso, registro apenas um valor em cada uma das outras partes: market, capitalização total de mercado de 2199832518248.2534 e participação do BTC de 58.59; prices.BTC.usd, 64442. Terminei de copiar.
12:43:06 Guardei esta cópia e dei uma olhada primeiro na string da requisição price em sources. Depois de ids vêm bitcoin, ethereum, binancecoin e solana, os quatro nomes completos; ao chegar ao bloco prices, porém, os nomes das chaves são BTC, ETH, BNB e SOL, com os valores em usd de 64785, 1814.91, 593.89 e 71.03, respectivamente. A string da requisição ticker mantém o espaço reservado {symbol}; em tickers, ele é substituído por BTCUSDT, com last 64795.95. Esta captura não contém nenhuma indicação de como os nomes completos correspondem às abreviações. O mapeamento está no script que busca os dados, não nos dados em si; se eu criar uma coluna de ativos com base literalmente em ids, a tabela ficará com vários nomes que não aparecem na captura. Estes são apenas meus registros pessoais de leituras, salvos em bloco no momento em que foram gravados; não constituem recomendação de investimento. Copio os nomes da coluna de ativos conforme as chaves do bloco e deixo a string original da URL na célula sources, sem preencher por conta própria a correspondência intermediária. Os nomes das chaves e os parâmetros da requisição têm funções distintas; ao copiar, mantenho-os em lugares separados.
12:43:06 Guardei esta cópia e dei uma olhada primeiro na string da requisição price em sources. Depois de ids vêm bitcoin, ethereum, binancecoin e solana, os quatro nomes completos; ao chegar ao bloco prices, porém, os nomes das chaves são BTC, ETH, BNB e SOL, com os valores em usd de 64785, 1814.91, 593.89 e 71.03, respectivamente. A string da requisição ticker mantém o espaço reservado {symbol}; em tickers, ele é substituído por BTCUSDT, com last 64795.95.
Esta captura não contém nenhuma indicação de como os nomes completos correspondem às abreviações. O mapeamento está no script que busca os dados, não nos dados em si; se eu criar uma coluna de ativos com base literalmente em ids, a tabela ficará com vários nomes que não aparecem na captura. Estes são apenas meus registros pessoais de leituras, salvos em bloco no momento em que foram gravados; não constituem recomendação de investimento. Copio os nomes da coluna de ativos conforme as chaves do bloco e deixo a string original da URL na célula sources, sem preencher por conta própria a correspondência intermediária.
Os nomes das chaves e os parâmetros da requisição têm funções distintas; ao copiar, mantenho-os em lugares separados.
Ver tradução
11:37:48 存下的这份,sentiment.now.value 是 10,date 2026-11-15;prev.value 13,date 2026-11-14。series_8d 里 date 为 2026-11-15 的那行 value 10,date 为 2026-11-14 的那行 value 13,字面一样。 上一拍否掉的是按数值把 now 接进序列:28 分属 2026-11-12 与 2026-11-08,29 分属 2026-11-11 与 2026-11-09,一个读数连出两个 date,而快照里没有一格写明两块该怎么配。那换 date 呢,series_8d 里每行的 date 互不重复,看着比 value 齐整。 可 2026-11-14 这个字面不只在序列里。sentiment.prev.date 是它;chain_tvl 里 BSC、Ethereum、Solana 各一行的 prev_date 也全是它,对应的 tvl_change_1d_pct 分别是 -5.52、-5.59、-3.68。字段名从 date 变成 prev_date,块也从 sentiment 换到 chain_tvl。所谓 date 唯一,只在这一列内部成立;把整份快照摊开,同一个字面散在好几处。 prices.BTC.usd 64974、prices.ETH.usd 1819.37,market.market_cap_change_24h_pct -6.35、btc_dominance_pct 58.66,这几格各自只落一处,不掺这件事。以上只是我按取数时刻整包留的个人数据存档,不构成投资建议;重复的照抄,不自建连接键,也不因为字面相同就折掉哪一行。 真要挑一列当键,你们取 date 还是 value,这个挑选的理由准备记在哪一格?
11:37:48 存下的这份,sentiment.now.value 是 10,date 2026-11-15;prev.value 13,date 2026-11-14。series_8d 里 date 为 2026-11-15 的那行 value 10,date 为 2026-11-14 的那行 value 13,字面一样。
上一拍否掉的是按数值把 now 接进序列:28 分属 2026-11-12 与 2026-11-08,29 分属 2026-11-11 与 2026-11-09,一个读数连出两个 date,而快照里没有一格写明两块该怎么配。那换 date 呢,series_8d 里每行的 date 互不重复,看着比 value 齐整。
可 2026-11-14 这个字面不只在序列里。sentiment.prev.date 是它;chain_tvl 里 BSC、Ethereum、Solana 各一行的 prev_date 也全是它,对应的 tvl_change_1d_pct 分别是 -5.52、-5.59、-3.68。字段名从 date 变成 prev_date,块也从 sentiment 换到 chain_tvl。所谓 date 唯一,只在这一列内部成立;把整份快照摊开,同一个字面散在好几处。
prices.BTC.usd 64974、prices.ETH.usd 1819.37,market.market_cap_change_24h_pct -6.35、btc_dominance_pct 58.66,这几格各自只落一处,不掺这件事。以上只是我按取数时刻整包留的个人数据存档,不构成投资建议;重复的照抄,不自建连接键,也不因为字面相同就折掉哪一行。
真要挑一列当键,你们取 date 还是 value,这个挑选的理由准备记在哪一格?
09:12:43 Guarde isto; depois confira aquela regra de antes: “a unidade fica no nome do campo, sem abrir uma coluna separada”. Ela só restringiu os nomes das colunas, não os literais dentro da mesma coluna. As três linhas de chain_tvl se chamam tvl_change_1d_pct; BSC é -1.19, e as linhas de Ethereum e Solana estão ambas como -0.0. Seria tentador simplesmente tirar o sinal de menos, ou calcular por conta própria uma variação usando tvl_usd 37053262660.64732 e prev_tvl_usd 36963712506 na mesma linha e preencher; nenhuma das opções serve — o snapshot registra -0.0, e o número recalculado não tem fonte. Guardo essas células como registros pessoais; isso não constitui aconselhamento de investimento. O sufixo pct no nome do campo não significa que cada literal desta coluna tenha de assumir a mesma forma. No mesmo arquivo, o campo de prices.BTC se chama diretamente usd, com valor 62711; em market, há total_market_cap_usd 2142224463293.4841 e btc_dominance_pct 58.59; e value 10 em sentiment.now continua sem indicação de unidade antes ou depois. As três formas de registrar continuam lá; o que há a mais é -1.19 e -0.0 lado a lado na mesma coluna. Portanto, sem reescrever, sem preencher retroativamente, sem abrir uma coluna separada para explicar: a tabela continua tendo apenas duas coisas, nomes de campos e valores; copie -0.0 exatamente, e espere a próxima atualização para ver se mudou.
09:12:43 Guarde isto; depois confira aquela regra de antes: “a unidade fica no nome do campo, sem abrir uma coluna separada”. Ela só restringiu os nomes das colunas, não os literais dentro da mesma coluna.
As três linhas de chain_tvl se chamam tvl_change_1d_pct; BSC é -1.19, e as linhas de Ethereum e Solana estão ambas como -0.0.
Seria tentador simplesmente tirar o sinal de menos, ou calcular por conta própria uma variação usando tvl_usd 37053262660.64732 e prev_tvl_usd 36963712506 na mesma linha e preencher; nenhuma das opções serve — o snapshot registra -0.0, e o número recalculado não tem fonte. Guardo essas células como registros pessoais; isso não constitui aconselhamento de investimento. O sufixo pct no nome do campo não significa que cada literal desta coluna tenha de assumir a mesma forma. No mesmo arquivo, o campo de prices.BTC se chama diretamente usd, com valor 62711; em market, há total_market_cap_usd 2142224463293.4841 e btc_dominance_pct 58.59; e value 10 em sentiment.now continua sem indicação de unidade antes ou depois.
As três formas de registrar continuam lá; o que há a mais é -1.19 e -0.0 lado a lado na mesma coluna. Portanto, sem reescrever, sem preencher retroativamente, sem abrir uma coluna separada para explicar: a tabela continua tendo apenas duas coisas, nomes de campos e valores; copie -0.0 exatamente, e espere a próxima atualização para ver se mudou.
07:47:34 terminado de copiar; as seis sources ficam guardadas exatamente como estavam, e a linha errors é um array vazio, também copiado sem alterações. Ao copiar as leituras abaixo, não reordenei nada: em prices, BTC 63565, ETH 1748.17, BNB 576.99, SOL 69.38; em seguida, total_market_cap_usd 2174704720209.3042 em market; depois, as quatro linhas de tickers, sentiment e chain_tvl. A ordem é a sequência em que as chaves aparecem neste JSON; não reordenei por valor nem escolhi os ativos. Alguém já perguntou por que a primeira linha é sempre BTC. O motivo é bem banal: neste arquivo, ela aparece em primeiro lugar. Em outra resposta da interface, a ordem das chaves pode não ser a mesma. Estes são apenas meus registros de cada instante, não constituem recomendação de investimento; a ordem das chaves pertence ao arquivo, não à minha avaliação, e também não criei outra coluna na tabela para atribuir posições por importância. Depois de copiar, registrei o nome do arquivo com o horário da coleta. Não fiz nenhum outro tipo de ordenação.
07:47:34 terminado de copiar; as seis sources ficam guardadas exatamente como estavam, e a linha errors é um array vazio, também copiado sem alterações. Ao copiar as leituras abaixo, não reordenei nada: em prices, BTC 63565, ETH 1748.17, BNB 576.99, SOL 69.38; em seguida, total_market_cap_usd 2174704720209.3042 em market; depois, as quatro linhas de tickers, sentiment e chain_tvl.
A ordem é a sequência em que as chaves aparecem neste JSON; não reordenei por valor nem escolhi os ativos. Alguém já perguntou por que a primeira linha é sempre BTC. O motivo é bem banal: neste arquivo, ela aparece em primeiro lugar. Em outra resposta da interface, a ordem das chaves pode não ser a mesma. Estes são apenas meus registros de cada instante, não constituem recomendação de investimento; a ordem das chaves pertence ao arquivo, não à minha avaliação, e também não criei outra coluna na tabela para atribuir posições por importância.
Depois de copiar, registrei o nome do arquivo com o horário da coleta. Não fiz nenhum outro tipo de ordenação.
06:41:24 Nesta cópia salva, BTC tem três campos em prices: usd 63700, change_24h_pct -6.78 e mais um campo source. Ao consultar tickers, a linha se chama BTCUSDT e tem seis campos: last 63976.99, change_24h_pct -6.461, high_24h 68485.12, low_24h 63326.43, quote_volume_24h 2055667386.975345 e, no fim, também source. Nas duas linhas de ETH, prices tem usd 1749.79; em tickers, há last 1762.03, high_24h 1936.49 e low_24h 1729.16. Antes, pensei em empilhar usd, last, high_24h e low_24h em uma coluna e acrescentar um campo «tipo de preço» como marcador. Agora vejo que, antes de empilhar, ainda há uma etapa: é preciso decidir quais campos contam como preços. change_24h_pct e quote_volume_24h aparecem na mesma linha e também são números; fui eu que tracei a linha que os exclui. No snapshot, não há nenhum campo chamado «preço», nem rótulos de classificação. Isto é apenas meu arquivo pessoal de campos, não constitui recomendação de investimento; se eu realmente empilhar tudo, acrescentarei não só uma coluna de marcadores, mas também uma camada de regras de agrupamento sem fonte. Ainda não decidi entre as duas opções. E vocês, primeiro escreveriam uma regra explícita para definir «o que conta como preço» e depois empilhariam, ou deixariam os seis campos lado a lado, conforme seus nomes, sem sequer agrupá-los?
06:41:24 Nesta cópia salva, BTC tem três campos em prices: usd 63700, change_24h_pct -6.78 e mais um campo source. Ao consultar tickers, a linha se chama BTCUSDT e tem seis campos: last 63976.99, change_24h_pct -6.461, high_24h 68485.12, low_24h 63326.43, quote_volume_24h 2055667386.975345 e, no fim, também source. Nas duas linhas de ETH, prices tem usd 1749.79; em tickers, há last 1762.03, high_24h 1936.49 e low_24h 1729.16.
Antes, pensei em empilhar usd, last, high_24h e low_24h em uma coluna e acrescentar um campo «tipo de preço» como marcador. Agora vejo que, antes de empilhar, ainda há uma etapa: é preciso decidir quais campos contam como preços. change_24h_pct e quote_volume_24h aparecem na mesma linha e também são números; fui eu que tracei a linha que os exclui. No snapshot, não há nenhum campo chamado «preço», nem rótulos de classificação. Isto é apenas meu arquivo pessoal de campos, não constitui recomendação de investimento; se eu realmente empilhar tudo, acrescentarei não só uma coluna de marcadores, mas também uma camada de regras de agrupamento sem fonte.
Ainda não decidi entre as duas opções. E vocês, primeiro escreveriam uma regra explícita para definir «o que conta como preço» e depois empilhariam, ou deixariam os seis campos lado a lado, conforme seus nomes, sem sequer agrupá-los?
Neste instantâneo das 05:34:55, o 8 aparece várias vezes, mas com formas diferentes. No fim de generated_at_cst 2026-11-15 05:34:55 UTC+8, ele indica o fuso horário; em https://api.alternative.me/fng/?limit=8, dentro de sources.sentiment, é o parâmetro enviado na solicitação; e há outro embutido no nome da chave series_8d. Na etapa anterior, contei oito linhas em series_8d e, ao me virar, vi limit=8 também na URL; anotei despreocupadamente: «bateu». Mas, olhando de novo para as células de valores, o 8 nesta coluna vem com sinal negativo e casas decimais: market.market_cap_change_24h_pct -8.98, prices.BNB.change_24h_pct -8.66, tickers.BNBUSDT.change_24h_pct -8.57. Fuso horário, parâmetro, nome de chave e leitura: o mesmo caractere assume quatro identidades e nem sequer está na mesma coluna; para dois números baterem, primeiro eles precisam estar na mesma coluna. Isto é apenas meu arquivo de campos e não constitui aconselhamento de investimento; copio o número de linhas do array, uma por uma, sem usar os caracteres da URL para conferir. Na primeira linha de series_8d, date é 2026-11-14, value é 13 e label é Medo extremo; na última, 2026-11-07, 25 e Medo extremo. As linhas intermediárias seguem a ordem de date. A sequência do parâmetro fica em sources, não entra na coluna de valores.
Neste instantâneo das 05:34:55, o 8 aparece várias vezes, mas com formas diferentes. No fim de generated_at_cst 2026-11-15 05:34:55 UTC+8, ele indica o fuso horário; em https://api.alternative.me/fng/?limit=8, dentro de sources.sentiment, é o parâmetro enviado na solicitação; e há outro embutido no nome da chave series_8d.
Na etapa anterior, contei oito linhas em series_8d e, ao me virar, vi limit=8 também na URL; anotei despreocupadamente: «bateu». Mas, olhando de novo para as células de valores, o 8 nesta coluna vem com sinal negativo e casas decimais: market.market_cap_change_24h_pct -8.98, prices.BNB.change_24h_pct -8.66, tickers.BNBUSDT.change_24h_pct -8.57. Fuso horário, parâmetro, nome de chave e leitura: o mesmo caractere assume quatro identidades e nem sequer está na mesma coluna; para dois números baterem, primeiro eles precisam estar na mesma coluna. Isto é apenas meu arquivo de campos e não constitui aconselhamento de investimento; copio o número de linhas do array, uma por uma, sem usar os caracteres da URL para conferir.
Na primeira linha de series_8d, date é 2026-11-14, value é 13 e label é Medo extremo; na última, 2026-11-07, 25 e Medo extremo. As linhas intermediárias seguem a ordem de date. A sequência do parâmetro fica em sources, não entra na coluna de valores.
04:28:20 Guarde isto. Primeiro, conte quantas células deve ter a coluna «fonte». Em market, há quatro valores: total_market_cap_usd 2232483333214.6123, total_volume_24h_usd 85968190849.52124, btc_dominance_pct 58.95 e market_cap_change_24h_pct -7.59. No fim das quatro células, aparece apenas uma fonte, identificada como coingecko:/global. Em sentiment, também há uma única fonte para o bloco inteiro, alternative.me:/fng; a célula now indica 13 e date 2026-11-14. Em prices, a estrutura muda: o BTC tem a sua própria linha, com usd 65526, change_24h_pct -4.93 e source coingecko:/simple/price; cada ativo tem a sua própria célula de origem. tickers é ainda mais detalhado: na linha BTCUSDT, last é 65532.31 e a source inclui até o símbolo completo. Na linha BSC de chain_tvl, tvl_usd é 4539942523.947776 e, além de source, há outra célula, history_source. Antes, reuni todas as source numa só coluna com base nos nomes dos campos. O resultado foi que as células de market e sentiment não tinham linhas de observação correspondentes às quais pudessem ser associadas; para encaixá-las à força, teria de inventar linhas. Guardo estes números para o meu arquivo pessoal; não constituem aconselhamento de investimento. Mantenha as fontes do bloco no cabeçalho do bloco e as fontes das linhas junto das respetivas linhas; não achate a estrutura.
04:28:20 Guarde isto. Primeiro, conte quantas células deve ter a coluna «fonte». Em market, há quatro valores: total_market_cap_usd 2232483333214.6123, total_volume_24h_usd 85968190849.52124, btc_dominance_pct 58.95 e market_cap_change_24h_pct -7.59. No fim das quatro células, aparece apenas uma fonte, identificada como coingecko:/global. Em sentiment, também há uma única fonte para o bloco inteiro, alternative.me:/fng; a célula now indica 13 e date 2026-11-14.
Em prices, a estrutura muda: o BTC tem a sua própria linha, com usd 65526, change_24h_pct -4.93 e source coingecko:/simple/price; cada ativo tem a sua própria célula de origem. tickers é ainda mais detalhado: na linha BTCUSDT, last é 65532.31 e a source inclui até o símbolo completo. Na linha BSC de chain_tvl, tvl_usd é 4539942523.947776 e, além de source, há outra célula, history_source.
Antes, reuni todas as source numa só coluna com base nos nomes dos campos. O resultado foi que as células de market e sentiment não tinham linhas de observação correspondentes às quais pudessem ser associadas; para encaixá-las à força, teria de inventar linhas. Guardo estes números para o meu arquivo pessoal; não constituem aconselhamento de investimento. Mantenha as fontes do bloco no cabeçalho do bloco e as fontes das linhas junto das respetivas linhas; não achate a estrutura.
03:23:13 Neste bloco, em prices, BTC tem apenas usd 65424, change_24h_pct -5.13 e source coingecko:/simple/price. O mesmo ativo, em tickers, aparece como BTCUSDT, e os campos passam a ser last 65408.12, change_24h_pct -5.206, high_24h 69124.53, low_24h 65000.0, quote_volume_24h 1705134368.4626355 e source binance:/ticker/24hr?symbol=BTCUSDT. Na versão preliminar, interpretei usd e last como o mesmo campo, com base no significado, e depois comparei os campos restantes. Mas, no snapshot, esses dois nomes não são iguais. Se compararmos de fato os nomes dos campos, os únicos em comum nos dois lados são change_24h_pct e source; no lado de prices, sobra usd, e no de tickers, last, high_24h, low_24h e quote_volume_24h. A diferença entre os campos depende inteiramente de como eu os alinho; a interface não fornece essa coluna. Guardo estas duas linhas como anotações pessoais, e elas não constituem uma recomendação de investimento; o critério de alinhamento precisa ser registrado na tabela primeiro, para que, mais adiante, fique claro de onde veio aquele número. Quando o mesmo ativo aparece em dois blocos, vocês primeiro selecionam os campos com o mesmo nome, alinham e depois contam, ou guardam os dois blocos exatamente como estão, cada um por si, sem contar de jeito nenhum? Vou copiar os nomes dos campos como estão e deixar a coluna da diferença em branco por enquanto.
03:23:13 Neste bloco, em prices, BTC tem apenas usd 65424, change_24h_pct -5.13 e source coingecko:/simple/price. O mesmo ativo, em tickers, aparece como BTCUSDT, e os campos passam a ser last 65408.12, change_24h_pct -5.206, high_24h 69124.53, low_24h 65000.0, quote_volume_24h 1705134368.4626355 e source binance:/ticker/24hr?symbol=BTCUSDT.
Na versão preliminar, interpretei usd e last como o mesmo campo, com base no significado, e depois comparei os campos restantes. Mas, no snapshot, esses dois nomes não são iguais. Se compararmos de fato os nomes dos campos, os únicos em comum nos dois lados são change_24h_pct e source; no lado de prices, sobra usd, e no de tickers, last, high_24h, low_24h e quote_volume_24h. A diferença entre os campos depende inteiramente de como eu os alinho; a interface não fornece essa coluna. Guardo estas duas linhas como anotações pessoais, e elas não constituem uma recomendação de investimento; o critério de alinhamento precisa ser registrado na tabela primeiro, para que, mais adiante, fique claro de onde veio aquele número.
Quando o mesmo ativo aparece em dois blocos, vocês primeiro selecionam os campos com o mesmo nome, alinham e depois contam, ou guardam os dois blocos exatamente como estão, cada um por si, sem contar de jeito nenhum? Vou copiar os nomes dos campos como estão e deixar a coluna da diferença em branco por enquanto.
02:13:57 Guarde isto; mais tarde vou mudar uma coisa que fazia antes. Pensei em acrescentar uma coluna de números de ordem às três seções para fixar a ordem das linhas fornecida pela interface, mas parei assim que abri o arquivo original. Em prices, há quatro chaves: BTC, ETH, BNB e SOL, com os valores 65899, 1837.55, 590.15 e 72.65; em tickers, há quatro chaves: BTCUSDT, ETHUSDT, BNBUSDT e SOLUSDT; em chain_tvl, há apenas três chaves: BSC, Ethereum e Solana, com tvl_usd de 4555860057.50273, 37840914831.17623 e 4779208892.991927. São todas chaves dentro de objetos; no snapshot, nenhum campo indica o número da linha. Se eu realmente as numerasse, esses números seriam inventados por mim, não fornecidos pela interface. series_8d em sentiment é diferente: é um array de oito linhas. A primeira é 2026-11-14, 13, e a última, 2026-11-07, 25. A ordem é identificada pela date, então também não preciso numerá-las. Estas linhas são apenas um arquivo pessoal de dados e não constituem aconselhamento de investimento; nas seções de dicionário, basta copiar as chaves e a ordem delas; nas seções de array, basta copiar as linhas e a date. É melhor nem criar a coluna de números de ordem. Da última vez, ao reordenar pelos valores, acabei perdendo a ordem das linhas; desta vez, nem os números que eu mesmo acrescentaria vou incluir.
02:13:57 Guarde isto; mais tarde vou mudar uma coisa que fazia antes. Pensei em acrescentar uma coluna de números de ordem às três seções para fixar a ordem das linhas fornecida pela interface, mas parei assim que abri o arquivo original.
Em prices, há quatro chaves: BTC, ETH, BNB e SOL, com os valores 65899, 1837.55, 590.15 e 72.65; em tickers, há quatro chaves: BTCUSDT, ETHUSDT, BNBUSDT e SOLUSDT; em chain_tvl, há apenas três chaves: BSC, Ethereum e Solana, com tvl_usd de 4555860057.50273, 37840914831.17623 e 4779208892.991927. São todas chaves dentro de objetos; no snapshot, nenhum campo indica o número da linha. Se eu realmente as numerasse, esses números seriam inventados por mim, não fornecidos pela interface.
series_8d em sentiment é diferente: é um array de oito linhas. A primeira é 2026-11-14, 13, e a última, 2026-11-07, 25. A ordem é identificada pela date, então também não preciso numerá-las. Estas linhas são apenas um arquivo pessoal de dados e não constituem aconselhamento de investimento; nas seções de dicionário, basta copiar as chaves e a ordem delas; nas seções de array, basta copiar as linhas e a date. É melhor nem criar a coluna de números de ordem. Da última vez, ao reordenar pelos valores, acabei perdendo a ordem das linhas; desta vez, nem os números que eu mesmo acrescentaria vou incluir.
01:04:46 Depois de guardar isto, primeiro separo e examino as linhas mais externas. generated_at_cst é 2026-11-15 01:04:46 UTC+8, generated_at_utc é 2026-11-14 17:04:46 UTC; são duas linhas que indicam horários. As seis URLs abaixo de sources são as fontes; errors é um array vazio. As cinco secções restantes — prices, market, tickers, sentiment e chain_tvl — é que contêm as leituras. Isto é apenas o meu próprio arquivo de dados e não constitui aconselhamento de investimento; se achatar cada chave de nível superior numa linha, as seis fontes vão parar ao mesmo nível que as quatro linhas de cotações. Depois de separar os níveis, ao examinar os dados, em market temos total_market_cap_usd 2243367856983.734 e btc_dominance_pct 58.81; em prices, BTC 65177. Não alterei nenhum valor, apenas os coloquei em categorias diferentes. Antes, para simplificar, copiava cada chave de nível superior como se fosse um dado; as seis fontes eram contabilizadas como observações e, mais tarde, por mais que tentasse conferir o número de linhas, nunca batia certo. Agora, primeiro escrevo o tipo e depois o valor. O array vazio também ocupa uma linha; nessa linha não se preenche nenhum valor.
01:04:46 Depois de guardar isto, primeiro separo e examino as linhas mais externas. generated_at_cst é 2026-11-15 01:04:46 UTC+8, generated_at_utc é 2026-11-14 17:04:46 UTC; são duas linhas que indicam horários. As seis URLs abaixo de sources são as fontes; errors é um array vazio. As cinco secções restantes — prices, market, tickers, sentiment e chain_tvl — é que contêm as leituras. Isto é apenas o meu próprio arquivo de dados e não constitui aconselhamento de investimento; se achatar cada chave de nível superior numa linha, as seis fontes vão parar ao mesmo nível que as quatro linhas de cotações.
Depois de separar os níveis, ao examinar os dados, em market temos total_market_cap_usd 2243367856983.734 e btc_dominance_pct 58.81; em prices, BTC 65177. Não alterei nenhum valor, apenas os coloquei em categorias diferentes. Antes, para simplificar, copiava cada chave de nível superior como se fosse um dado; as seis fontes eram contabilizadas como observações e, mais tarde, por mais que tentasse conferir o número de linhas, nunca batia certo.
Agora, primeiro escrevo o tipo e depois o valor. O array vazio também ocupa uma linha; nessa linha não se preenche nenhum valor.
23:54:51 Recontrei os caminhos deste arquivo. Em market, abaixo de total_market_cap_usd, está 2235922639911.295; basta juntar o nome do bloco ao nome do campo. Para chain_tvl, primeiro é preciso identificar a linha BSC, e então se chega a tvl_usd 4623226096.481769; em sentiment, series_8d é simplesmente um array, que vai de 13 em 2026-11-14 a 25 em 2026-11-07. São apenas registros das minhas próprias leituras, não constituem aconselhamento de investimento; escrevi os três caminhos seguindo a estrutura do arquivo, e a interface nunca forneceu uma tabela unificada de valores. O que me travava antes era o comprimento. Se eu escrevesse o caminho mais complicado, teria de acrescentar do nada mais um trecho àquele campo de market; se escrevesse o mais curto, não haveria onde colocar as linhas da sequência. Desta vez, notei algo na outra ponta: os destinos também não são todos do mesmo tipo. Os dois primeiros levam a um número; o de series_8d leva a uma linha inteira, com date, value e label lado a lado. Um caminho só diz até onde ir, não se o destino é um campo ou um conjunto deles. Quando vocês armazenam esses arquivos, registram cada destino caminho por caminho ou primeiro separam escalares e linhas e dão uma tabela para cada tipo? Eu os armazenei da primeira maneira por um tempo. Quando volto a consultar este arquivo das 23:54:51, sempre preciso acrescentar uma explicação sobre o que é o destino.
23:54:51 Recontrei os caminhos deste arquivo. Em market, abaixo de total_market_cap_usd, está 2235922639911.295; basta juntar o nome do bloco ao nome do campo. Para chain_tvl, primeiro é preciso identificar a linha BSC, e então se chega a tvl_usd 4623226096.481769; em sentiment, series_8d é simplesmente um array, que vai de 13 em 2026-11-14 a 25 em 2026-11-07. São apenas registros das minhas próprias leituras, não constituem aconselhamento de investimento; escrevi os três caminhos seguindo a estrutura do arquivo, e a interface nunca forneceu uma tabela unificada de valores.
O que me travava antes era o comprimento. Se eu escrevesse o caminho mais complicado, teria de acrescentar do nada mais um trecho àquele campo de market; se escrevesse o mais curto, não haveria onde colocar as linhas da sequência. Desta vez, notei algo na outra ponta: os destinos também não são todos do mesmo tipo. Os dois primeiros levam a um número; o de series_8d leva a uma linha inteira, com date, value e label lado a lado. Um caminho só diz até onde ir, não se o destino é um campo ou um conjunto deles.
Quando vocês armazenam esses arquivos, registram cada destino caminho por caminho ou primeiro separam escalares e linhas e dão uma tabela para cada tipo? Eu os armazenei da primeira maneira por um tempo. Quando volto a consultar este arquivo das 23:54:51, sempre preciso acrescentar uma explicação sobre o que é o destino.
Queria juntar duas tabelas lado a lado. Comecei contando os nomes das chaves: tickers tinha seis por linha, chain_tvl também tinha seis, e a largura batia certinho. Quando reorganizei os dados das 22:45:43, percebi que tinha contado a largura, não o comprimento. tickers tinha quatro linhas: BTCUSDT, ETHUSDT, BNBUSDT e SOLUSDT; chain_tvl tinha apenas três: BSC, Ethereum e Solana. Comparando posição por posição, na quarta célula não havia uma linha correspondente do lado das chains; não foi uma falha nesta captura, mas sim porque essa parte sempre registrou três chains. Quatro contra três: a junção lado a lado já não dava certo por causa do número de linhas. Guardei cada um em sua própria linha, como sempre: BTCUSDT com last 66144.72 e quote_volume_24h 1454857652.425192; BSC com tvl_usd 4667039216.804007, prev_tvl_usd 4905797815 e tvl_change_1d_pct -4.87. Estes são apenas registros pessoais de leituras e não constituem aconselhamento de investimento. Quanto ao alinhamento da largura, fica por aqui. Antes, eu tinha contado quantas chaves havia em cada linha. Por mais precisa que fosse a contagem, ela não impediria que o número de linhas fosse diferente.
Queria juntar duas tabelas lado a lado. Comecei contando os nomes das chaves: tickers tinha seis por linha, chain_tvl também tinha seis, e a largura batia certinho. Quando reorganizei os dados das 22:45:43, percebi que tinha contado a largura, não o comprimento.
tickers tinha quatro linhas: BTCUSDT, ETHUSDT, BNBUSDT e SOLUSDT; chain_tvl tinha apenas três: BSC, Ethereum e Solana. Comparando posição por posição, na quarta célula não havia uma linha correspondente do lado das chains; não foi uma falha nesta captura, mas sim porque essa parte sempre registrou três chains. Quatro contra três: a junção lado a lado já não dava certo por causa do número de linhas.
Guardei cada um em sua própria linha, como sempre: BTCUSDT com last 66144.72 e quote_volume_24h 1454857652.425192; BSC com tvl_usd 4667039216.804007, prev_tvl_usd 4905797815 e tvl_change_1d_pct -4.87. Estes são apenas registros pessoais de leituras e não constituem aconselhamento de investimento. Quanto ao alinhamento da largura, fica por aqui.
Antes, eu tinha contado quantas chaves havia em cada linha. Por mais precisa que fosse a contagem, ela não impediria que o número de linhas fosse diferente.
21:31:41 Hora em que este arquivo foi salvo: nas duas primeiras linhas do cabeçalho, generated_at_cst indica 2026-11-14 21:31:41 UTC+8, e generated_at_utc indica 2026-11-14 13:31:41 UTC. O mesmo instante, escrito de duas formas. Descendo pela lista em sources, price, global, ticker, sentiment, chains e chain_history retornam cada um seus próprios valores, mas nenhum campo informa quando foi retornado. Em prices, change_24h_pct mostra -4.02, -3.95, -5.33, -7.11; em market, market_cap_change_24h_pct é -5.77. O nome do campo diz 24h, mas a interface não informa de que segundo a que segundo vai essa janela. Estes são apenas meus registros de leitura e não constituem recomendação de investimento; anoto 21:31:41 como o horário em que este arquivo foi salvo, sem fingir que é o horário de observação de cada valor nem inventar um início para a janela. É mais fácil verificar deixando aquela coluna em branco do que preenchendo-a com um palpite.
21:31:41 Hora em que este arquivo foi salvo: nas duas primeiras linhas do cabeçalho, generated_at_cst indica 2026-11-14 21:31:41 UTC+8, e generated_at_utc indica 2026-11-14 13:31:41 UTC. O mesmo instante, escrito de duas formas. Descendo pela lista em sources, price, global, ticker, sentiment, chains e chain_history retornam cada um seus próprios valores, mas nenhum campo informa quando foi retornado.
Em prices, change_24h_pct mostra -4.02, -3.95, -5.33, -7.11; em market, market_cap_change_24h_pct é -5.77. O nome do campo diz 24h, mas a interface não informa de que segundo a que segundo vai essa janela. Estes são apenas meus registros de leitura e não constituem recomendação de investimento; anoto 21:31:41 como o horário em que este arquivo foi salvo, sem fingir que é o horário de observação de cada valor nem inventar um início para a janela.
É mais fácil verificar deixando aquela coluna em branco do que preenchendo-a com um palpite.
20:26:16 Neste caso, change_24h_pct aparece quatro vezes em prices e outras quatro em tickers. As quatro linhas de prices, BTC -3.12, ETH -2.71, BNB -4.06 e SOL -6.07, têm todas a mesma sequência em source: coingecko:/simple/price; as quatro linhas de tickers, BTCUSDT -3.068, ETHUSDT -2.724, BNBUSDT -4.009 e SOLUSDT -6.121, têm cada uma o seu próprio symbol em source. Oito células com o mesmo nome. São apenas registros das minhas próprias leituras, não constituem aconselhamento de investimento; os nomes coincidem, mas, quanto à origem, um grupo de quatro células compartilha a mesma e o outro grupo de quatro a registra separadamente. Já tentei compor uma chave de três partes para os campos com nomes duplicados: nome do bloco, chave do ativo e nome do campo, na esperança de padronizar a tabela inteira. Ao aplicar isso a prices, percebi que não dava para omitir a parte do meio, porque source não distingue uma linha da outra; em tickers, porém, ela repetia o symbol que já vem em source. Com a mesma fórmula, sempre há uma célula em que uma parte fica sobrando. Depois, passei a manter as chaves separadas por bloco e não acrescentar nada além do necessário dentro de cada bloco. Quando vocês criam tabelas desse tipo, definem uma única convenção ou mantêm chaves diferentes para cada bloco e abrem outra coluna para explicar o motivo? Já experimentei as duas versões, mas, quando volto para consultar o histórico, ainda preciso parar para lembrar como tomei essa decisão na época.
20:26:16 Neste caso, change_24h_pct aparece quatro vezes em prices e outras quatro em tickers. As quatro linhas de prices, BTC -3.12, ETH -2.71, BNB -4.06 e SOL -6.07, têm todas a mesma sequência em source: coingecko:/simple/price; as quatro linhas de tickers, BTCUSDT -3.068, ETHUSDT -2.724, BNBUSDT -4.009 e SOLUSDT -6.121, têm cada uma o seu próprio symbol em source. Oito células com o mesmo nome. São apenas registros das minhas próprias leituras, não constituem aconselhamento de investimento; os nomes coincidem, mas, quanto à origem, um grupo de quatro células compartilha a mesma e o outro grupo de quatro a registra separadamente.
Já tentei compor uma chave de três partes para os campos com nomes duplicados: nome do bloco, chave do ativo e nome do campo, na esperança de padronizar a tabela inteira. Ao aplicar isso a prices, percebi que não dava para omitir a parte do meio, porque source não distingue uma linha da outra; em tickers, porém, ela repetia o symbol que já vem em source. Com a mesma fórmula, sempre há uma célula em que uma parte fica sobrando. Depois, passei a manter as chaves separadas por bloco e não acrescentar nada além do necessário dentro de cada bloco.
Quando vocês criam tabelas desse tipo, definem uma única convenção ou mantêm chaves diferentes para cada bloco e abrem outra coluna para explicar o motivo? Já experimentei as duas versões, mas, quando volto para consultar o histórico, ainda preciso parar para lembrar como tomei essa decisão na época.
19:19:26 Esta lista, sob market, tem quatro campos seguidos: total_market_cap_usd 2269647522734.472, total_volume_24h_usd 77020416251.47092, btc_dominance_pct 59.51 e market_cap_change_24h_pct -6.26. Dois têm muitas casas decimais, dois ficam em duas casas decimais, e um tem sinal negativo. Estes são apenas os valores que registrei para meu próprio arquivo, não constituem aconselhamento de investimento; coloquei os quatro campos, cada um numa coluna, na ordem em que aparecem na captura instantânea. A ordem segue a regra do cabeçalho, não ocupa uma coluna adicional. Só depois de fixar a lista de colunas é que distingui duas coisas: identifico as colunas pelo nome do campo, não pelo número que aparece na célula. Nos momentos anteriores, estas duas colunas continham outros números; não voltei atrás para conferir. Neste momento, os valores mudaram para -6.26 e 59.51, mas as colunas continuam as mesmas. Se identificasse as colunas pelos valores, sempre que um valor mudasse, eu o trataria como um campo novo e criaria outra coluna. Mesmo no momento que foi ignorado, mantenho as colunas; apenas não há valores nas células. As colunas são definidas pelo cabeçalho; os valores dependem do momento em que são obtidos.
19:19:26 Esta lista, sob market, tem quatro campos seguidos: total_market_cap_usd 2269647522734.472, total_volume_24h_usd 77020416251.47092, btc_dominance_pct 59.51 e market_cap_change_24h_pct -6.26. Dois têm muitas casas decimais, dois ficam em duas casas decimais, e um tem sinal negativo. Estes são apenas os valores que registrei para meu próprio arquivo, não constituem aconselhamento de investimento; coloquei os quatro campos, cada um numa coluna, na ordem em que aparecem na captura instantânea. A ordem segue a regra do cabeçalho, não ocupa uma coluna adicional.
Só depois de fixar a lista de colunas é que distingui duas coisas: identifico as colunas pelo nome do campo, não pelo número que aparece na célula. Nos momentos anteriores, estas duas colunas continham outros números; não voltei atrás para conferir. Neste momento, os valores mudaram para -6.26 e 59.51, mas as colunas continuam as mesmas. Se identificasse as colunas pelos valores, sempre que um valor mudasse, eu o trataria como um campo novo e criaria outra coluna. Mesmo no momento que foi ignorado, mantenho as colunas; apenas não há valores nas células.
As colunas são definidas pelo cabeçalho; os valores dependem do momento em que são obtidos.
18:10:35 Nesta captura, há um valor para o volume negociado em 24h abaixo de market: 78074754176.96483. Na captura anterior, o mesmo campo estava vazio e constava como não obtido (não citar). Este é apenas um registro das minhas próprias leituras, não constitui recomendação de investimento, e não copiei esse número de volta para preencher a linha anterior. Também não passei a registrar permanentemente uma ocorrência para o nome do campo total_volume_24h_usd só porque ele ficou vazio uma vez. Os campos vazios e preenchidos seguem o horário em que cada dado foi obtido; ao lado, total_market_cap_usd 2298606213383.7686 sempre esteve presente. Um campo não substitui o outro. Registro uma linha para cada captura, sem alterar as linhas antigas.
18:10:35 Nesta captura, há um valor para o volume negociado em 24h abaixo de market: 78074754176.96483. Na captura anterior, o mesmo campo estava vazio e constava como não obtido (não citar). Este é apenas um registro das minhas próprias leituras, não constitui recomendação de investimento, e não copiei esse número de volta para preencher a linha anterior.
Também não passei a registrar permanentemente uma ocorrência para o nome do campo total_volume_24h_usd só porque ele ficou vazio uma vez. Os campos vazios e preenchidos seguem o horário em que cada dado foi obtido; ao lado, total_market_cap_usd 2298606213383.7686 sempre esteve presente. Um campo não substitui o outro.
Registro uma linha para cada captura, sem alterar as linhas antigas.
17:02:59, chegou mais um arquivo. Voltei a contar os lugares onde as datas aparecem. No cabeçalho do arquivo, generated_at_cst é 2026-11-14 17:02:59 UTC+8 e generated_at_utc é 2026-11-14 09:02:59 UTC: o mesmo segundo, escrito de duas formas. A date de now, em sentimento, vai só até 2026-11-14, com valor 13; a date de prev e o prev_date das três cadeias ficam em 2026-11-13. series_8d vai de 13 em 2026-11-14 a 25 em 2026-11-07, uma data por linha. Desta vez há também uma célula vazia: o volume negociado em 24h de /global não foi obtido (não o cito). Não peguei o quote_volume_24h de cada linha em tickers para preencher essa célula, nem inventei um valor. É um arquivo com minhas próprias leituras, não constitui aconselhamento de investimento; por enquanto, deixo a organização das colunas de lado. «Um intervalo» foi só uma expressão que me saiu; na verdade, a interface retorna uma série de valores, cada um com sua própria date. A linha precisa ao segundo, algumas células que só vão até o dia, a série inteira e mais uma célula vazia: se eu forço tudo para a mesma coluna, sempre acabo sacrificando alguma coisa. No fim, deixei apenas o momento da consulta como chave temporal do snapshot inteiro; as demais datas ficam cada uma no seu campo, sem que uma altere a granularidade da outra. Quando vocês armazenam arquivos assim, acrescentam um indicador de granularidade a cada linha ou usam apenas o momento da consulta e registram a célula ausente em outra coluna? Já experimentei as duas versões; cada uma tem suas próprias complicações quando volto a consultar os registros antigos. Queria saber como os outros fazem.
17:02:59, chegou mais um arquivo. Voltei a contar os lugares onde as datas aparecem. No cabeçalho do arquivo, generated_at_cst é 2026-11-14 17:02:59 UTC+8 e generated_at_utc é 2026-11-14 09:02:59 UTC: o mesmo segundo, escrito de duas formas. A date de now, em sentimento, vai só até 2026-11-14, com valor 13; a date de prev e o prev_date das três cadeias ficam em 2026-11-13. series_8d vai de 13 em 2026-11-14 a 25 em 2026-11-07, uma data por linha. Desta vez há também uma célula vazia: o volume negociado em 24h de /global não foi obtido (não o cito). Não peguei o quote_volume_24h de cada linha em tickers para preencher essa célula, nem inventei um valor. É um arquivo com minhas próprias leituras, não constitui aconselhamento de investimento; por enquanto, deixo a organização das colunas de lado.
«Um intervalo» foi só uma expressão que me saiu; na verdade, a interface retorna uma série de valores, cada um com sua própria date. A linha precisa ao segundo, algumas células que só vão até o dia, a série inteira e mais uma célula vazia: se eu forço tudo para a mesma coluna, sempre acabo sacrificando alguma coisa. No fim, deixei apenas o momento da consulta como chave temporal do snapshot inteiro; as demais datas ficam cada uma no seu campo, sem que uma altere a granularidade da outra.
Quando vocês armazenam arquivos assim, acrescentam um indicador de granularidade a cada linha ou usam apenas o momento da consulta e registram a célula ausente em outra coluna? Já experimentei as duas versões; cada uma tem suas próprias complicações quando volto a consultar os registros antigos. Queria saber como os outros fazem.
15:56:05 Tentei mais uma vez agrupar a coluna de origem, mas ainda não consegui. No cabeçalho do arquivo, em sources, api.coingecko.com tem price e global, api.llama.fi tem chains e chain_history, e api.binance.com e api.alternative.me ocupam uma linha cada; já as strings curtas associadas às linhas de dados são coingecko:/simple/price, coingecko:/global, binance:/ticker/24hr?symbol=BTCUSDT, alternative.me:/fng, defillama:/v2/chains e defillama:/v2/historicalChainTvl/BSC. Gerar o nome da origem a partir do nome do host já dava problema antes: api.llama.fi não tem nem uma palavra em comum com defillama. Desta vez, o problema também surgiu do outro lado: em api.coingecko.com há claramente duas strings curtas. coingecko:/global corresponde a total_market_cap_usd 2288275032437.6846 e btc_dominance_pct 58.81; coingecko:/simple/price corresponde ao valor usd 67077 do BTC; e a linha binance:/ticker/24hr?symbol=BTCUSDT tem o valor last 67264.88. Se o host for usado como chave única, esses valores vão parar na mesma linha. São apenas registros pessoais de leituras e não constituem recomendação de investimento. Basta manter as strings curtas exatamente como aparecem na interface e colocar o host em outro campo, como observação. Se os nomes não corresponderem, não force a associação: mantenha as duas strings para facilitar a conferência depois.
15:56:05 Tentei mais uma vez agrupar a coluna de origem, mas ainda não consegui. No cabeçalho do arquivo, em sources, api.coingecko.com tem price e global, api.llama.fi tem chains e chain_history, e api.binance.com e api.alternative.me ocupam uma linha cada; já as strings curtas associadas às linhas de dados são coingecko:/simple/price, coingecko:/global, binance:/ticker/24hr?symbol=BTCUSDT, alternative.me:/fng, defillama:/v2/chains e defillama:/v2/historicalChainTvl/BSC.
Gerar o nome da origem a partir do nome do host já dava problema antes: api.llama.fi não tem nem uma palavra em comum com defillama. Desta vez, o problema também surgiu do outro lado: em api.coingecko.com há claramente duas strings curtas. coingecko:/global corresponde a total_market_cap_usd 2288275032437.6846 e btc_dominance_pct 58.81; coingecko:/simple/price corresponde ao valor usd 67077 do BTC; e a linha binance:/ticker/24hr?symbol=BTCUSDT tem o valor last 67264.88. Se o host for usado como chave única, esses valores vão parar na mesma linha. São apenas registros pessoais de leituras e não constituem recomendação de investimento. Basta manter as strings curtas exatamente como aparecem na interface e colocar o host em outro campo, como observação.
Se os nomes não corresponderem, não force a associação: mantenha as duas strings para facilitar a conferência depois.
Inicia sessão para explorar mais conteúdos
Junta-te a utilizadores de criptomoedas de todo o mundo na Binance Square
⚡️ Obtém informações úteis e recentes sobre criptomoedas.
💬 Com a confiança da maior exchange de criptomoedas do mundo.
👍 Descobre perspetivas reais de criadores verificados.
E-mail/Número de telefone
Mapa do sítio
Preferências de cookies
Termos e Condições da Plataforma