brk-client 0.1.0a6__py3-none-any.whl → 0.1.0b0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
brk_client/__init__.py
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# Auto-generated BRK Python client
|
|
2
2
|
# Do not edit manually
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from dataclasses import dataclass
|
|
4
6
|
from typing import TypeVar, Generic, Any, Optional, List, Literal, TypedDict, Union, Protocol, overload
|
|
5
7
|
from http.client import HTTPSConnection, HTTPConnection
|
|
6
8
|
from urllib.parse import urlparse
|
|
@@ -106,13 +108,13 @@ QuarterIndex = int
|
|
|
106
108
|
# Transaction locktime
|
|
107
109
|
RawLockTime = int
|
|
108
110
|
SemesterIndex = int
|
|
109
|
-
# Fixed-size boolean value optimized for on-disk storage (stored as
|
|
111
|
+
# Fixed-size boolean value optimized for on-disk storage (stored as u8)
|
|
110
112
|
StoredBool = int
|
|
111
113
|
# Stored 32-bit floating point value
|
|
112
114
|
StoredF32 = float
|
|
113
115
|
# Fixed-size 64-bit floating point value optimized for on-disk storage
|
|
114
116
|
StoredF64 = float
|
|
115
|
-
|
|
117
|
+
StoredI8 = int
|
|
116
118
|
StoredU16 = int
|
|
117
119
|
# Fixed-size 32-bit unsigned integer optimized for on-disk storage
|
|
118
120
|
StoredU32 = int
|
|
@@ -1039,11 +1041,14 @@ def _p(prefix: str, acc: str) -> str:
|
|
|
1039
1041
|
return f"{prefix}_{acc}" if acc else prefix
|
|
1040
1042
|
|
|
1041
1043
|
|
|
1042
|
-
|
|
1044
|
+
@dataclass
|
|
1045
|
+
class MetricData(Generic[T]):
|
|
1043
1046
|
"""Metric data with range information."""
|
|
1047
|
+
version: int
|
|
1044
1048
|
total: int
|
|
1045
1049
|
start: int
|
|
1046
1050
|
end: int
|
|
1051
|
+
stamp: str
|
|
1047
1052
|
data: List[T]
|
|
1048
1053
|
|
|
1049
1054
|
|
|
@@ -1082,8 +1087,9 @@ class _EndpointConfig:
|
|
|
1082
1087
|
p = self.path()
|
|
1083
1088
|
return f"{p}?{query}" if query else p
|
|
1084
1089
|
|
|
1085
|
-
def get_json(self) ->
|
|
1086
|
-
|
|
1090
|
+
def get_json(self) -> MetricData:
|
|
1091
|
+
data = self.client.get_json(self._build_path())
|
|
1092
|
+
return MetricData(**data)
|
|
1087
1093
|
|
|
1088
1094
|
def get_csv(self) -> str:
|
|
1089
1095
|
return self.client.get_text(self._build_path(format='csv'))
|
|
@@ -1286,7 +1292,7 @@ _i31 = ('loadedaddressindex',)
|
|
|
1286
1292
|
_i32 = ('emptyaddressindex',)
|
|
1287
1293
|
_i33 = ('pairoutputindex',)
|
|
1288
1294
|
|
|
1289
|
-
def _ep(c: BrkClientBase, n: str, i: Index) -> MetricEndpointBuilder:
|
|
1295
|
+
def _ep(c: BrkClientBase, n: str, i: Index) -> MetricEndpointBuilder[Any]:
|
|
1290
1296
|
return MetricEndpointBuilder(c, n, i)
|
|
1291
1297
|
|
|
1292
1298
|
# Index accessor classes
|
|
@@ -1304,6 +1310,7 @@ class _MetricPattern1By(Generic[T]):
|
|
|
1304
1310
|
def yearindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'yearindex')
|
|
1305
1311
|
|
|
1306
1312
|
class MetricPattern1(Generic[T]):
|
|
1313
|
+
by: _MetricPattern1By[T]
|
|
1307
1314
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern1By(c, n)
|
|
1308
1315
|
@property
|
|
1309
1316
|
def name(self) -> str: return self._n
|
|
@@ -1322,6 +1329,7 @@ class _MetricPattern2By(Generic[T]):
|
|
|
1322
1329
|
def yearindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'yearindex')
|
|
1323
1330
|
|
|
1324
1331
|
class MetricPattern2(Generic[T]):
|
|
1332
|
+
by: _MetricPattern2By[T]
|
|
1325
1333
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern2By(c, n)
|
|
1326
1334
|
@property
|
|
1327
1335
|
def name(self) -> str: return self._n
|
|
@@ -1340,6 +1348,7 @@ class _MetricPattern3By(Generic[T]):
|
|
|
1340
1348
|
def yearindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'yearindex')
|
|
1341
1349
|
|
|
1342
1350
|
class MetricPattern3(Generic[T]):
|
|
1351
|
+
by: _MetricPattern3By[T]
|
|
1343
1352
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern3By(c, n)
|
|
1344
1353
|
@property
|
|
1345
1354
|
def name(self) -> str: return self._n
|
|
@@ -1357,6 +1366,7 @@ class _MetricPattern4By(Generic[T]):
|
|
|
1357
1366
|
def yearindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'yearindex')
|
|
1358
1367
|
|
|
1359
1368
|
class MetricPattern4(Generic[T]):
|
|
1369
|
+
by: _MetricPattern4By[T]
|
|
1360
1370
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern4By(c, n)
|
|
1361
1371
|
@property
|
|
1362
1372
|
def name(self) -> str: return self._n
|
|
@@ -1369,6 +1379,7 @@ class _MetricPattern5By(Generic[T]):
|
|
|
1369
1379
|
def height(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'height')
|
|
1370
1380
|
|
|
1371
1381
|
class MetricPattern5(Generic[T]):
|
|
1382
|
+
by: _MetricPattern5By[T]
|
|
1372
1383
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern5By(c, n)
|
|
1373
1384
|
@property
|
|
1374
1385
|
def name(self) -> str: return self._n
|
|
@@ -1380,6 +1391,7 @@ class _MetricPattern6By(Generic[T]):
|
|
|
1380
1391
|
def dateindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'dateindex')
|
|
1381
1392
|
|
|
1382
1393
|
class MetricPattern6(Generic[T]):
|
|
1394
|
+
by: _MetricPattern6By[T]
|
|
1383
1395
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern6By(c, n)
|
|
1384
1396
|
@property
|
|
1385
1397
|
def name(self) -> str: return self._n
|
|
@@ -1391,6 +1403,7 @@ class _MetricPattern7By(Generic[T]):
|
|
|
1391
1403
|
def decadeindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'decadeindex')
|
|
1392
1404
|
|
|
1393
1405
|
class MetricPattern7(Generic[T]):
|
|
1406
|
+
by: _MetricPattern7By[T]
|
|
1394
1407
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern7By(c, n)
|
|
1395
1408
|
@property
|
|
1396
1409
|
def name(self) -> str: return self._n
|
|
@@ -1402,6 +1415,7 @@ class _MetricPattern8By(Generic[T]):
|
|
|
1402
1415
|
def difficultyepoch(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'difficultyepoch')
|
|
1403
1416
|
|
|
1404
1417
|
class MetricPattern8(Generic[T]):
|
|
1418
|
+
by: _MetricPattern8By[T]
|
|
1405
1419
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern8By(c, n)
|
|
1406
1420
|
@property
|
|
1407
1421
|
def name(self) -> str: return self._n
|
|
@@ -1413,6 +1427,7 @@ class _MetricPattern9By(Generic[T]):
|
|
|
1413
1427
|
def emptyoutputindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'emptyoutputindex')
|
|
1414
1428
|
|
|
1415
1429
|
class MetricPattern9(Generic[T]):
|
|
1430
|
+
by: _MetricPattern9By[T]
|
|
1416
1431
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern9By(c, n)
|
|
1417
1432
|
@property
|
|
1418
1433
|
def name(self) -> str: return self._n
|
|
@@ -1424,6 +1439,7 @@ class _MetricPattern10By(Generic[T]):
|
|
|
1424
1439
|
def halvingepoch(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'halvingepoch')
|
|
1425
1440
|
|
|
1426
1441
|
class MetricPattern10(Generic[T]):
|
|
1442
|
+
by: _MetricPattern10By[T]
|
|
1427
1443
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern10By(c, n)
|
|
1428
1444
|
@property
|
|
1429
1445
|
def name(self) -> str: return self._n
|
|
@@ -1435,6 +1451,7 @@ class _MetricPattern11By(Generic[T]):
|
|
|
1435
1451
|
def height(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'height')
|
|
1436
1452
|
|
|
1437
1453
|
class MetricPattern11(Generic[T]):
|
|
1454
|
+
by: _MetricPattern11By[T]
|
|
1438
1455
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern11By(c, n)
|
|
1439
1456
|
@property
|
|
1440
1457
|
def name(self) -> str: return self._n
|
|
@@ -1446,6 +1463,7 @@ class _MetricPattern12By(Generic[T]):
|
|
|
1446
1463
|
def txinindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'txinindex')
|
|
1447
1464
|
|
|
1448
1465
|
class MetricPattern12(Generic[T]):
|
|
1466
|
+
by: _MetricPattern12By[T]
|
|
1449
1467
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern12By(c, n)
|
|
1450
1468
|
@property
|
|
1451
1469
|
def name(self) -> str: return self._n
|
|
@@ -1457,6 +1475,7 @@ class _MetricPattern13By(Generic[T]):
|
|
|
1457
1475
|
def monthindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'monthindex')
|
|
1458
1476
|
|
|
1459
1477
|
class MetricPattern13(Generic[T]):
|
|
1478
|
+
by: _MetricPattern13By[T]
|
|
1460
1479
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern13By(c, n)
|
|
1461
1480
|
@property
|
|
1462
1481
|
def name(self) -> str: return self._n
|
|
@@ -1468,6 +1487,7 @@ class _MetricPattern14By(Generic[T]):
|
|
|
1468
1487
|
def opreturnindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'opreturnindex')
|
|
1469
1488
|
|
|
1470
1489
|
class MetricPattern14(Generic[T]):
|
|
1490
|
+
by: _MetricPattern14By[T]
|
|
1471
1491
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern14By(c, n)
|
|
1472
1492
|
@property
|
|
1473
1493
|
def name(self) -> str: return self._n
|
|
@@ -1479,6 +1499,7 @@ class _MetricPattern15By(Generic[T]):
|
|
|
1479
1499
|
def txoutindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'txoutindex')
|
|
1480
1500
|
|
|
1481
1501
|
class MetricPattern15(Generic[T]):
|
|
1502
|
+
by: _MetricPattern15By[T]
|
|
1482
1503
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern15By(c, n)
|
|
1483
1504
|
@property
|
|
1484
1505
|
def name(self) -> str: return self._n
|
|
@@ -1490,6 +1511,7 @@ class _MetricPattern16By(Generic[T]):
|
|
|
1490
1511
|
def p2aaddressindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'p2aaddressindex')
|
|
1491
1512
|
|
|
1492
1513
|
class MetricPattern16(Generic[T]):
|
|
1514
|
+
by: _MetricPattern16By[T]
|
|
1493
1515
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern16By(c, n)
|
|
1494
1516
|
@property
|
|
1495
1517
|
def name(self) -> str: return self._n
|
|
@@ -1501,6 +1523,7 @@ class _MetricPattern17By(Generic[T]):
|
|
|
1501
1523
|
def p2msoutputindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'p2msoutputindex')
|
|
1502
1524
|
|
|
1503
1525
|
class MetricPattern17(Generic[T]):
|
|
1526
|
+
by: _MetricPattern17By[T]
|
|
1504
1527
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern17By(c, n)
|
|
1505
1528
|
@property
|
|
1506
1529
|
def name(self) -> str: return self._n
|
|
@@ -1512,6 +1535,7 @@ class _MetricPattern18By(Generic[T]):
|
|
|
1512
1535
|
def p2pk33addressindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'p2pk33addressindex')
|
|
1513
1536
|
|
|
1514
1537
|
class MetricPattern18(Generic[T]):
|
|
1538
|
+
by: _MetricPattern18By[T]
|
|
1515
1539
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern18By(c, n)
|
|
1516
1540
|
@property
|
|
1517
1541
|
def name(self) -> str: return self._n
|
|
@@ -1523,6 +1547,7 @@ class _MetricPattern19By(Generic[T]):
|
|
|
1523
1547
|
def p2pk65addressindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'p2pk65addressindex')
|
|
1524
1548
|
|
|
1525
1549
|
class MetricPattern19(Generic[T]):
|
|
1550
|
+
by: _MetricPattern19By[T]
|
|
1526
1551
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern19By(c, n)
|
|
1527
1552
|
@property
|
|
1528
1553
|
def name(self) -> str: return self._n
|
|
@@ -1534,6 +1559,7 @@ class _MetricPattern20By(Generic[T]):
|
|
|
1534
1559
|
def p2pkhaddressindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'p2pkhaddressindex')
|
|
1535
1560
|
|
|
1536
1561
|
class MetricPattern20(Generic[T]):
|
|
1562
|
+
by: _MetricPattern20By[T]
|
|
1537
1563
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern20By(c, n)
|
|
1538
1564
|
@property
|
|
1539
1565
|
def name(self) -> str: return self._n
|
|
@@ -1545,6 +1571,7 @@ class _MetricPattern21By(Generic[T]):
|
|
|
1545
1571
|
def p2shaddressindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'p2shaddressindex')
|
|
1546
1572
|
|
|
1547
1573
|
class MetricPattern21(Generic[T]):
|
|
1574
|
+
by: _MetricPattern21By[T]
|
|
1548
1575
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern21By(c, n)
|
|
1549
1576
|
@property
|
|
1550
1577
|
def name(self) -> str: return self._n
|
|
@@ -1556,6 +1583,7 @@ class _MetricPattern22By(Generic[T]):
|
|
|
1556
1583
|
def p2traddressindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'p2traddressindex')
|
|
1557
1584
|
|
|
1558
1585
|
class MetricPattern22(Generic[T]):
|
|
1586
|
+
by: _MetricPattern22By[T]
|
|
1559
1587
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern22By(c, n)
|
|
1560
1588
|
@property
|
|
1561
1589
|
def name(self) -> str: return self._n
|
|
@@ -1567,6 +1595,7 @@ class _MetricPattern23By(Generic[T]):
|
|
|
1567
1595
|
def p2wpkhaddressindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'p2wpkhaddressindex')
|
|
1568
1596
|
|
|
1569
1597
|
class MetricPattern23(Generic[T]):
|
|
1598
|
+
by: _MetricPattern23By[T]
|
|
1570
1599
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern23By(c, n)
|
|
1571
1600
|
@property
|
|
1572
1601
|
def name(self) -> str: return self._n
|
|
@@ -1578,6 +1607,7 @@ class _MetricPattern24By(Generic[T]):
|
|
|
1578
1607
|
def p2wshaddressindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'p2wshaddressindex')
|
|
1579
1608
|
|
|
1580
1609
|
class MetricPattern24(Generic[T]):
|
|
1610
|
+
by: _MetricPattern24By[T]
|
|
1581
1611
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern24By(c, n)
|
|
1582
1612
|
@property
|
|
1583
1613
|
def name(self) -> str: return self._n
|
|
@@ -1589,6 +1619,7 @@ class _MetricPattern25By(Generic[T]):
|
|
|
1589
1619
|
def quarterindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'quarterindex')
|
|
1590
1620
|
|
|
1591
1621
|
class MetricPattern25(Generic[T]):
|
|
1622
|
+
by: _MetricPattern25By[T]
|
|
1592
1623
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern25By(c, n)
|
|
1593
1624
|
@property
|
|
1594
1625
|
def name(self) -> str: return self._n
|
|
@@ -1600,6 +1631,7 @@ class _MetricPattern26By(Generic[T]):
|
|
|
1600
1631
|
def semesterindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'semesterindex')
|
|
1601
1632
|
|
|
1602
1633
|
class MetricPattern26(Generic[T]):
|
|
1634
|
+
by: _MetricPattern26By[T]
|
|
1603
1635
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern26By(c, n)
|
|
1604
1636
|
@property
|
|
1605
1637
|
def name(self) -> str: return self._n
|
|
@@ -1611,6 +1643,7 @@ class _MetricPattern27By(Generic[T]):
|
|
|
1611
1643
|
def txindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'txindex')
|
|
1612
1644
|
|
|
1613
1645
|
class MetricPattern27(Generic[T]):
|
|
1646
|
+
by: _MetricPattern27By[T]
|
|
1614
1647
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern27By(c, n)
|
|
1615
1648
|
@property
|
|
1616
1649
|
def name(self) -> str: return self._n
|
|
@@ -1622,6 +1655,7 @@ class _MetricPattern28By(Generic[T]):
|
|
|
1622
1655
|
def unknownoutputindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'unknownoutputindex')
|
|
1623
1656
|
|
|
1624
1657
|
class MetricPattern28(Generic[T]):
|
|
1658
|
+
by: _MetricPattern28By[T]
|
|
1625
1659
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern28By(c, n)
|
|
1626
1660
|
@property
|
|
1627
1661
|
def name(self) -> str: return self._n
|
|
@@ -1633,6 +1667,7 @@ class _MetricPattern29By(Generic[T]):
|
|
|
1633
1667
|
def weekindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'weekindex')
|
|
1634
1668
|
|
|
1635
1669
|
class MetricPattern29(Generic[T]):
|
|
1670
|
+
by: _MetricPattern29By[T]
|
|
1636
1671
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern29By(c, n)
|
|
1637
1672
|
@property
|
|
1638
1673
|
def name(self) -> str: return self._n
|
|
@@ -1644,6 +1679,7 @@ class _MetricPattern30By(Generic[T]):
|
|
|
1644
1679
|
def yearindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'yearindex')
|
|
1645
1680
|
|
|
1646
1681
|
class MetricPattern30(Generic[T]):
|
|
1682
|
+
by: _MetricPattern30By[T]
|
|
1647
1683
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern30By(c, n)
|
|
1648
1684
|
@property
|
|
1649
1685
|
def name(self) -> str: return self._n
|
|
@@ -1655,6 +1691,7 @@ class _MetricPattern31By(Generic[T]):
|
|
|
1655
1691
|
def loadedaddressindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'loadedaddressindex')
|
|
1656
1692
|
|
|
1657
1693
|
class MetricPattern31(Generic[T]):
|
|
1694
|
+
by: _MetricPattern31By[T]
|
|
1658
1695
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern31By(c, n)
|
|
1659
1696
|
@property
|
|
1660
1697
|
def name(self) -> str: return self._n
|
|
@@ -1666,6 +1703,7 @@ class _MetricPattern32By(Generic[T]):
|
|
|
1666
1703
|
def emptyaddressindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'emptyaddressindex')
|
|
1667
1704
|
|
|
1668
1705
|
class MetricPattern32(Generic[T]):
|
|
1706
|
+
by: _MetricPattern32By[T]
|
|
1669
1707
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern32By(c, n)
|
|
1670
1708
|
@property
|
|
1671
1709
|
def name(self) -> str: return self._n
|
|
@@ -1677,6 +1715,7 @@ class _MetricPattern33By(Generic[T]):
|
|
|
1677
1715
|
def pairoutputindex(self) -> MetricEndpointBuilder[T]: return _ep(self._c, self._n, 'pairoutputindex')
|
|
1678
1716
|
|
|
1679
1717
|
class MetricPattern33(Generic[T]):
|
|
1718
|
+
by: _MetricPattern33By[T]
|
|
1680
1719
|
def __init__(self, c: BrkClientBase, n: str): self._n, self.by = n, _MetricPattern33By(c, n)
|
|
1681
1720
|
@property
|
|
1682
1721
|
def name(self) -> str: return self._n
|
|
@@ -1883,31 +1922,6 @@ class Price111dSmaPattern:
|
|
|
1883
1922
|
self.ratio_pct99_usd: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'ratio_pct99_usd'))
|
|
1884
1923
|
self.ratio_sd: Ratio1ySdPattern = Ratio1ySdPattern(client, _m(acc, 'ratio'))
|
|
1885
1924
|
|
|
1886
|
-
class PercentilesPattern:
|
|
1887
|
-
"""Pattern struct for repeated tree structure."""
|
|
1888
|
-
|
|
1889
|
-
def __init__(self, client: BrkClientBase, acc: str):
|
|
1890
|
-
"""Create pattern node with accumulated metric name."""
|
|
1891
|
-
self.pct05: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct05'))
|
|
1892
|
-
self.pct10: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct10'))
|
|
1893
|
-
self.pct15: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct15'))
|
|
1894
|
-
self.pct20: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct20'))
|
|
1895
|
-
self.pct25: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct25'))
|
|
1896
|
-
self.pct30: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct30'))
|
|
1897
|
-
self.pct35: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct35'))
|
|
1898
|
-
self.pct40: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct40'))
|
|
1899
|
-
self.pct45: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct45'))
|
|
1900
|
-
self.pct50: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct50'))
|
|
1901
|
-
self.pct55: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct55'))
|
|
1902
|
-
self.pct60: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct60'))
|
|
1903
|
-
self.pct65: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct65'))
|
|
1904
|
-
self.pct70: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct70'))
|
|
1905
|
-
self.pct75: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct75'))
|
|
1906
|
-
self.pct80: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct80'))
|
|
1907
|
-
self.pct85: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct85'))
|
|
1908
|
-
self.pct90: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct90'))
|
|
1909
|
-
self.pct95: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct95'))
|
|
1910
|
-
|
|
1911
1925
|
class ActivePriceRatioPattern:
|
|
1912
1926
|
"""Pattern struct for repeated tree structure."""
|
|
1913
1927
|
|
|
@@ -1933,6 +1947,31 @@ class ActivePriceRatioPattern:
|
|
|
1933
1947
|
self.ratio_pct99_usd: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct99_usd'))
|
|
1934
1948
|
self.ratio_sd: Ratio1ySdPattern = Ratio1ySdPattern(client, acc)
|
|
1935
1949
|
|
|
1950
|
+
class PercentilesPattern:
|
|
1951
|
+
"""Pattern struct for repeated tree structure."""
|
|
1952
|
+
|
|
1953
|
+
def __init__(self, client: BrkClientBase, acc: str):
|
|
1954
|
+
"""Create pattern node with accumulated metric name."""
|
|
1955
|
+
self.pct05: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct05'))
|
|
1956
|
+
self.pct10: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct10'))
|
|
1957
|
+
self.pct15: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct15'))
|
|
1958
|
+
self.pct20: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct20'))
|
|
1959
|
+
self.pct25: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct25'))
|
|
1960
|
+
self.pct30: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct30'))
|
|
1961
|
+
self.pct35: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct35'))
|
|
1962
|
+
self.pct40: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct40'))
|
|
1963
|
+
self.pct45: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct45'))
|
|
1964
|
+
self.pct50: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct50'))
|
|
1965
|
+
self.pct55: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct55'))
|
|
1966
|
+
self.pct60: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct60'))
|
|
1967
|
+
self.pct65: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct65'))
|
|
1968
|
+
self.pct70: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct70'))
|
|
1969
|
+
self.pct75: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct75'))
|
|
1970
|
+
self.pct80: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct80'))
|
|
1971
|
+
self.pct85: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct85'))
|
|
1972
|
+
self.pct90: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct90'))
|
|
1973
|
+
self.pct95: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'pct95'))
|
|
1974
|
+
|
|
1936
1975
|
class RelativePattern5:
|
|
1937
1976
|
"""Pattern struct for repeated tree structure."""
|
|
1938
1977
|
|
|
@@ -1971,6 +2010,7 @@ class AaopoolPattern:
|
|
|
1971
2010
|
self._24h_blocks_mined: MetricPattern1[StoredU32] = MetricPattern1(client, _m(acc, '24h_blocks_mined'))
|
|
1972
2011
|
self._24h_dominance: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, '24h_dominance'))
|
|
1973
2012
|
self.blocks_mined: BlockCountPattern[StoredU32] = BlockCountPattern(client, _m(acc, 'blocks_mined'))
|
|
2013
|
+
self.blocks_since_block: MetricPattern1[StoredU32] = MetricPattern1(client, _m(acc, 'blocks_since_block'))
|
|
1974
2014
|
self.coinbase: CoinbasePattern2 = CoinbasePattern2(client, _m(acc, 'coinbase'))
|
|
1975
2015
|
self.days_since_block: MetricPattern4[StoredU16] = MetricPattern4(client, _m(acc, 'days_since_block'))
|
|
1976
2016
|
self.dominance: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'dominance'))
|
|
@@ -2032,6 +2072,24 @@ class PeriodAveragePricePattern(Generic[T]):
|
|
|
2032
2072
|
self._6y: MetricPattern4[T] = MetricPattern4(client, _p('6y', acc))
|
|
2033
2073
|
self._8y: MetricPattern4[T] = MetricPattern4(client, _p('8y', acc))
|
|
2034
2074
|
|
|
2075
|
+
class ClassAveragePricePattern(Generic[T]):
|
|
2076
|
+
"""Pattern struct for repeated tree structure."""
|
|
2077
|
+
|
|
2078
|
+
def __init__(self, client: BrkClientBase, acc: str):
|
|
2079
|
+
"""Create pattern node with accumulated metric name."""
|
|
2080
|
+
self._2015: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2015_average_price'))
|
|
2081
|
+
self._2016: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2016_average_price'))
|
|
2082
|
+
self._2017: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2017_average_price'))
|
|
2083
|
+
self._2018: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2018_average_price'))
|
|
2084
|
+
self._2019: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2019_average_price'))
|
|
2085
|
+
self._2020: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2020_average_price'))
|
|
2086
|
+
self._2021: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2021_average_price'))
|
|
2087
|
+
self._2022: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2022_average_price'))
|
|
2088
|
+
self._2023: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2023_average_price'))
|
|
2089
|
+
self._2024: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2024_average_price'))
|
|
2090
|
+
self._2025: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2025_average_price'))
|
|
2091
|
+
self._2026: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2026_average_price'))
|
|
2092
|
+
|
|
2035
2093
|
class BitcoinPattern:
|
|
2036
2094
|
"""Pattern struct for repeated tree structure."""
|
|
2037
2095
|
|
|
@@ -2066,22 +2124,21 @@ class DollarsPattern(Generic[T]):
|
|
|
2066
2124
|
self.pct90: MetricPattern6[T] = MetricPattern6(client, _m(acc, 'pct90'))
|
|
2067
2125
|
self.sum: MetricPattern2[T] = MetricPattern2(client, _m(acc, 'sum'))
|
|
2068
2126
|
|
|
2069
|
-
class
|
|
2127
|
+
class RelativePattern2:
|
|
2070
2128
|
"""Pattern struct for repeated tree structure."""
|
|
2071
2129
|
|
|
2072
2130
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2073
2131
|
"""Create pattern node with accumulated metric name."""
|
|
2074
|
-
self.
|
|
2075
|
-
self.
|
|
2076
|
-
self.
|
|
2077
|
-
self.
|
|
2078
|
-
self.
|
|
2079
|
-
self.
|
|
2080
|
-
self.
|
|
2081
|
-
self.
|
|
2082
|
-
self.
|
|
2083
|
-
self.
|
|
2084
|
-
self._2025: MetricPattern4[T] = MetricPattern4(client, _m(acc, '2025_returns'))
|
|
2132
|
+
self.neg_unrealized_loss_rel_to_own_market_cap: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'neg_unrealized_loss_rel_to_own_market_cap'))
|
|
2133
|
+
self.neg_unrealized_loss_rel_to_own_total_unrealized_pnl: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'neg_unrealized_loss_rel_to_own_total_unrealized_pnl'))
|
|
2134
|
+
self.net_unrealized_pnl_rel_to_own_market_cap: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'net_unrealized_pnl_rel_to_own_market_cap'))
|
|
2135
|
+
self.net_unrealized_pnl_rel_to_own_total_unrealized_pnl: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'net_unrealized_pnl_rel_to_own_total_unrealized_pnl'))
|
|
2136
|
+
self.supply_in_loss_rel_to_own_supply: MetricPattern1[StoredF64] = MetricPattern1(client, _m(acc, 'supply_in_loss_rel_to_own_supply'))
|
|
2137
|
+
self.supply_in_profit_rel_to_own_supply: MetricPattern1[StoredF64] = MetricPattern1(client, _m(acc, 'supply_in_profit_rel_to_own_supply'))
|
|
2138
|
+
self.unrealized_loss_rel_to_own_market_cap: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'unrealized_loss_rel_to_own_market_cap'))
|
|
2139
|
+
self.unrealized_loss_rel_to_own_total_unrealized_pnl: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'unrealized_loss_rel_to_own_total_unrealized_pnl'))
|
|
2140
|
+
self.unrealized_profit_rel_to_own_market_cap: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'unrealized_profit_rel_to_own_market_cap'))
|
|
2141
|
+
self.unrealized_profit_rel_to_own_total_unrealized_pnl: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'unrealized_profit_rel_to_own_total_unrealized_pnl'))
|
|
2085
2142
|
|
|
2086
2143
|
class RelativePattern:
|
|
2087
2144
|
"""Pattern struct for repeated tree structure."""
|
|
@@ -2099,22 +2156,6 @@ class RelativePattern:
|
|
|
2099
2156
|
self.unrealized_loss_rel_to_market_cap: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'unrealized_loss_rel_to_market_cap'))
|
|
2100
2157
|
self.unrealized_profit_rel_to_market_cap: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'unrealized_profit_rel_to_market_cap'))
|
|
2101
2158
|
|
|
2102
|
-
class RelativePattern2:
|
|
2103
|
-
"""Pattern struct for repeated tree structure."""
|
|
2104
|
-
|
|
2105
|
-
def __init__(self, client: BrkClientBase, acc: str):
|
|
2106
|
-
"""Create pattern node with accumulated metric name."""
|
|
2107
|
-
self.neg_unrealized_loss_rel_to_own_market_cap: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'neg_unrealized_loss_rel_to_own_market_cap'))
|
|
2108
|
-
self.neg_unrealized_loss_rel_to_own_total_unrealized_pnl: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'neg_unrealized_loss_rel_to_own_total_unrealized_pnl'))
|
|
2109
|
-
self.net_unrealized_pnl_rel_to_own_market_cap: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'net_unrealized_pnl_rel_to_own_market_cap'))
|
|
2110
|
-
self.net_unrealized_pnl_rel_to_own_total_unrealized_pnl: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'net_unrealized_pnl_rel_to_own_total_unrealized_pnl'))
|
|
2111
|
-
self.supply_in_loss_rel_to_own_supply: MetricPattern1[StoredF64] = MetricPattern1(client, _m(acc, 'supply_in_loss_rel_to_own_supply'))
|
|
2112
|
-
self.supply_in_profit_rel_to_own_supply: MetricPattern1[StoredF64] = MetricPattern1(client, _m(acc, 'supply_in_profit_rel_to_own_supply'))
|
|
2113
|
-
self.unrealized_loss_rel_to_own_market_cap: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'unrealized_loss_rel_to_own_market_cap'))
|
|
2114
|
-
self.unrealized_loss_rel_to_own_total_unrealized_pnl: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'unrealized_loss_rel_to_own_total_unrealized_pnl'))
|
|
2115
|
-
self.unrealized_profit_rel_to_own_market_cap: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'unrealized_profit_rel_to_own_market_cap'))
|
|
2116
|
-
self.unrealized_profit_rel_to_own_total_unrealized_pnl: MetricPattern1[StoredF32] = MetricPattern1(client, _m(acc, 'unrealized_profit_rel_to_own_total_unrealized_pnl'))
|
|
2117
|
-
|
|
2118
2159
|
class CountPattern2(Generic[T]):
|
|
2119
2160
|
"""Pattern struct for repeated tree structure."""
|
|
2120
2161
|
|
|
@@ -2204,18 +2245,31 @@ class PhaseDailyCentsPattern(Generic[T]):
|
|
|
2204
2245
|
self.pct75: MetricPattern6[T] = MetricPattern6(client, _m(acc, 'pct75'))
|
|
2205
2246
|
self.pct90: MetricPattern6[T] = MetricPattern6(client, _m(acc, 'pct90'))
|
|
2206
2247
|
|
|
2207
|
-
class
|
|
2248
|
+
class _10yTo12yPattern:
|
|
2208
2249
|
"""Pattern struct for repeated tree structure."""
|
|
2209
2250
|
|
|
2210
2251
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2211
2252
|
"""Create pattern node with accumulated metric name."""
|
|
2212
|
-
self.
|
|
2213
|
-
self.
|
|
2214
|
-
self.
|
|
2215
|
-
self.
|
|
2216
|
-
self.
|
|
2217
|
-
self.
|
|
2218
|
-
self.
|
|
2253
|
+
self.activity: ActivityPattern2 = ActivityPattern2(client, acc)
|
|
2254
|
+
self.cost_basis: CostBasisPattern2 = CostBasisPattern2(client, acc)
|
|
2255
|
+
self.outputs: OutputsPattern = OutputsPattern(client, _m(acc, 'utxo_count'))
|
|
2256
|
+
self.realized: RealizedPattern2 = RealizedPattern2(client, acc)
|
|
2257
|
+
self.relative: RelativePattern2 = RelativePattern2(client, acc)
|
|
2258
|
+
self.supply: SupplyPattern2 = SupplyPattern2(client, _m(acc, 'supply'))
|
|
2259
|
+
self.unrealized: UnrealizedPattern = UnrealizedPattern(client, acc)
|
|
2260
|
+
|
|
2261
|
+
class UnrealizedPattern:
|
|
2262
|
+
"""Pattern struct for repeated tree structure."""
|
|
2263
|
+
|
|
2264
|
+
def __init__(self, client: BrkClientBase, acc: str):
|
|
2265
|
+
"""Create pattern node with accumulated metric name."""
|
|
2266
|
+
self.neg_unrealized_loss: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'neg_unrealized_loss'))
|
|
2267
|
+
self.net_unrealized_pnl: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'net_unrealized_pnl'))
|
|
2268
|
+
self.supply_in_loss: ActiveSupplyPattern = ActiveSupplyPattern(client, _m(acc, 'supply_in_loss'))
|
|
2269
|
+
self.supply_in_profit: ActiveSupplyPattern = ActiveSupplyPattern(client, _m(acc, 'supply_in_profit'))
|
|
2270
|
+
self.total_unrealized_pnl: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'total_unrealized_pnl'))
|
|
2271
|
+
self.unrealized_loss: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'unrealized_loss'))
|
|
2272
|
+
self.unrealized_profit: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'unrealized_profit'))
|
|
2219
2273
|
|
|
2220
2274
|
class _0satsPattern2:
|
|
2221
2275
|
"""Pattern struct for repeated tree structure."""
|
|
@@ -2230,29 +2284,29 @@ class _0satsPattern2:
|
|
|
2230
2284
|
self.supply: SupplyPattern2 = SupplyPattern2(client, _m(acc, 'supply'))
|
|
2231
2285
|
self.unrealized: UnrealizedPattern = UnrealizedPattern(client, acc)
|
|
2232
2286
|
|
|
2233
|
-
class
|
|
2287
|
+
class PeriodCagrPattern:
|
|
2234
2288
|
"""Pattern struct for repeated tree structure."""
|
|
2235
2289
|
|
|
2236
2290
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2237
2291
|
"""Create pattern node with accumulated metric name."""
|
|
2238
|
-
self.
|
|
2239
|
-
self.
|
|
2240
|
-
self.
|
|
2241
|
-
self.
|
|
2242
|
-
self.
|
|
2243
|
-
self.
|
|
2244
|
-
self.
|
|
2292
|
+
self._10y: MetricPattern4[StoredF32] = MetricPattern4(client, _p('10y', acc))
|
|
2293
|
+
self._2y: MetricPattern4[StoredF32] = MetricPattern4(client, _p('2y', acc))
|
|
2294
|
+
self._3y: MetricPattern4[StoredF32] = MetricPattern4(client, _p('3y', acc))
|
|
2295
|
+
self._4y: MetricPattern4[StoredF32] = MetricPattern4(client, _p('4y', acc))
|
|
2296
|
+
self._5y: MetricPattern4[StoredF32] = MetricPattern4(client, _p('5y', acc))
|
|
2297
|
+
self._6y: MetricPattern4[StoredF32] = MetricPattern4(client, _p('6y', acc))
|
|
2298
|
+
self._8y: MetricPattern4[StoredF32] = MetricPattern4(client, _p('8y', acc))
|
|
2245
2299
|
|
|
2246
|
-
class
|
|
2300
|
+
class _10yPattern:
|
|
2247
2301
|
"""Pattern struct for repeated tree structure."""
|
|
2248
2302
|
|
|
2249
2303
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2250
2304
|
"""Create pattern node with accumulated metric name."""
|
|
2251
2305
|
self.activity: ActivityPattern2 = ActivityPattern2(client, acc)
|
|
2252
|
-
self.cost_basis:
|
|
2306
|
+
self.cost_basis: CostBasisPattern = CostBasisPattern(client, acc)
|
|
2253
2307
|
self.outputs: OutputsPattern = OutputsPattern(client, _m(acc, 'utxo_count'))
|
|
2254
|
-
self.realized:
|
|
2255
|
-
self.relative:
|
|
2308
|
+
self.realized: RealizedPattern4 = RealizedPattern4(client, acc)
|
|
2309
|
+
self.relative: RelativePattern = RelativePattern(client, acc)
|
|
2256
2310
|
self.supply: SupplyPattern2 = SupplyPattern2(client, _m(acc, 'supply'))
|
|
2257
2311
|
self.unrealized: UnrealizedPattern = UnrealizedPattern(client, acc)
|
|
2258
2312
|
|
|
@@ -2269,19 +2323,6 @@ class _100btcPattern:
|
|
|
2269
2323
|
self.supply: SupplyPattern2 = SupplyPattern2(client, _m(acc, 'supply'))
|
|
2270
2324
|
self.unrealized: UnrealizedPattern = UnrealizedPattern(client, acc)
|
|
2271
2325
|
|
|
2272
|
-
class UnrealizedPattern:
|
|
2273
|
-
"""Pattern struct for repeated tree structure."""
|
|
2274
|
-
|
|
2275
|
-
def __init__(self, client: BrkClientBase, acc: str):
|
|
2276
|
-
"""Create pattern node with accumulated metric name."""
|
|
2277
|
-
self.neg_unrealized_loss: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'neg_unrealized_loss'))
|
|
2278
|
-
self.net_unrealized_pnl: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'net_unrealized_pnl'))
|
|
2279
|
-
self.supply_in_loss: ActiveSupplyPattern = ActiveSupplyPattern(client, _m(acc, 'supply_in_loss'))
|
|
2280
|
-
self.supply_in_profit: ActiveSupplyPattern = ActiveSupplyPattern(client, _m(acc, 'supply_in_profit'))
|
|
2281
|
-
self.total_unrealized_pnl: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'total_unrealized_pnl'))
|
|
2282
|
-
self.unrealized_loss: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'unrealized_loss'))
|
|
2283
|
-
self.unrealized_profit: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'unrealized_profit'))
|
|
2284
|
-
|
|
2285
2326
|
class ActivityPattern2:
|
|
2286
2327
|
"""Pattern struct for repeated tree structure."""
|
|
2287
2328
|
|
|
@@ -2303,14 +2344,14 @@ class SplitPattern2(Generic[T]):
|
|
|
2303
2344
|
self.low: MetricPattern1[T] = MetricPattern1(client, _m(acc, 'low'))
|
|
2304
2345
|
self.open: MetricPattern1[T] = MetricPattern1(client, _m(acc, 'open'))
|
|
2305
2346
|
|
|
2306
|
-
class
|
|
2347
|
+
class UnclaimedRewardsPattern:
|
|
2307
2348
|
"""Pattern struct for repeated tree structure."""
|
|
2308
2349
|
|
|
2309
2350
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2310
2351
|
"""Create pattern node with accumulated metric name."""
|
|
2311
|
-
self.
|
|
2312
|
-
self.
|
|
2313
|
-
self.
|
|
2352
|
+
self.bitcoin: BitcoinPattern2[Bitcoin] = BitcoinPattern2(client, _m(acc, 'btc'))
|
|
2353
|
+
self.dollars: BlockCountPattern[Dollars] = BlockCountPattern(client, _m(acc, 'usd'))
|
|
2354
|
+
self.sats: BlockCountPattern[Sats] = BlockCountPattern(client, acc)
|
|
2314
2355
|
|
|
2315
2356
|
class CoinbasePattern:
|
|
2316
2357
|
"""Pattern struct for repeated tree structure."""
|
|
@@ -2321,32 +2362,32 @@ class CoinbasePattern:
|
|
|
2321
2362
|
self.dollars: DollarsPattern[Dollars] = DollarsPattern(client, _m(acc, 'usd'))
|
|
2322
2363
|
self.sats: DollarsPattern[Sats] = DollarsPattern(client, acc)
|
|
2323
2364
|
|
|
2324
|
-
class
|
|
2365
|
+
class SegwitAdoptionPattern:
|
|
2325
2366
|
"""Pattern struct for repeated tree structure."""
|
|
2326
2367
|
|
|
2327
2368
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2328
2369
|
"""Create pattern node with accumulated metric name."""
|
|
2329
|
-
self.
|
|
2330
|
-
self.
|
|
2331
|
-
self.
|
|
2370
|
+
self.base: MetricPattern11[StoredF32] = MetricPattern11(client, acc)
|
|
2371
|
+
self.cumulative: MetricPattern2[StoredF32] = MetricPattern2(client, _m(acc, 'cumulative'))
|
|
2372
|
+
self.sum: MetricPattern2[StoredF32] = MetricPattern2(client, _m(acc, 'sum'))
|
|
2332
2373
|
|
|
2333
|
-
class
|
|
2374
|
+
class CostBasisPattern2:
|
|
2334
2375
|
"""Pattern struct for repeated tree structure."""
|
|
2335
2376
|
|
|
2336
2377
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2337
2378
|
"""Create pattern node with accumulated metric name."""
|
|
2338
|
-
self.
|
|
2339
|
-
self.
|
|
2340
|
-
self.
|
|
2379
|
+
self.max: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'max_cost_basis'))
|
|
2380
|
+
self.min: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'min_cost_basis'))
|
|
2381
|
+
self.percentiles: PercentilesPattern = PercentilesPattern(client, _m(acc, 'cost_basis'))
|
|
2341
2382
|
|
|
2342
|
-
class
|
|
2383
|
+
class ActiveSupplyPattern:
|
|
2343
2384
|
"""Pattern struct for repeated tree structure."""
|
|
2344
2385
|
|
|
2345
2386
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2346
2387
|
"""Create pattern node with accumulated metric name."""
|
|
2347
|
-
self.bitcoin:
|
|
2348
|
-
self.dollars:
|
|
2349
|
-
self.sats:
|
|
2388
|
+
self.bitcoin: MetricPattern1[Bitcoin] = MetricPattern1(client, _m(acc, 'btc'))
|
|
2389
|
+
self.dollars: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'usd'))
|
|
2390
|
+
self.sats: MetricPattern1[Sats] = MetricPattern1(client, acc)
|
|
2350
2391
|
|
|
2351
2392
|
class _2015Pattern:
|
|
2352
2393
|
"""Pattern struct for repeated tree structure."""
|
|
@@ -2357,14 +2398,14 @@ class _2015Pattern:
|
|
|
2357
2398
|
self.dollars: MetricPattern4[Dollars] = MetricPattern4(client, _m(acc, 'usd'))
|
|
2358
2399
|
self.sats: MetricPattern4[Sats] = MetricPattern4(client, acc)
|
|
2359
2400
|
|
|
2360
|
-
class
|
|
2401
|
+
class CoinbasePattern2:
|
|
2361
2402
|
"""Pattern struct for repeated tree structure."""
|
|
2362
2403
|
|
|
2363
2404
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2364
2405
|
"""Create pattern node with accumulated metric name."""
|
|
2365
|
-
self.
|
|
2366
|
-
self.
|
|
2367
|
-
self.
|
|
2406
|
+
self.bitcoin: BlockCountPattern[Bitcoin] = BlockCountPattern(client, _m(acc, 'btc'))
|
|
2407
|
+
self.dollars: BlockCountPattern[Dollars] = BlockCountPattern(client, _m(acc, 'usd'))
|
|
2408
|
+
self.sats: BlockCountPattern[Sats] = BlockCountPattern(client, acc)
|
|
2368
2409
|
|
|
2369
2410
|
class _1dReturns1mSdPattern:
|
|
2370
2411
|
"""Pattern struct for repeated tree structure."""
|
|
@@ -2382,21 +2423,21 @@ class CostBasisPattern:
|
|
|
2382
2423
|
self.max: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'max_cost_basis'))
|
|
2383
2424
|
self.min: MetricPattern1[Dollars] = MetricPattern1(client, _m(acc, 'min_cost_basis'))
|
|
2384
2425
|
|
|
2385
|
-
class
|
|
2426
|
+
class SupplyPattern2:
|
|
2386
2427
|
"""Pattern struct for repeated tree structure."""
|
|
2387
2428
|
|
|
2388
2429
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2389
2430
|
"""Create pattern node with accumulated metric name."""
|
|
2390
|
-
self.
|
|
2391
|
-
self.
|
|
2431
|
+
self.halved: ActiveSupplyPattern = ActiveSupplyPattern(client, _m(acc, 'halved'))
|
|
2432
|
+
self.total: ActiveSupplyPattern = ActiveSupplyPattern(client, acc)
|
|
2392
2433
|
|
|
2393
|
-
class
|
|
2434
|
+
class RelativePattern4:
|
|
2394
2435
|
"""Pattern struct for repeated tree structure."""
|
|
2395
2436
|
|
|
2396
2437
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2397
2438
|
"""Create pattern node with accumulated metric name."""
|
|
2398
|
-
self.
|
|
2399
|
-
self.
|
|
2439
|
+
self.supply_in_loss_rel_to_own_supply: MetricPattern1[StoredF64] = MetricPattern1(client, _m(acc, 'loss_rel_to_own_supply'))
|
|
2440
|
+
self.supply_in_profit_rel_to_own_supply: MetricPattern1[StoredF64] = MetricPattern1(client, _m(acc, 'profit_rel_to_own_supply'))
|
|
2400
2441
|
|
|
2401
2442
|
class BitcoinPattern2(Generic[T]):
|
|
2402
2443
|
"""Pattern struct for repeated tree structure."""
|
|
@@ -2411,8 +2452,8 @@ class SatsPattern(Generic[T]):
|
|
|
2411
2452
|
|
|
2412
2453
|
def __init__(self, client: BrkClientBase, acc: str):
|
|
2413
2454
|
"""Create pattern node with accumulated metric name."""
|
|
2414
|
-
self.ohlc: MetricPattern1[T] = MetricPattern1(client, _m(acc, '
|
|
2415
|
-
self.split: SplitPattern2[T] = SplitPattern2(client,
|
|
2455
|
+
self.ohlc: MetricPattern1[T] = MetricPattern1(client, _m(acc, 'ohlc'))
|
|
2456
|
+
self.split: SplitPattern2[T] = SplitPattern2(client, acc)
|
|
2416
2457
|
|
|
2417
2458
|
class BlockCountPattern(Generic[T]):
|
|
2418
2459
|
"""Pattern struct for repeated tree structure."""
|
|
@@ -2615,6 +2656,14 @@ class MetricsTree_Cointime_Pricing:
|
|
|
2615
2656
|
self.vaulted_price: MetricPattern1[Dollars] = MetricPattern1(client, 'vaulted_price')
|
|
2616
2657
|
self.vaulted_price_ratio: ActivePriceRatioPattern = ActivePriceRatioPattern(client, 'vaulted_price_ratio')
|
|
2617
2658
|
|
|
2659
|
+
class MetricsTree_Cointime_ReserveRisk:
|
|
2660
|
+
"""Metrics tree node."""
|
|
2661
|
+
|
|
2662
|
+
def __init__(self, client: BrkClientBase, base_path: str = ''):
|
|
2663
|
+
self.hodl_bank: MetricPattern6[StoredF64] = MetricPattern6(client, 'hodl_bank')
|
|
2664
|
+
self.reserve_risk: MetricPattern4[StoredF64] = MetricPattern4(client, 'reserve_risk')
|
|
2665
|
+
self.vocdd_365d_sma: MetricPattern6[StoredF64] = MetricPattern6(client, 'vocdd_365d_sma')
|
|
2666
|
+
|
|
2618
2667
|
class MetricsTree_Cointime_Supply:
|
|
2619
2668
|
"""Metrics tree node."""
|
|
2620
2669
|
|
|
@@ -2629,6 +2678,7 @@ class MetricsTree_Cointime_Value:
|
|
|
2629
2678
|
self.cointime_value_created: BlockCountPattern[StoredF64] = BlockCountPattern(client, 'cointime_value_created')
|
|
2630
2679
|
self.cointime_value_destroyed: BlockCountPattern[StoredF64] = BlockCountPattern(client, 'cointime_value_destroyed')
|
|
2631
2680
|
self.cointime_value_stored: BlockCountPattern[StoredF64] = BlockCountPattern(client, 'cointime_value_stored')
|
|
2681
|
+
self.vocdd: BlockCountPattern[StoredF64] = BlockCountPattern(client, 'vocdd')
|
|
2632
2682
|
|
|
2633
2683
|
class MetricsTree_Cointime:
|
|
2634
2684
|
"""Metrics tree node."""
|
|
@@ -2638,6 +2688,7 @@ class MetricsTree_Cointime:
|
|
|
2638
2688
|
self.adjusted: MetricsTree_Cointime_Adjusted = MetricsTree_Cointime_Adjusted(client)
|
|
2639
2689
|
self.cap: MetricsTree_Cointime_Cap = MetricsTree_Cointime_Cap(client)
|
|
2640
2690
|
self.pricing: MetricsTree_Cointime_Pricing = MetricsTree_Cointime_Pricing(client)
|
|
2691
|
+
self.reserve_risk: MetricsTree_Cointime_ReserveRisk = MetricsTree_Cointime_ReserveRisk(client)
|
|
2641
2692
|
self.supply: MetricsTree_Cointime_Supply = MetricsTree_Cointime_Supply(client)
|
|
2642
2693
|
self.value: MetricsTree_Cointime_Value = MetricsTree_Cointime_Value(client)
|
|
2643
2694
|
|
|
@@ -2659,10 +2710,10 @@ class MetricsTree_Constants:
|
|
|
2659
2710
|
self.constant_61_8: MetricPattern1[StoredF32] = MetricPattern1(client, 'constant_61_8')
|
|
2660
2711
|
self.constant_70: MetricPattern1[StoredU16] = MetricPattern1(client, 'constant_70')
|
|
2661
2712
|
self.constant_80: MetricPattern1[StoredU16] = MetricPattern1(client, 'constant_80')
|
|
2662
|
-
self.constant_minus_1: MetricPattern1[
|
|
2663
|
-
self.constant_minus_2: MetricPattern1[
|
|
2664
|
-
self.constant_minus_3: MetricPattern1[
|
|
2665
|
-
self.constant_minus_4: MetricPattern1[
|
|
2713
|
+
self.constant_minus_1: MetricPattern1[StoredI8] = MetricPattern1(client, 'constant_minus_1')
|
|
2714
|
+
self.constant_minus_2: MetricPattern1[StoredI8] = MetricPattern1(client, 'constant_minus_2')
|
|
2715
|
+
self.constant_minus_3: MetricPattern1[StoredI8] = MetricPattern1(client, 'constant_minus_3')
|
|
2716
|
+
self.constant_minus_4: MetricPattern1[StoredI8] = MetricPattern1(client, 'constant_minus_4')
|
|
2666
2717
|
|
|
2667
2718
|
class MetricsTree_Distribution_AddressCohorts_AmountRange:
|
|
2668
2719
|
"""Metrics tree node."""
|
|
@@ -3269,21 +3320,22 @@ class MetricsTree_Market_Ath:
|
|
|
3269
3320
|
self.price_drawdown: MetricPattern3[StoredF32] = MetricPattern3(client, 'price_drawdown')
|
|
3270
3321
|
self.years_since_price_ath: MetricPattern4[StoredF32] = MetricPattern4(client, 'years_since_price_ath')
|
|
3271
3322
|
|
|
3272
|
-
class
|
|
3323
|
+
class MetricsTree_Market_Dca_ClassReturns:
|
|
3273
3324
|
"""Metrics tree node."""
|
|
3274
3325
|
|
|
3275
3326
|
def __init__(self, client: BrkClientBase, base_path: str = ''):
|
|
3276
|
-
self._2015: MetricPattern4[
|
|
3277
|
-
self._2016: MetricPattern4[
|
|
3278
|
-
self._2017: MetricPattern4[
|
|
3279
|
-
self._2018: MetricPattern4[
|
|
3280
|
-
self._2019: MetricPattern4[
|
|
3281
|
-
self._2020: MetricPattern4[
|
|
3282
|
-
self._2021: MetricPattern4[
|
|
3283
|
-
self._2022: MetricPattern4[
|
|
3284
|
-
self._2023: MetricPattern4[
|
|
3285
|
-
self._2024: MetricPattern4[
|
|
3286
|
-
self._2025: MetricPattern4[
|
|
3327
|
+
self._2015: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2015_returns')
|
|
3328
|
+
self._2016: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2016_returns')
|
|
3329
|
+
self._2017: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2017_returns')
|
|
3330
|
+
self._2018: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2018_returns')
|
|
3331
|
+
self._2019: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2019_returns')
|
|
3332
|
+
self._2020: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2020_returns')
|
|
3333
|
+
self._2021: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2021_returns')
|
|
3334
|
+
self._2022: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2022_returns')
|
|
3335
|
+
self._2023: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2023_returns')
|
|
3336
|
+
self._2024: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2024_returns')
|
|
3337
|
+
self._2025: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2025_returns')
|
|
3338
|
+
self._2026: MetricPattern4[StoredF32] = MetricPattern4(client, 'dca_class_2026_returns')
|
|
3287
3339
|
|
|
3288
3340
|
class MetricsTree_Market_Dca_ClassStack:
|
|
3289
3341
|
"""Metrics tree node."""
|
|
@@ -3300,13 +3352,14 @@ class MetricsTree_Market_Dca_ClassStack:
|
|
|
3300
3352
|
self._2023: _2015Pattern = _2015Pattern(client, 'dca_class_2023_stack')
|
|
3301
3353
|
self._2024: _2015Pattern = _2015Pattern(client, 'dca_class_2024_stack')
|
|
3302
3354
|
self._2025: _2015Pattern = _2015Pattern(client, 'dca_class_2025_stack')
|
|
3355
|
+
self._2026: _2015Pattern = _2015Pattern(client, 'dca_class_2026_stack')
|
|
3303
3356
|
|
|
3304
3357
|
class MetricsTree_Market_Dca:
|
|
3305
3358
|
"""Metrics tree node."""
|
|
3306
3359
|
|
|
3307
3360
|
def __init__(self, client: BrkClientBase, base_path: str = ''):
|
|
3308
|
-
self.class_average_price:
|
|
3309
|
-
self.class_returns:
|
|
3361
|
+
self.class_average_price: ClassAveragePricePattern[Dollars] = ClassAveragePricePattern(client, 'dca_class')
|
|
3362
|
+
self.class_returns: MetricsTree_Market_Dca_ClassReturns = MetricsTree_Market_Dca_ClassReturns(client)
|
|
3310
3363
|
self.class_stack: MetricsTree_Market_Dca_ClassStack = MetricsTree_Market_Dca_ClassStack(client)
|
|
3311
3364
|
self.period_average_price: PeriodAveragePricePattern[Dollars] = PeriodAveragePricePattern(client, 'dca_average_price')
|
|
3312
3365
|
self.period_cagr: PeriodCagrPattern = PeriodCagrPattern(client, 'dca_cagr')
|
|
@@ -3675,7 +3728,11 @@ class MetricsTree_Price_Oracle:
|
|
|
3675
3728
|
"""Metrics tree node."""
|
|
3676
3729
|
|
|
3677
3730
|
def __init__(self, client: BrkClientBase, base_path: str = ''):
|
|
3731
|
+
self.close_ohlc_cents: MetricPattern6[OHLCCents] = MetricPattern6(client, 'close_ohlc_cents')
|
|
3732
|
+
self.close_ohlc_dollars: MetricPattern6[OHLCDollars] = MetricPattern6(client, 'close_ohlc_dollars')
|
|
3678
3733
|
self.height_to_first_pairoutputindex: MetricPattern11[PairOutputIndex] = MetricPattern11(client, 'height_to_first_pairoutputindex')
|
|
3734
|
+
self.mid_ohlc_cents: MetricPattern6[OHLCCents] = MetricPattern6(client, 'mid_ohlc_cents')
|
|
3735
|
+
self.mid_ohlc_dollars: MetricPattern6[OHLCDollars] = MetricPattern6(client, 'mid_ohlc_dollars')
|
|
3679
3736
|
self.ohlc_cents: MetricPattern6[OHLCCents] = MetricPattern6(client, 'oracle_ohlc_cents')
|
|
3680
3737
|
self.ohlc_dollars: MetricPattern6[OHLCDollars] = MetricPattern6(client, 'oracle_ohlc')
|
|
3681
3738
|
self.output0_value: MetricPattern33[Sats] = MetricPattern33(client, 'pair_output0_value')
|
|
@@ -3702,12 +3759,12 @@ class MetricsTree_Price_Oracle:
|
|
|
3702
3759
|
self.price_cents: MetricPattern11[Cents] = MetricPattern11(client, 'oracle_price_cents')
|
|
3703
3760
|
self.tx_count: MetricPattern6[StoredU32] = MetricPattern6(client, 'oracle_tx_count')
|
|
3704
3761
|
|
|
3705
|
-
class
|
|
3762
|
+
class MetricsTree_Price_Sats:
|
|
3706
3763
|
"""Metrics tree node."""
|
|
3707
3764
|
|
|
3708
3765
|
def __init__(self, client: BrkClientBase, base_path: str = ''):
|
|
3709
|
-
self.ohlc: MetricPattern1[
|
|
3710
|
-
self.split: SplitPattern2[
|
|
3766
|
+
self.ohlc: MetricPattern1[OHLCSats] = MetricPattern1(client, 'price_ohlc_sats')
|
|
3767
|
+
self.split: SplitPattern2[Sats] = SplitPattern2(client, 'price_sats')
|
|
3711
3768
|
|
|
3712
3769
|
class MetricsTree_Price:
|
|
3713
3770
|
"""Metrics tree node."""
|
|
@@ -3715,8 +3772,8 @@ class MetricsTree_Price:
|
|
|
3715
3772
|
def __init__(self, client: BrkClientBase, base_path: str = ''):
|
|
3716
3773
|
self.cents: MetricsTree_Price_Cents = MetricsTree_Price_Cents(client)
|
|
3717
3774
|
self.oracle: MetricsTree_Price_Oracle = MetricsTree_Price_Oracle(client)
|
|
3718
|
-
self.sats:
|
|
3719
|
-
self.usd:
|
|
3775
|
+
self.sats: MetricsTree_Price_Sats = MetricsTree_Price_Sats(client)
|
|
3776
|
+
self.usd: SatsPattern[OHLCDollars] = SatsPattern(client, 'price')
|
|
3720
3777
|
|
|
3721
3778
|
class MetricsTree_Scripts_Count:
|
|
3722
3779
|
"""Metrics tree node."""
|
|
@@ -3854,6 +3911,7 @@ class MetricsTree_Transactions_Volume:
|
|
|
3854
3911
|
self.annualized_volume: _2015Pattern = _2015Pattern(client, 'annualized_volume')
|
|
3855
3912
|
self.inputs_per_sec: MetricPattern4[StoredF32] = MetricPattern4(client, 'inputs_per_sec')
|
|
3856
3913
|
self.outputs_per_sec: MetricPattern4[StoredF32] = MetricPattern4(client, 'outputs_per_sec')
|
|
3914
|
+
self.received_sum: ActiveSupplyPattern = ActiveSupplyPattern(client, 'received_sum')
|
|
3857
3915
|
self.sent_sum: ActiveSupplyPattern = ActiveSupplyPattern(client, 'sent_sum')
|
|
3858
3916
|
self.tx_per_sec: MetricPattern4[StoredF32] = MetricPattern4(client, 'tx_per_sec')
|
|
3859
3917
|
|
|
@@ -3900,7 +3958,7 @@ class MetricsTree:
|
|
|
3900
3958
|
class BrkClient(BrkClientBase):
|
|
3901
3959
|
"""Main BRK client with metrics tree and API methods."""
|
|
3902
3960
|
|
|
3903
|
-
VERSION = "v0.1.0-alpha.
|
|
3961
|
+
VERSION = "v0.1.0-alpha.6"
|
|
3904
3962
|
|
|
3905
3963
|
INDEXES = [
|
|
3906
3964
|
"dateindex",
|
|
@@ -1,26 +1,30 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: brk-client
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.0b0
|
|
4
4
|
Summary: Python client for the Bitcoin Research Kit
|
|
5
5
|
Project-URL: Homepage, https://bitcoinresearchkit.org
|
|
6
6
|
Project-URL: Repository, https://github.com/bitcoinresearchkit/brk
|
|
7
7
|
License-Expression: MIT
|
|
8
8
|
Keywords: analytics,bitcoin,blockchain,on-chain
|
|
9
|
-
Classifier: Development Status ::
|
|
9
|
+
Classifier: Development Status :: 4 - Beta
|
|
10
10
|
Classifier: Intended Audience :: Developers
|
|
11
11
|
Classifier: License :: OSI Approved :: MIT License
|
|
12
12
|
Classifier: Programming Language :: Python :: 3
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
13
15
|
Classifier: Programming Language :: Python :: 3.11
|
|
14
16
|
Classifier: Programming Language :: Python :: 3.12
|
|
15
17
|
Classifier: Programming Language :: Python :: 3.13
|
|
16
18
|
Classifier: Typing :: Typed
|
|
17
|
-
Requires-Python: >=3.
|
|
19
|
+
Requires-Python: >=3.9
|
|
18
20
|
Description-Content-Type: text/markdown
|
|
19
21
|
|
|
20
22
|
# brk-client
|
|
21
23
|
|
|
22
24
|
Python client for the [Bitcoin Research Kit](https://github.com/bitcoinresearchkit/brk) API.
|
|
23
25
|
|
|
26
|
+
Requires Python 3.9+. Zero dependencies.
|
|
27
|
+
|
|
24
28
|
[PyPI](https://pypi.org/project/brk-client/) | [API Reference](https://github.com/bitcoinresearchkit/brk/blob/main/packages/brk_client/DOCS.md)
|
|
25
29
|
|
|
26
30
|
## Installation
|
|
@@ -31,6 +35,8 @@ pip install brk-client
|
|
|
31
35
|
uv add brk-client
|
|
32
36
|
```
|
|
33
37
|
|
|
38
|
+
Or just copy [`brk_client/__init__.py`](./brk_client/__init__.py) into your project - it's a single file with no dependencies.
|
|
39
|
+
|
|
34
40
|
## Quick Start
|
|
35
41
|
|
|
36
42
|
```python
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
brk_client/__init__.py,sha256=M-3Y5Nh35vg4rHdNY79qpcutkeQ7pAHT9sFAj0TjhJ8,265531
|
|
2
|
+
brk_client-0.1.0b0.dist-info/METADATA,sha256=AbE_LbMGi3iatnWej9ZKsRwJvxiIycurO5lLJPHTImA,1924
|
|
3
|
+
brk_client-0.1.0b0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
4
|
+
brk_client-0.1.0b0.dist-info/RECORD,,
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
brk_client/__init__.py,sha256=l_PZBNKhZzUfgZHsqXT11MWT4qsm5ES8knJd8HcGAKw,262908
|
|
2
|
-
brk_client-0.1.0a6.dist-info/METADATA,sha256=QrrLHR6-ser_hBS9Y2Pk1o7LaVro3eVqA048JUyHnQc,1655
|
|
3
|
-
brk_client-0.1.0a6.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
4
|
-
brk_client-0.1.0a6.dist-info/RECORD,,
|