浏览代码

update universe data

raylu 1 月之前
父节点
当前提交
f46b94cfd1
共有 2 个文件被更改,包括 13 次插入1 次删除
  1. 12 0
      py/prepare.py
  2. 1 1
      www/data/universe-data.json

+ 12 - 0
py/prepare.py

@@ -30,6 +30,18 @@ def main() -> None:
 	with open(f'www/data/company-data-{month}.json', 'w') as f:
 		json.dump(company_data, f)
 
+	with open('www/data/universe-data.json', 'r+') as f:
+		universe_data = json.load(f)
+		universe_data[month] = {
+			'volume': sum(mat['volume'] for mat in prod_data.values()),
+			'profit': None,
+			'bases': sum(co['bases'] for co in bases_data.values()),
+			'companies': len(company_data['totals']),
+		}
+		f.seek(0)
+		json.dump(universe_data, f)
+		f.truncate()
+
 	response = httpx.get('https://api.fnar.net/material').raise_for_status()
 	tickers = frozenset(mat['Ticker'] for mat in response.json() if mat['Ticker'] != 'CMK')
 	if missing := tickers - prod_data.keys():

+ 1 - 1
www/data/universe-data.json

@@ -1 +1 @@
-{"mar25": {"volume": 1134428712.27813, "profit": 388698744.4857742, "bases": 10899, "companies": 2314}, "apr25": {"volume": 1170281021.8538406, "profit": 401506109.3992585, "bases": 11365, "companies": 2396}, "may25": {"volume": 1151048009.7929459, "profit": 386771561.50719714, "bases": 11608, "companies": 2382}, "jun25": {"volume": 1160636253.4295273, "profit": 378768116.03783643, "bases": 11984, "companies": 2469}, "jul25": {"volume": 1238995867.8477135, "profit": 395611332.84227026, "bases": 12137, "companies": 2261}, "aug25": {"volume": 1288511532.41081, "profit": 415192240.3992885, "bases": 12467, "companies": 2188}, "sep25": {"volume": 1368911564.5130417, "profit": 440366455.3044228, "bases": 12688, "companies": 2109}, "oct25": {"volume": 1498993640.113661, "profit": 470388512.38469, "bases": 13558, "companies": 2597}, "nov25": {"volume": 1594397514.8665, "profit": 483713082.8231541, "bases": 14270, "companies": 2878}, "dec25": {"volume": 1746891305.8955295, "profit": 524916880.12899554, "bases": 15649, "companies": 3751}, "jan26": {"volume": 2041775534.012063, "profit": 596691720.7240803, "bases": 16834, "companies": 3521}, "feb26": {"volume": 2299124616.908036, "profit": 665499362.3791398, "bases": 17702, "companies": 4432}, "mar26": {"volume": 2481808100.0669875, "profit": 719692763.9712193, "bases": 18028, "companies": 4344}, "apr26": {"volume": 2629930086.0813813, "profit": 758699006.4474998, "bases": 18674, "companies": 4344}}
+{"mar25": {"volume": 1134428712.27813, "profit": 388698744.4857742, "bases": 10899, "companies": 2314}, "apr25": {"volume": 1170281021.8538406, "profit": 401506109.3992585, "bases": 11365, "companies": 2396}, "may25": {"volume": 1151048009.7929459, "profit": 386771561.50719714, "bases": 11608, "companies": 2382}, "jun25": {"volume": 1160636253.4295273, "profit": 378768116.03783643, "bases": 11984, "companies": 2469}, "jul25": {"volume": 1238995867.8477135, "profit": 395611332.84227026, "bases": 12137, "companies": 2261}, "aug25": {"volume": 1288511532.41081, "profit": 415192240.3992885, "bases": 12467, "companies": 2188}, "sep25": {"volume": 1368911564.5130417, "profit": 440366455.3044228, "bases": 12688, "companies": 2109}, "oct25": {"volume": 1498993640.113661, "profit": 470388512.38469, "bases": 13558, "companies": 2597}, "nov25": {"volume": 1594397514.8665, "profit": 483713082.8231541, "bases": 14270, "companies": 2878}, "dec25": {"volume": 1746891305.8955295, "profit": 524916880.12899554, "bases": 15649, "companies": 3751}, "jan26": {"volume": 2041775534.012063, "profit": 596691720.7240803, "bases": 16834, "companies": 3521}, "feb26": {"volume": 2299124616.908036, "profit": 665499362.3791398, "bases": 17702, "companies": 4432}, "mar26": {"volume": 2481808100.0669875, "profit": 719692763.9712193, "bases": 18028, "companies": 4344}, "apr26": {"volume": 2629930086.0813813, "profit": 758699006.4474998, "bases": 18674, "companies": 4344}, "may26": {"volume": 2700046786.6474886, "profit": null, "bases": 16013, "companies": 3966}, "jun26": {"volume": 2692815758.635791, "profit": null, "bases": 16469, "companies": 3654}, "jul26": {"volume": 2806912651.697995, "profit": null, "bases": 17272, "companies": 3705}}