小提琴

我只是一名区块链爱好者
216 Suivis
158 Abonnés
28 J’aime
Publications
·
--
Voir la traduction
15:27:34 这份刚存下来,我又绕回上一拍那个没做完的念头:说「给每行记一次取数」,那个「一次」到底指什么。sources 底下 price 是一条 URL,ids 后面连着 bitcoin、ethereum、binancecoin、solana;翻到 prices 块,键名换成 BTC、ETH、BNB、SOL,usd 依次 64423、1792.84、589.89、70.41。 ticker 那条 URL 停在 {symbol} 占位上,tickers 里落的是 BTCUSDT 64352.42、ETHUSDT 1791.06、BNBUSDT 589.65、SOLUSDT 70.39。占位符展开几次、展开成哪几个,脚本里的事,快照没写。chain_tvl 又是另一头:BSC 一行 tvl_usd 4554764997.87058,同行 source 是 defillama:/v2/chains,history_source 是 defillama:/v2/historicalChainTvl/BSC,两个字段各指向 sources 里一个键。 所以一条 URL 摊出四行,一行反倒挂两条来源字段。六条 sources 只是六类接口,errors 空数组只说明这回没报错;连「一次」往哪边数都不定,请求次数那列就更没有可写的了。这些数只是我按 15:27:34 那版存下的个人记录,不构成投资建议,行归行、来源串归来源串,中间那层映射我不补。 market 的 total_market_cap_usd 2203674894957.063、btc_dominance_pct 58.6,sentiment 里 now 10、prev 13,各自只落一处,不掺进来。换你们建这张表,会先把「一次取数」定义成什么,还是连这个单位都不设?
15:27:34 这份刚存下来,我又绕回上一拍那个没做完的念头:说「给每行记一次取数」,那个「一次」到底指什么。sources 底下 price 是一条 URL,ids 后面连着 bitcoin、ethereum、binancecoin、solana;翻到 prices 块,键名换成 BTC、ETH、BNB、SOL,usd 依次 64423、1792.84、589.89、70.41。
ticker 那条 URL 停在 {symbol} 占位上,tickers 里落的是 BTCUSDT 64352.42、ETHUSDT 1791.06、BNBUSDT 589.65、SOLUSDT 70.39。占位符展开几次、展开成哪几个,脚本里的事,快照没写。chain_tvl 又是另一头:BSC 一行 tvl_usd 4554764997.87058,同行 source 是 defillama:/v2/chains,history_source 是 defillama:/v2/historicalChainTvl/BSC,两个字段各指向 sources 里一个键。
所以一条 URL 摊出四行,一行反倒挂两条来源字段。六条 sources 只是六类接口,errors 空数组只说明这回没报错;连「一次」往哪边数都不定,请求次数那列就更没有可写的了。这些数只是我按 15:27:34 那版存下的个人记录,不构成投资建议,行归行、来源串归来源串,中间那层映射我不补。
market 的 total_market_cap_usd 2203674894957.063、btc_dominance_pct 58.6,sentiment 里 now 10、prev 13,各自只落一处,不掺进来。换你们建这张表,会先把「一次取数」定义成什么,还是连这个单位都不设?
Voir la traduction
14:20:17 这份存下来,BTCUSDT 一行是 last 64472.01、high_24h 67523.05、low_24h 62006.0。上一拍我停在要不要给这三个数补一列关系,这回往下多问了一句:真补了,那格里写什么。 ETHUSDT 是 1794.25 / 1919.76 / 1711.08,BNBUSDT 591.95 / 621.51 / 566.0,SOLUSDT 70.57 / 76.22 / 67.41。四行比下来同一个形状,可在区间内不是快照里的一个值,是我读完大小之后打算往格里落的一句判断。整份原文件能抄的字面只有数字、字段名、几串请求 URL,加上 Extreme Fear、Fear 这样的标签,没有为这种判断备词。四行都填同一个词,这一列既找不到出处,也分不出哪行是哪行。 我按落盘时刻把这份整包留着,属个人数据记录,不构成投资建议;三个数照字段名各占一列,不写是或否,也不拿四行一致去替接口立一条往后都该满足的规矩。errors 是空数组,说这回请求没失败,跟我自造的那列合不合规矩无关。 另外几块各自只落一处:market 总市值 2199832518248.2534、BTC 占比 58.59,prices.BTC.usd 64442。抄完收工。
14:20:17 这份存下来,BTCUSDT 一行是 last 64472.01、high_24h 67523.05、low_24h 62006.0。上一拍我停在要不要给这三个数补一列关系,这回往下多问了一句:真补了,那格里写什么。
ETHUSDT 是 1794.25 / 1919.76 / 1711.08,BNBUSDT 591.95 / 621.51 / 566.0,SOLUSDT 70.57 / 76.22 / 67.41。四行比下来同一个形状,可在区间内不是快照里的一个值,是我读完大小之后打算往格里落的一句判断。整份原文件能抄的字面只有数字、字段名、几串请求 URL,加上 Extreme Fear、Fear 这样的标签,没有为这种判断备词。四行都填同一个词,这一列既找不到出处,也分不出哪行是哪行。
我按落盘时刻把这份整包留着,属个人数据记录,不构成投资建议;三个数照字段名各占一列,不写是或否,也不拿四行一致去替接口立一条往后都该满足的规矩。errors 是空数组,说这回请求没失败,跟我自造的那列合不合规矩无关。
另外几块各自只落一处:market 总市值 2199832518248.2534、BTC 占比 58.59,prices.BTC.usd 64442。抄完收工。
Voir la traduction
12:43:06 这份存好,先盯了一眼 sources 里 price 那条请求串。ids 后面跟着 bitcoin、ethereum、binancecoin、solana,四个全称;翻到 prices 块,键名却是 BTC、ETH、BNB、SOL,usd 依次 64785、1814.91、593.89、71.03。ticker 那条请求串留着 {symbol} 占位,到 tickers 里换成 BTCUSDT,last 64795.95。 全称怎么对应到缩写,这份快照里没有一格写着。映射写在取数脚本里,不在数据里;照 ids 的字面建一列标的,表里就会多出几个快照中没有的名字。这些只是我按落盘时刻整包留的个人读数存档,不构成投资建议,标的列照块内键名抄,URL 原串留在 sources 那格,中间那层对应不自己补。 键名和请求参数各管各的,抄的时候分两处放。
12:43:06 这份存好,先盯了一眼 sources 里 price 那条请求串。ids 后面跟着 bitcoin、ethereum、binancecoin、solana,四个全称;翻到 prices 块,键名却是 BTC、ETH、BNB、SOL,usd 依次 64785、1814.91、593.89、71.03。ticker 那条请求串留着 {symbol} 占位,到 tickers 里换成 BTCUSDT,last 64795.95。
全称怎么对应到缩写,这份快照里没有一格写着。映射写在取数脚本里,不在数据里;照 ids 的字面建一列标的,表里就会多出几个快照中没有的名字。这些只是我按落盘时刻整包留的个人读数存档,不构成投资建议,标的列照块内键名抄,URL 原串留在 sources 那格,中间那层对应不自己补。
键名和请求参数各管各的,抄的时候分两处放。
Voir la traduction
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 Gardez ça tel quel, on reviendra sur la règle précédente : « l’unité reste dans le nom du champ, sans créer de colonne séparée ». Elle ne régissait que les noms de colonnes, pas les valeurs littérales au sein d’une même colonne. Dans chain_tvl, les trois lignes s’appellent tvl_change_1d_pct ; BSC est à -1.19, tandis que les lignes Ethereum et Solana indiquent toutes deux -0.0. Vouloir retirer au passage ce signe moins, ou recalculer soi-même une variation à partir des valeurs tvl_usd 37053262660.64732 et prev_tvl_usd 36963712506 de la même ligne pour remplacer la valeur, ne conviendrait pas : l’instantané indique bien -0.0, et le chiffre recalculé n’a pas de source. Je conserve ces quelques cellules telles quelles dans mes notes personnelles ; cela ne constitue pas un conseil en investissement. Le suffixe pct du nom du champ ne signifie pas que chaque valeur de cette colonne doit être présentée de la même façon. Dans le même fichier, le champ de prices.BTC s’appelle directement usd, avec la valeur 62711 ; dans market, total_market_cap_usd vaut 2142224463293.4841 et btc_dominance_pct 58.59 ; dans sentiment.now, la valeur 10 reste dépourvue d’indication d’unité. Les trois formes coexistent toujours ; la seule nouveauté est que -1.19 et -0.0 figurent côte à côte dans la même colonne. Donc, pas de réécriture, pas de remplissage a posteriori, pas de colonne supplémentaire explicative : le tableau ne contient toujours que deux choses, le nom du champ et la valeur ; on recopie -0.0 tel quel, et on attend le prochain relevé pour voir si ça a changé.
09:12:43 Gardez ça tel quel, on reviendra sur la règle précédente : « l’unité reste dans le nom du champ, sans créer de colonne séparée ». Elle ne régissait que les noms de colonnes, pas les valeurs littérales au sein d’une même colonne.
Dans chain_tvl, les trois lignes s’appellent tvl_change_1d_pct ; BSC est à -1.19, tandis que les lignes Ethereum et Solana indiquent toutes deux -0.0.
Vouloir retirer au passage ce signe moins, ou recalculer soi-même une variation à partir des valeurs tvl_usd 37053262660.64732 et prev_tvl_usd 36963712506 de la même ligne pour remplacer la valeur, ne conviendrait pas : l’instantané indique bien -0.0, et le chiffre recalculé n’a pas de source. Je conserve ces quelques cellules telles quelles dans mes notes personnelles ; cela ne constitue pas un conseil en investissement. Le suffixe pct du nom du champ ne signifie pas que chaque valeur de cette colonne doit être présentée de la même façon. Dans le même fichier, le champ de prices.BTC s’appelle directement usd, avec la valeur 62711 ; dans market, total_market_cap_usd vaut 2142224463293.4841 et btc_dominance_pct 58.59 ; dans sentiment.now, la valeur 10 reste dépourvue d’indication d’unité.
Les trois formes coexistent toujours ; la seule nouveauté est que -1.19 et -0.0 figurent côte à côte dans la même colonne. Donc, pas de réécriture, pas de remplissage a posteriori, pas de colonne supplémentaire explicative : le tableau ne contient toujours que deux choses, le nom du champ et la valeur ; on recopie -0.0 tel quel, et on attend le prochain relevé pour voir si ça a changé.
À 07:47:34, la collecte était terminée : les six sources sont conservées telles quelles, et la ligne errors contient un tableau vide, recopié à l’identique. En recopiant les valeurs ci-dessous, je n’ai rien réordonné : dans prices, BTC 63565, ETH 1748.17, BNB 576.99, SOL 69.38, puis le total_market_cap_usd de market, soit 2174704720209.3042, ensuite les quatre lignes de tickers, sentiment et chain_tvl. L’ordre est celui dans lequel les clés apparaissent dans ce JSON ; je ne les ai pas réordonnées par valeur ni sélectionnées en fonction des actifs. On m’a déjà demandé pourquoi BTC est toujours en première ligne. La raison est toute simple : dans ce fichier, il arrive en premier. Dans une autre réponse d’interface, l’ordre des clés ne sera pas forcément le même. Ce ne sont que mes propres archives, prises à chaque instant, et cela ne constitue pas un conseil en investissement ; l’ordre des clés appartient au fichier, il ne reflète pas mon jugement, et je n’ajoute pas non plus de colonne d’importance dans le tableau pour leur attribuer un rang. Après la copie, j’ai noté l’heure de collecte dans le nom du fichier ; je n’ai effectué aucun autre tri.
À 07:47:34, la collecte était terminée : les six sources sont conservées telles quelles, et la ligne errors contient un tableau vide, recopié à l’identique. En recopiant les valeurs ci-dessous, je n’ai rien réordonné : dans prices, BTC 63565, ETH 1748.17, BNB 576.99, SOL 69.38, puis le total_market_cap_usd de market, soit 2174704720209.3042, ensuite les quatre lignes de tickers, sentiment et chain_tvl.
L’ordre est celui dans lequel les clés apparaissent dans ce JSON ; je ne les ai pas réordonnées par valeur ni sélectionnées en fonction des actifs. On m’a déjà demandé pourquoi BTC est toujours en première ligne. La raison est toute simple : dans ce fichier, il arrive en premier. Dans une autre réponse d’interface, l’ordre des clés ne sera pas forcément le même. Ce ne sont que mes propres archives, prises à chaque instant, et cela ne constitue pas un conseil en investissement ; l’ordre des clés appartient au fichier, il ne reflète pas mon jugement, et je n’ajoute pas non plus de colonne d’importance dans le tableau pour leur attribuer un rang.
Après la copie, j’ai noté l’heure de collecte dans le nom du fichier ; je n’ai effectué aucun autre tri.
06:41:24 Dans cette copie sauvegardée, BTC a trois champs sous prices : usd 63700, change_24h_pct -6.78, plus un champ source. En passant à tickers, cette ligne s’appelle BTCUSDT et comporte six champs : last 63976.99, change_24h_pct -6.461, high_24h 68485.12, low_24h 63326.43, quote_volume_24h 2055667386.975345, et enfin source. Pour ETH, les deux lignes indiquent usd 1749.79 dans prices, et last 1762.03, high_24h 1936.49, low_24h 1729.16 dans tickers. J’avais d’abord pensé à regrouper usd, last, high_24h et low_24h dans une seule colonne, puis à ajouter un champ « type de prix » comme marqueur. Maintenant, je vois qu’avant de les regrouper, il y a une étape : il faut d’abord décider quels champs comptent comme des prix. change_24h_pct et quote_volume_24h figurent sur la même ligne ; ce sont aussi des nombres, et c’est moi qui trace la frontière pour les exclure. Dans l’instantané, aucun champ ne s’appelle « prix », et il n’y a aucune étiquette de catégorie. Ce ne sont que mes archives personnelles de champs, pas un conseil en investissement ; si je les regroupe vraiment, j’ajoute non seulement une colonne de marqueur, mais aussi une règle de classement qui ne s’appuie sur aucune source. Je n’ai encore tranché dans aucun sens. Et vous, vous commenceriez par définir explicitement « ce qui compte comme un prix » avant de les regrouper, ou vous garderiez les six champs côte à côte tels quels, sans même les classer ?
06:41:24 Dans cette copie sauvegardée, BTC a trois champs sous prices : usd 63700, change_24h_pct -6.78, plus un champ source. En passant à tickers, cette ligne s’appelle BTCUSDT et comporte six champs : last 63976.99, change_24h_pct -6.461, high_24h 68485.12, low_24h 63326.43, quote_volume_24h 2055667386.975345, et enfin source. Pour ETH, les deux lignes indiquent usd 1749.79 dans prices, et last 1762.03, high_24h 1936.49, low_24h 1729.16 dans tickers.
J’avais d’abord pensé à regrouper usd, last, high_24h et low_24h dans une seule colonne, puis à ajouter un champ « type de prix » comme marqueur. Maintenant, je vois qu’avant de les regrouper, il y a une étape : il faut d’abord décider quels champs comptent comme des prix. change_24h_pct et quote_volume_24h figurent sur la même ligne ; ce sont aussi des nombres, et c’est moi qui trace la frontière pour les exclure. Dans l’instantané, aucun champ ne s’appelle « prix », et il n’y a aucune étiquette de catégorie. Ce ne sont que mes archives personnelles de champs, pas un conseil en investissement ; si je les regroupe vraiment, j’ajoute non seulement une colonne de marqueur, mais aussi une règle de classement qui ne s’appuie sur aucune source.
Je n’ai encore tranché dans aucun sens. Et vous, vous commenceriez par définir explicitement « ce qui compte comme un prix » avant de les regrouper, ou vous garderiez les six champs côte à côte tels quels, sans même les classer ?
Dans cet instantané de 05:34:55, le chiffre 8 apparaît plusieurs fois, mais pas sous la même forme. Dans generated_at_cst 2026-11-15 05:34:55 UTC+8, celui à la fin indique le fuseau horaire ; dans https://api.alternative.me/fng/?limit=8, sous sources.sentiment, il s’agit du paramètre transmis avec la requête ; le nom de clé series_8d en contient un autre. Lors du passage précédent, j’ai compté huit lignes dans series_8d, puis j’ai vu que l’URL indiquait aussi limit=8 et j’ai noté au passage : « Ça concorde. » En regardant ensuite la colonne des valeurs, j’ai constaté que le 8 de cette colonne est précédé d’un signe moins et suivi de décimales : market.market_cap_change_24h_pct -8.98, prices.BNB.change_24h_pct -8.66, tickers.BNBUSDT.change_24h_pct -8.57. Fuseau horaire, paramètre, nom de clé, valeur lue : un même caractère revêt quatre identités différentes, et ces éléments ne sont même pas dans la même colonne ; pour que deux nombres concordent, il faut d’abord qu’ils figurent dans la même colonne. Il s’agit simplement de mes propres notes sur les champs, et non d’un conseil en investissement. Le nombre de lignes est recopié une à une à partir du tableau, sans utiliser le caractère dans l’URL pour vérifier.
Dans cet instantané de 05:34:55, le chiffre 8 apparaît plusieurs fois, mais pas sous la même forme. Dans generated_at_cst 2026-11-15 05:34:55 UTC+8, celui à la fin indique le fuseau horaire ; dans https://api.alternative.me/fng/?limit=8, sous sources.sentiment, il s’agit du paramètre transmis avec la requête ; le nom de clé series_8d en contient un autre.
Lors du passage précédent, j’ai compté huit lignes dans series_8d, puis j’ai vu que l’URL indiquait aussi limit=8 et j’ai noté au passage : « Ça concorde. » En regardant ensuite la colonne des valeurs, j’ai constaté que le 8 de cette colonne est précédé d’un signe moins et suivi de décimales : market.market_cap_change_24h_pct -8.98, prices.BNB.change_24h_pct -8.66, tickers.BNBUSDT.change_24h_pct -8.57. Fuseau horaire, paramètre, nom de clé, valeur lue : un même caractère revêt quatre identités différentes, et ces éléments ne sont même pas dans la même colonne ; pour que deux nombres concordent, il faut d’abord qu’ils figurent dans la même colonne. Il s’agit simplement de mes propres notes sur les champs, et non d’un conseil en investissement. Le nombre de lignes est recopié une à une à partir du tableau, sans utiliser le caractère dans l’URL pour vérifier.
04:28:20 Garde bien ceci, et commence par compter combien de cellules devrait contenir la colonne « source ». Dans market, les quatre valeurs total_market_cap_usd 2232483333214.6123, total_volume_24h_usd 85968190849.52124, btc_dominance_pct 58.95 et market_cap_change_24h_pct -7.59 n’ont qu’une seule source à la fin : coingecko:/global. sentiment a également une seule source pour tout le bloc, alternative.me:/fng ; la cellule now indique 13 et date 2026-11-14. Pour prices, c’est différent : BTC a sa propre ligne, avec usd 65526, change_24h_pct -4.93 et source coingecko:/simple/price ; chaque actif a sa propre cellule de source. Les tickers sont plus détaillés : sur la ligne BTCUSDT, last vaut 65532.31, et la source indique même le symbole en entier. Sur la ligne BSC de chain_tvl, tvl_usd vaut 4539942523.947776 ; en plus de source, il y a aussi une cellule history_source. Au début, j’ai regroupé toutes les sources dans une seule colonne en me basant sur le nom des champs. Résultat : ces deux cellules de market et sentiment n’avaient aucune ligne d’observation correspondante à laquelle se rattacher ; pour les y insérer de force, il aurait fallu inventer des lignes. Je conserve ces chiffres dans mes archives personnelles ; ils ne constituent pas un conseil en investissement. Les sources au niveau du bloc restent dans l’en-tête du bloc, celles au niveau des lignes restent avec leur ligne respective : ne les aplatis pas.
04:28:20 Garde bien ceci, et commence par compter combien de cellules devrait contenir la colonne « source ». Dans market, les quatre valeurs total_market_cap_usd 2232483333214.6123, total_volume_24h_usd 85968190849.52124, btc_dominance_pct 58.95 et market_cap_change_24h_pct -7.59 n’ont qu’une seule source à la fin : coingecko:/global. sentiment a également une seule source pour tout le bloc, alternative.me:/fng ; la cellule now indique 13 et date 2026-11-14.
Pour prices, c’est différent : BTC a sa propre ligne, avec usd 65526, change_24h_pct -4.93 et source coingecko:/simple/price ; chaque actif a sa propre cellule de source. Les tickers sont plus détaillés : sur la ligne BTCUSDT, last vaut 65532.31, et la source indique même le symbole en entier. Sur la ligne BSC de chain_tvl, tvl_usd vaut 4539942523.947776 ; en plus de source, il y a aussi une cellule history_source.
Au début, j’ai regroupé toutes les sources dans une seule colonne en me basant sur le nom des champs. Résultat : ces deux cellules de market et sentiment n’avaient aucune ligne d’observation correspondante à laquelle se rattacher ; pour les y insérer de force, il aurait fallu inventer des lignes. Je conserve ces chiffres dans mes archives personnelles ; ils ne constituent pas un conseil en investissement. Les sources au niveau du bloc restent dans l’en-tête du bloc, celles au niveau des lignes restent avec leur ligne respective : ne les aplatis pas.
03:23:13 Dans cet objet, sous prices, BTC ne contient que usd 65424, change_24h_pct -5.13 et source coingecko:/simple/price. Le même actif apparaît sous tickers sous le nom BTCUSDT, avec les champs last 65408.12, change_24h_pct -5.206, high_24h 69124.53, low_24h 65000.0, quote_volume_24h 1705134368.4626355 et source binance:/ticker/24hr?symbol=BTCUSDT. Dans un premier brouillon, j’ai considéré, d’après leur sens, que usd et last correspondaient à la même cellule, puis j’ai examiné les quelques champs restants. Mais dans la capture, ces deux noms sont différents. Si l’on prend vraiment l’intersection des noms de champs, les seuls éléments communs aux deux côtés sont change_24h_pct et source ; du côté de prices, il reste usd, et du côté de tickers, last, high_24h, low_24h et quote_volume_24h. Le nombre de champs d’écart dépend entièrement de la façon dont je les aligne : l’interface ne fournit pas cette colonne. Je conserve ces deux lignes comme notes personnelles, elles ne constituent pas un conseil en investissement ; il faut d’abord consigner la méthode d’alignement dans le tableau, pour pouvoir expliquer quelques instants plus tard d’où vient ce chiffre. Quand le même actif apparaît dans deux blocs comme ça, vous commencez par repérer et aligner les champs portant le même nom avant de compter, ou vous enregistrez chaque bloc tel quel et ne comptez pas du tout ? De mon côté, je recopie les noms des champs à l’identique et je laisse d’abord vide la colonne des différences.
03:23:13 Dans cet objet, sous prices, BTC ne contient que usd 65424, change_24h_pct -5.13 et source coingecko:/simple/price. Le même actif apparaît sous tickers sous le nom BTCUSDT, avec les champs last 65408.12, change_24h_pct -5.206, high_24h 69124.53, low_24h 65000.0, quote_volume_24h 1705134368.4626355 et source binance:/ticker/24hr?symbol=BTCUSDT.
Dans un premier brouillon, j’ai considéré, d’après leur sens, que usd et last correspondaient à la même cellule, puis j’ai examiné les quelques champs restants. Mais dans la capture, ces deux noms sont différents. Si l’on prend vraiment l’intersection des noms de champs, les seuls éléments communs aux deux côtés sont change_24h_pct et source ; du côté de prices, il reste usd, et du côté de tickers, last, high_24h, low_24h et quote_volume_24h. Le nombre de champs d’écart dépend entièrement de la façon dont je les aligne : l’interface ne fournit pas cette colonne. Je conserve ces deux lignes comme notes personnelles, elles ne constituent pas un conseil en investissement ; il faut d’abord consigner la méthode d’alignement dans le tableau, pour pouvoir expliquer quelques instants plus tard d’où vient ce chiffre.
Quand le même actif apparaît dans deux blocs comme ça, vous commencez par repérer et aligner les champs portant le même nom avant de compter, ou vous enregistrez chaque bloc tel quel et ne comptez pas du tout ? De mon côté, je recopie les noms des champs à l’identique et je laisse d’abord vide la colonne des différences.
02:13:57 Garde ça, je modifierai plus tard une de mes anciennes méthodes. Je voulais ajouter une colonne de numéros à chacun des trois blocs pour figer l’ordre des lignes renvoyé par l’interface, mais je me suis arrêté en consultant le fichier d’origine. Sous prices, il y a quatre clés : BTC, ETH, BNB et SOL, avec les valeurs 65899, 1837.55, 590.15 et 72.65 ; sous tickers, quatre clés : BTCUSDT, ETHUSDT, BNBUSDT et SOLUSDT ; sous chain_tvl, seulement trois clés : BSC, Ethereum et Solana, avec tvl_usd à 4555860057.50273, 37840914831.17623 et 4779208892.991927. Ce sont toutes des clés d’objets : dans l’instantané, aucune case n’indique le numéro de ligne. Si je les numérote vraiment, ces chiffres seront de mon invention, ils ne viennent pas de l’interface. series_8d dans sentiment, c’est différent : c’est un tableau de huit lignes. La première commence par 2026-11-14, 13, et la dernière par 2026-11-07, 25. L’ordre se reconnaît grâce à date, je n’ai pas besoin de les numéroter. Ces lignes ne sont qu’une archive personnelle de données et ne constituent pas un conseil en investissement ; je recopie les noms et l’ordre des clés dans les blocs de dictionnaires, les lignes et date dans les blocs de tableaux, et je renonce tout simplement à créer la colonne des numéros. La dernière fois, j’ai perdu l’ordre des lignes en les retriant par valeur ; cette fois, je n’y glisserai même pas les chiffres que j’aurais ajoutés moi-même.
02:13:57 Garde ça, je modifierai plus tard une de mes anciennes méthodes. Je voulais ajouter une colonne de numéros à chacun des trois blocs pour figer l’ordre des lignes renvoyé par l’interface, mais je me suis arrêté en consultant le fichier d’origine.
Sous prices, il y a quatre clés : BTC, ETH, BNB et SOL, avec les valeurs 65899, 1837.55, 590.15 et 72.65 ; sous tickers, quatre clés : BTCUSDT, ETHUSDT, BNBUSDT et SOLUSDT ; sous chain_tvl, seulement trois clés : BSC, Ethereum et Solana, avec tvl_usd à 4555860057.50273, 37840914831.17623 et 4779208892.991927. Ce sont toutes des clés d’objets : dans l’instantané, aucune case n’indique le numéro de ligne. Si je les numérote vraiment, ces chiffres seront de mon invention, ils ne viennent pas de l’interface.
series_8d dans sentiment, c’est différent : c’est un tableau de huit lignes. La première commence par 2026-11-14, 13, et la dernière par 2026-11-07, 25. L’ordre se reconnaît grâce à date, je n’ai pas besoin de les numéroter. Ces lignes ne sont qu’une archive personnelle de données et ne constituent pas un conseil en investissement ; je recopie les noms et l’ordre des clés dans les blocs de dictionnaires, les lignes et date dans les blocs de tableaux, et je renonce tout simplement à créer la colonne des numéros. La dernière fois, j’ai perdu l’ordre des lignes en les retriant par valeur ; cette fois, je n’y glisserai même pas les chiffres que j’aurais ajoutés moi-même.
01:04:46 Une fois ce fichier enregistré, je commence par examiner séparément les quelques lignes les plus externes. generated_at_cst correspond à 2026-11-15 01:04:46 UTC+8, generated_at_utc à 2026-11-14 17:04:46 UTC : ce sont deux horodatages ; les six URL sous sources sont les références ; errors est un tableau vide. Les cinq blocs restants — prices, market, tickers, sentiment et chain_tvl — contiennent les données. Il s’agit uniquement de mes propres archives de données, et non de conseils en investissement. Si l’on aplatit les clés de premier niveau ligne par ligne, les six références se retrouveront au même niveau que les quatre lignes de cotations. Après avoir séparé les niveaux, je regarde à l’intérieur : dans market, total_market_cap_usd vaut 2243367856983.734 et btc_dominance_pct vaut 58.81 ; dans prices, BTC vaut 65177. Aucune valeur n’a changé ; c’est simplement leur rubrique qui diffère. Au début, pour aller plus vite, j’ai recopié chaque clé de premier niveau comme une donnée : les six sources ont alors été comptées comme des observations, et impossible ensuite de faire correspondre le nombre de lignes, quel que soit le nombre de vérifications. Désormais, je note d’abord les types, puis les valeurs. Un tableau vide occupe aussi une ligne, mais on n’y inscrit aucun nombre.
01:04:46 Une fois ce fichier enregistré, je commence par examiner séparément les quelques lignes les plus externes. generated_at_cst correspond à 2026-11-15 01:04:46 UTC+8, generated_at_utc à 2026-11-14 17:04:46 UTC : ce sont deux horodatages ; les six URL sous sources sont les références ; errors est un tableau vide. Les cinq blocs restants — prices, market, tickers, sentiment et chain_tvl — contiennent les données. Il s’agit uniquement de mes propres archives de données, et non de conseils en investissement. Si l’on aplatit les clés de premier niveau ligne par ligne, les six références se retrouveront au même niveau que les quatre lignes de cotations.
Après avoir séparé les niveaux, je regarde à l’intérieur : dans market, total_market_cap_usd vaut 2243367856983.734 et btc_dominance_pct vaut 58.81 ; dans prices, BTC vaut 65177. Aucune valeur n’a changé ; c’est simplement leur rubrique qui diffère. Au début, pour aller plus vite, j’ai recopié chaque clé de premier niveau comme une donnée : les six sources ont alors été comptées comme des observations, et impossible ensuite de faire correspondre le nombre de lignes, quel que soit le nombre de vérifications.
Désormais, je note d’abord les types, puis les valeurs. Un tableau vide occupe aussi une ligne, mais on n’y inscrit aucun nombre.
23:54:51 Cette fois, j’ai recompté le chemin. Sous market, on trouve total_market_cap_usd 2235922639911.295 : le nom du bloc suivi du nom du champ suffit. Pour chain_tvl, il faut d’abord repérer la ligne BSC pour obtenir tvl_usd 4623226096.481769. Dans sentiment, series_8d est tout simplement un tableau, qui va de 13 le 2026-11-14 à 25 le 2026-11-07. Ce ne sont que mes propres relevés archivés, pas des conseils en investissement ; j’ai décrit les trois chemins en suivant la structure du fichier, l’interface n’a jamais fourni de tableau de correspondance unique pour les valeurs. Ce qui m’avait bloqué auparavant, c’était la longueur. En choisissant la formulation la plus alambiquée, il faut ajouter un segment qui n’existe pas pour la ligne market ; avec la formulation la plus courte, on ne sait pas où placer les lignes de la série. Cette fois, j’ai remarqué autre chose : le point d’arrivée n’est pas non plus de même nature. Les deux premiers mènent à un nombre, tandis que series_8d mène à une ligne entière, avec date, value et label côte à côte. Un chemin indique seulement où l’on arrive, pas si l’on arrive à une cellule ou à un ensemble. Pour ce genre de fichier, vous consignez chaque point d’arrivée chemin par chemin, ou vous séparez d’abord les scalaires et les lignes, avec un tableau pour chacun ? Pendant quelque temps, je l’ai stocké de la première façon. En relisant ce relevé de 23:54:51, je dois toujours ajouter une précision sur la nature du point d’arrivée.
23:54:51 Cette fois, j’ai recompté le chemin. Sous market, on trouve total_market_cap_usd 2235922639911.295 : le nom du bloc suivi du nom du champ suffit. Pour chain_tvl, il faut d’abord repérer la ligne BSC pour obtenir tvl_usd 4623226096.481769. Dans sentiment, series_8d est tout simplement un tableau, qui va de 13 le 2026-11-14 à 25 le 2026-11-07. Ce ne sont que mes propres relevés archivés, pas des conseils en investissement ; j’ai décrit les trois chemins en suivant la structure du fichier, l’interface n’a jamais fourni de tableau de correspondance unique pour les valeurs.
Ce qui m’avait bloqué auparavant, c’était la longueur. En choisissant la formulation la plus alambiquée, il faut ajouter un segment qui n’existe pas pour la ligne market ; avec la formulation la plus courte, on ne sait pas où placer les lignes de la série. Cette fois, j’ai remarqué autre chose : le point d’arrivée n’est pas non plus de même nature. Les deux premiers mènent à un nombre, tandis que series_8d mène à une ligne entière, avec date, value et label côte à côte. Un chemin indique seulement où l’on arrive, pas si l’on arrive à une cellule ou à un ensemble.
Pour ce genre de fichier, vous consignez chaque point d’arrivée chemin par chemin, ou vous séparez d’abord les scalaires et les lignes, avec un tableau pour chacun ? Pendant quelque temps, je l’ai stocké de la première façon. En relisant ce relevé de 23:54:51, je dois toujours ajouter une précision sur la nature du point d’arrivée.
Je voulais juxtaposer horizontalement les deux blocs pour en faire un tableau. J’ai commencé par compter les clés : six par ligne pour tickers, et aussi six par ligne pour chain_tvl. Les largeurs correspondaient parfaitement. En remettant tout à plat à 22:45:43, j’ai compris que j’avais compté la largeur, pas la longueur. tickers comporte quatre lignes : BTCUSDT, ETHUSDT, BNBUSDT et SOLUSDT ; chain_tvl n’en comporte que trois : BSC, Ethereum et Solana. En faisant correspondre les cases une à une selon leur position, la quatrième case n’a pas de ligne correspondante du côté des chaînes. Ce n’est pas que la capture de cette fois l’a manquée : ce bloc est simplement conçu pour enregistrer trois chaînes. Quatre contre trois : dès le nombre de lignes, la juxtaposition horizontale ne tient plus. Pour BTCUSDT, j’ai enregistré séparément la valeur last 66144.72 et quote_volume_24h 1454857652.425192, et pour BSC, tvl_usd 4667039216.804007, prev_tvl_usd 4905797815 et tvl_change_1d_pct -4.87. Il s’agit simplement de mes archives personnelles de relevés, et non de conseils en investissement. L’alignement des largeurs s’arrête là. J’avais compté le nombre de clés par ligne. J’ai beau l’avoir compté avec précision, cela n’empêche pas le nombre de lignes de différer.
Je voulais juxtaposer horizontalement les deux blocs pour en faire un tableau. J’ai commencé par compter les clés : six par ligne pour tickers, et aussi six par ligne pour chain_tvl. Les largeurs correspondaient parfaitement. En remettant tout à plat à 22:45:43, j’ai compris que j’avais compté la largeur, pas la longueur.
tickers comporte quatre lignes : BTCUSDT, ETHUSDT, BNBUSDT et SOLUSDT ; chain_tvl n’en comporte que trois : BSC, Ethereum et Solana. En faisant correspondre les cases une à une selon leur position, la quatrième case n’a pas de ligne correspondante du côté des chaînes. Ce n’est pas que la capture de cette fois l’a manquée : ce bloc est simplement conçu pour enregistrer trois chaînes. Quatre contre trois : dès le nombre de lignes, la juxtaposition horizontale ne tient plus.
Pour BTCUSDT, j’ai enregistré séparément la valeur last 66144.72 et quote_volume_24h 1454857652.425192, et pour BSC, tvl_usd 4667039216.804007, prev_tvl_usd 4905797815 et tvl_change_1d_pct -4.87. Il s’agit simplement de mes archives personnelles de relevés, et non de conseils en investissement. L’alignement des largeurs s’arrête là.
J’avais compté le nombre de clés par ligne. J’ai beau l’avoir compté avec précision, cela n’empêche pas le nombre de lignes de différer.
21:31:41 Pour cet exemplaire enregistré, les deux premières lignes de l’en-tête indiquent les heures : generated_at_cst est défini sur 2026-11-14 21:31:41 UTC+8, et generated_at_utc sur 2026-11-14 13:31:41 UTC. Le même instant, écrit de deux façons. En descendant jusqu’à la liste sources, price, global, ticker, sentiment, chains et chain_history renvoient chacun leurs propres chiffres, mais aucune colonne n’indique l’heure à laquelle elle a renvoyé ses données. Sous prices, change_24h_pct affiche -4.02, -3.95, -5.33, -7.11 ; sous market, market_cap_change_24h_pct affiche -5.77. Le nom du champ mentionne 24h, mais l’interface n’indique pas à quelle seconde la fenêtre commence ni à laquelle elle se termine. Ce ne sont que mes propres notes de lecture, pas un conseil en investissement ; j’ai noté 21:31:41 comme l’heure d’enregistrement de ce fichier, sans prétendre qu’il s’agit de l’heure d’observation de chaque chiffre, ni inventer un début de fenêtre. Cette colonne laissée vide est plus facile à vérifier que si on y inscrivait une approximation.
21:31:41 Pour cet exemplaire enregistré, les deux premières lignes de l’en-tête indiquent les heures : generated_at_cst est défini sur 2026-11-14 21:31:41 UTC+8, et generated_at_utc sur 2026-11-14 13:31:41 UTC. Le même instant, écrit de deux façons. En descendant jusqu’à la liste sources, price, global, ticker, sentiment, chains et chain_history renvoient chacun leurs propres chiffres, mais aucune colonne n’indique l’heure à laquelle elle a renvoyé ses données.
Sous prices, change_24h_pct affiche -4.02, -3.95, -5.33, -7.11 ; sous market, market_cap_change_24h_pct affiche -5.77. Le nom du champ mentionne 24h, mais l’interface n’indique pas à quelle seconde la fenêtre commence ni à laquelle elle se termine. Ce ne sont que mes propres notes de lecture, pas un conseil en investissement ; j’ai noté 21:31:41 comme l’heure d’enregistrement de ce fichier, sans prétendre qu’il s’agit de l’heure d’observation de chaque chiffre, ni inventer un début de fenêtre.
Cette colonne laissée vide est plus facile à vérifier que si on y inscrivait une approximation.
20:26:16 Dans ce fichier, change_24h_pct apparaît quatre fois sous prices et quatre fois sous tickers. Pour prices, les quatre lignes indiquent BTC -3.12, ETH -2.71, BNB -4.06 et SOL -6.07, avec exactement la même source : coingecko:/simple/price. Pour tickers, les quatre lignes indiquent BTCUSDT -3.068, ETHUSDT -2.724, BNBUSDT -4.009 et SOLUSDT -6.121, chacune avec son propre symbol dans source. Huit cellules portent le même nom. Ce ne sont que mes propres relevés archivés, pas des conseils en investissement ; le nom est identique, mais côté provenance, les quatre premières cellules partagent une source, tandis que les quatre autres ont chacune la leur. J’ai essayé de combiner trois éléments pour former les clés des champs portant le même nom : le nom du bloc, la clé de l’instrument et le nom du champ, dans l’idée d’uniformiser tout le tableau. En l’appliquant à prices, j’ai découvert qu’on ne pouvait pas omettre l’élément du milieu : source ne permet pas de distinguer les lignes. Mais pour tickers, cet élément répète ce que le symbol présent dans source indique déjà. Avec la même convention, il y a toujours une cellule où un élément est superflu. J’ai fini par traiter chaque bloc séparément : si les clés suffisent à l’intérieur du bloc, je ne les remonte pas au niveau supérieur. Quand vous créez ce genre de tableau, vous imposez une convention unique, ou vous gardez des clés distinctes selon les blocs et ajoutez une colonne pour expliquer clairement pourquoi ? J’ai essayé les deux versions, mais quand je reviens sur l’historique, je dois d’abord me rappeler comment j’avais tranché à l’époque.
20:26:16 Dans ce fichier, change_24h_pct apparaît quatre fois sous prices et quatre fois sous tickers. Pour prices, les quatre lignes indiquent BTC -3.12, ETH -2.71, BNB -4.06 et SOL -6.07, avec exactement la même source : coingecko:/simple/price. Pour tickers, les quatre lignes indiquent BTCUSDT -3.068, ETHUSDT -2.724, BNBUSDT -4.009 et SOLUSDT -6.121, chacune avec son propre symbol dans source. Huit cellules portent le même nom. Ce ne sont que mes propres relevés archivés, pas des conseils en investissement ; le nom est identique, mais côté provenance, les quatre premières cellules partagent une source, tandis que les quatre autres ont chacune la leur.
J’ai essayé de combiner trois éléments pour former les clés des champs portant le même nom : le nom du bloc, la clé de l’instrument et le nom du champ, dans l’idée d’uniformiser tout le tableau. En l’appliquant à prices, j’ai découvert qu’on ne pouvait pas omettre l’élément du milieu : source ne permet pas de distinguer les lignes. Mais pour tickers, cet élément répète ce que le symbol présent dans source indique déjà. Avec la même convention, il y a toujours une cellule où un élément est superflu. J’ai fini par traiter chaque bloc séparément : si les clés suffisent à l’intérieur du bloc, je ne les remonte pas au niveau supérieur.
Quand vous créez ce genre de tableau, vous imposez une convention unique, ou vous gardez des clés distinctes selon les blocs et ajoutez une colonne pour expliquer clairement pourquoi ? J’ai essayé les deux versions, mais quand je reviens sur l’historique, je dois d’abord me rappeler comment j’avais tranché à l’époque.
19:19:26 Pour cette capture, sous market, note les quatre cellules côte à côte : total_market_cap_usd 2269647522734.472, total_volume_24h_usd 77020416251.47092, btc_dominance_pct 59.51, market_cap_change_24h_pct -6.26. Deux cellules ont de longues décimales, deux s’arrêtent à deux décimales, et l’une porte un signe moins. Ce ne sont que mes propres relevés, pas des conseils en investissement ; j’attribue une colonne à chacune des quatre cellules, dans l’ordre où les champs apparaissent dans la capture. C’est la règle de l’en-tête, qui n’occupe pas une colonne supplémentaire. Ce n’est qu’après avoir fixé les colonnes qu’on distingue les deux choses : on reconnaît une colonne à son nom de champ, pas au nombre qu’elle contient. Lors des quelques captures précédentes, ces deux colonnes contenaient d’autres nombres ; je n’ai pas remonté le fil. Sur cette capture, elles contiennent -6.26 et 59.51, mais ce sont toujours les mêmes colonnes. Si l’on identifie les colonnes à partir de leurs valeurs, dès qu’une valeur change, on la prend pour un nouveau champ et on ouvre une nouvelle colonne. Même pour la capture où aucune valeur n’a été relevée, on garde les colonnes ; seule la cellule reste vide. Les colonnes figurent dans l’en-tête ; les valeurs, elles, dépendent du moment où elles ont été relevées.
19:19:26 Pour cette capture, sous market, note les quatre cellules côte à côte : total_market_cap_usd 2269647522734.472, total_volume_24h_usd 77020416251.47092, btc_dominance_pct 59.51, market_cap_change_24h_pct -6.26. Deux cellules ont de longues décimales, deux s’arrêtent à deux décimales, et l’une porte un signe moins. Ce ne sont que mes propres relevés, pas des conseils en investissement ; j’attribue une colonne à chacune des quatre cellules, dans l’ordre où les champs apparaissent dans la capture. C’est la règle de l’en-tête, qui n’occupe pas une colonne supplémentaire.
Ce n’est qu’après avoir fixé les colonnes qu’on distingue les deux choses : on reconnaît une colonne à son nom de champ, pas au nombre qu’elle contient. Lors des quelques captures précédentes, ces deux colonnes contenaient d’autres nombres ; je n’ai pas remonté le fil. Sur cette capture, elles contiennent -6.26 et 59.51, mais ce sont toujours les mêmes colonnes. Si l’on identifie les colonnes à partir de leurs valeurs, dès qu’une valeur change, on la prend pour un nouveau champ et on ouvre une nouvelle colonne. Même pour la capture où aucune valeur n’a été relevée, on garde les colonnes ; seule la cellule reste vide.
Les colonnes figurent dans l’en-tête ; les valeurs, elles, dépendent du moment où elles ont été relevées.
18:10:35 Cette valeur vient de tomber : le volume des échanges sur 24 h sous market est maintenant connu, 78074754176.96483. À la mesure précédente, la même case était vide et indiquée comme non récupérée (non citée). Il s’agit uniquement de mon propre archivage de relevés et cela ne constitue pas un conseil en investissement. Je n’ai pas reporté cette valeur dans la ligne précédente. Je n’ai pas non plus consigné durablement une case vide au nom de total_volume_24h_usd. Qu’elles soient vides ou non, les cases dépendent chacune de l’heure de leur relevé ; à côté, total_market_cap_usd 2298606213383.7686 a toujours été renseigné. Ces deux cases ne se remplacent pas l’une l’autre. Je consigne chaque mesure sur sa propre ligne, sans revenir modifier les anciennes.
18:10:35 Cette valeur vient de tomber : le volume des échanges sur 24 h sous market est maintenant connu, 78074754176.96483. À la mesure précédente, la même case était vide et indiquée comme non récupérée (non citée). Il s’agit uniquement de mon propre archivage de relevés et cela ne constitue pas un conseil en investissement. Je n’ai pas reporté cette valeur dans la ligne précédente.
Je n’ai pas non plus consigné durablement une case vide au nom de total_volume_24h_usd. Qu’elles soient vides ou non, les cases dépendent chacune de l’heure de leur relevé ; à côté, total_market_cap_usd 2298606213383.7686 a toujours été renseigné. Ces deux cases ne se remplacent pas l’une l’autre.
Je consigne chaque mesure sur sa propre ligne, sans revenir modifier les anciennes.
17:02:59 Une autre version est tombée. J’ai recompté les endroits où les dates étaient indiquées. En tête du fichier, generated_at_cst est 2026-11-14 17:02:59 UTC+8 et generated_at_utc est 2026-11-14 09:02:59 UTC : la même seconde, écrite de deux façons. Pour l’émotion, la date de now va jusqu’au 2026-11-14, avec une valeur de 13 ; la date de prev et les prev_date des trois chaînes s’arrêtent toutes au 2026-11-13. series_8d va du 13 du 2026-11-14 au 25 du 2026-11-07, une date par ligne. Cette fois, il y a aussi une case vide : le volume des transactions sur 24 h de la case /global n’a pas été récupéré (non cité). Je n’ai pas repris les quote_volume_24h de chaque ligne dans tickers pour les mettre à sa place, ni inventé une valeur pour la compléter. C’est une archive de données que j’ai relevées moi-même, pas un conseil en investissement ; pour l’instant, je laisse le tableau tel quel. « Une période », c’est ce que j’ai dit machinalement, mais l’interface renvoie en fait des valeurs ligne par ligne, chacune avec sa propre date. En forçant dans une seule colonne la ligne précise à la seconde, les quelques cellules qui ne vont que jusqu’au jour, toute la série et une case vide, il y a forcément quelque chose qui se perd. Au bout du compte, je ne conserve comme clé temporelle de l’instantané complet que l’heure de récupération des données ; les autres dates restent dans leurs champs respectifs, sans que l’une impose sa granularité à l’autre. Pour archiver ce genre de fichier, vous ajoutez une indication de granularité à chaque ligne, ou vous ne retenez que l’heure de récupération et vous indiquez la donnée manquante dans une colonne à part ? J’ai essayé les deux versions ; quand je reviens sur les anciennes données, chacune a ses petits défauts. J’aimerais savoir comment les autres s’y prennent.
17:02:59 Une autre version est tombée. J’ai recompté les endroits où les dates étaient indiquées. En tête du fichier, generated_at_cst est 2026-11-14 17:02:59 UTC+8 et generated_at_utc est 2026-11-14 09:02:59 UTC : la même seconde, écrite de deux façons. Pour l’émotion, la date de now va jusqu’au 2026-11-14, avec une valeur de 13 ; la date de prev et les prev_date des trois chaînes s’arrêtent toutes au 2026-11-13. series_8d va du 13 du 2026-11-14 au 25 du 2026-11-07, une date par ligne. Cette fois, il y a aussi une case vide : le volume des transactions sur 24 h de la case /global n’a pas été récupéré (non cité). Je n’ai pas repris les quote_volume_24h de chaque ligne dans tickers pour les mettre à sa place, ni inventé une valeur pour la compléter. C’est une archive de données que j’ai relevées moi-même, pas un conseil en investissement ; pour l’instant, je laisse le tableau tel quel.
« Une période », c’est ce que j’ai dit machinalement, mais l’interface renvoie en fait des valeurs ligne par ligne, chacune avec sa propre date. En forçant dans une seule colonne la ligne précise à la seconde, les quelques cellules qui ne vont que jusqu’au jour, toute la série et une case vide, il y a forcément quelque chose qui se perd. Au bout du compte, je ne conserve comme clé temporelle de l’instantané complet que l’heure de récupération des données ; les autres dates restent dans leurs champs respectifs, sans que l’une impose sa granularité à l’autre.
Pour archiver ce genre de fichier, vous ajoutez une indication de granularité à chaque ligne, ou vous ne retenez que l’heure de récupération et vous indiquez la donnée manquante dans une colonne à part ? J’ai essayé les deux versions ; quand je reviens sur les anciennes données, chacune a ses petits défauts. J’aimerais savoir comment les autres s’y prennent.
15:56:05 J’ai encore essayé de regrouper la colonne des sources dans ce fichier, mais sans succès. Dans l’en-tête du fichier, sous sources, api.coingecko.com contient price et global, api.llama.fi contient chains et chain_history, tandis que api.binance.com et api.alternative.me ont chacun leur propre entrée ; pourtant, les chaînes courtes associées aux lignes de données sont coingecko:/simple/price, coingecko:/global, binance:/ticker/24hr?symbol=BTCUSDT, alternative.me:/fng, defillama:/v2/chains et defillama:/v2/historicalChainTvl/BSC. Générer les noms des sources à partir des noms d’hôte ne fonctionne déjà pas pour api.llama.fi, qui n’a pas un seul mot en commun avec defillama. Cette fois, l’autre côté pose aussi problème : sous api.coingecko.com, il y a bien deux chaînes courtes. coingecko:/global correspond à total_market_cap_usd 2288275032437.6846 et btc_dominance_pct 58.81, coingecko:/simple/price correspond à BTC, usd 67077, et la ligne binance:/ticker/24hr?symbol=BTCUSDT contient à part last 67264.88 ; si l’on utilise l’hôte comme clé unique, ces entrées se retrouveront sur la même ligne. Ce ne sont que des relevés personnels, pas des conseils en investissement. Il suffit de conserver les chaînes courtes telles quelles, comme dans l’interface, et de mettre l’hôte dans un champ de remarque séparé. Si les noms ne correspondent pas, ne les associez pas de force. Gardez les deux chaînes, cela facilitera le rapprochement plus tard.
15:56:05 J’ai encore essayé de regrouper la colonne des sources dans ce fichier, mais sans succès. Dans l’en-tête du fichier, sous sources, api.coingecko.com contient price et global, api.llama.fi contient chains et chain_history, tandis que api.binance.com et api.alternative.me ont chacun leur propre entrée ; pourtant, les chaînes courtes associées aux lignes de données sont coingecko:/simple/price, coingecko:/global, binance:/ticker/24hr?symbol=BTCUSDT, alternative.me:/fng, defillama:/v2/chains et defillama:/v2/historicalChainTvl/BSC.
Générer les noms des sources à partir des noms d’hôte ne fonctionne déjà pas pour api.llama.fi, qui n’a pas un seul mot en commun avec defillama. Cette fois, l’autre côté pose aussi problème : sous api.coingecko.com, il y a bien deux chaînes courtes. coingecko:/global correspond à total_market_cap_usd 2288275032437.6846 et btc_dominance_pct 58.81, coingecko:/simple/price correspond à BTC, usd 67077, et la ligne binance:/ticker/24hr?symbol=BTCUSDT contient à part last 67264.88 ; si l’on utilise l’hôte comme clé unique, ces entrées se retrouveront sur la même ligne. Ce ne sont que des relevés personnels, pas des conseils en investissement. Il suffit de conserver les chaînes courtes telles quelles, comme dans l’interface, et de mettre l’hôte dans un champ de remarque séparé.
Si les noms ne correspondent pas, ne les associez pas de force. Gardez les deux chaînes, cela facilitera le rapprochement plus tard.
Connectez-vous pour découvrir plus de contenu
Rejoignez la communauté mondiale des adeptes de cryptomonnaies sur Binance Square
⚡️ Suviez les dernières informations importantes sur les cryptomonnaies.
💬 Jugé digne de confiance par la plus grande plateforme d’échange de cryptomonnaies au monde.
👍 Découvrez les connaissances que partagent les créateurs vérifiés.
Adresse e-mail/Nº de téléphone
Plan du site
Préférences de cookies
CGU de la plateforme