mirror of
https://github.com/bitcoinresearchkit/brk.git
synced 2026-07-01 14:29:01 -07:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fe8f095434 |
Generated
+299
-212
File diff suppressed because it is too large
Load Diff
+30
-31
@@ -4,7 +4,7 @@ members = ["crates/*"]
|
||||
package.description = "The Bitcoin Research Kit is a suite of tools designed to extract, compute and display data stored on a Bitcoin Core node"
|
||||
package.license = "MIT"
|
||||
package.edition = "2024"
|
||||
package.version = "0.3.6"
|
||||
package.version = "0.3.3"
|
||||
package.homepage = "https://bitcoinresearchkit.org"
|
||||
package.repository = "https://github.com/bitcoinresearchkit/brk"
|
||||
package.readme = "README.md"
|
||||
@@ -35,52 +35,51 @@ debug = true
|
||||
[workspace.dependencies]
|
||||
aide = { version = "0.16.0-alpha.4", features = ["axum-json", "axum-query"] }
|
||||
axum = { version = "0.8.9", default-features = false, features = ["http1", "json", "query", "tokio", "tracing"] }
|
||||
bitcoin = { version = "0.32.101", features = ["serde"] }
|
||||
brk_alloc = { version = "0.3.6", path = "crates/brk_alloc" }
|
||||
brk_bencher = { version = "0.3.6", path = "crates/brk_bencher" }
|
||||
brk_bindgen = { version = "0.3.6", path = "crates/brk_bindgen" }
|
||||
brk_cli = { version = "0.3.6", path = "crates/brk_cli" }
|
||||
brk_client = { version = "0.3.6", path = "crates/brk_client" }
|
||||
brk_cohort = { version = "0.3.6", path = "crates/brk_cohort" }
|
||||
brk_computer = { version = "0.3.6", path = "crates/brk_computer" }
|
||||
brk_error = { version = "0.3.6", path = "crates/brk_error" }
|
||||
brk_fetcher = { version = "0.3.6", path = "crates/brk_fetcher" }
|
||||
brk_indexer = { version = "0.3.6", path = "crates/brk_indexer" }
|
||||
brk_iterator = { version = "0.3.6", path = "crates/brk_iterator" }
|
||||
brk_logger = { version = "0.3.6", path = "crates/brk_logger" }
|
||||
brk_mempool = { version = "0.3.6", path = "crates/brk_mempool" }
|
||||
brk_oracle = { version = "0.3.6", path = "crates/brk_oracle" }
|
||||
brk_query = { version = "0.3.6", path = "crates/brk_query", features = ["tokio"] }
|
||||
brk_reader = { version = "0.3.6", path = "crates/brk_reader" }
|
||||
brk_rpc = { version = "0.3.6", path = "crates/brk_rpc" }
|
||||
brk_server = { version = "0.3.6", path = "crates/brk_server" }
|
||||
brk_store = { version = "0.3.6", path = "crates/brk_store" }
|
||||
brk_traversable = { version = "0.3.6", path = "crates/brk_traversable", features = ["pco", "derive"] }
|
||||
brk_traversable_derive = { version = "0.3.6", path = "crates/brk_traversable_derive" }
|
||||
brk_types = { version = "0.3.6", path = "crates/brk_types" }
|
||||
brk_website = { version = "0.3.6", path = "crates/brk_website" }
|
||||
bitcoin = { version = "0.32.100", features = ["serde"] }
|
||||
brk_alloc = { version = "0.3.3", path = "crates/brk_alloc" }
|
||||
brk_bencher = { version = "0.3.3", path = "crates/brk_bencher" }
|
||||
brk_bindgen = { version = "0.3.3", path = "crates/brk_bindgen" }
|
||||
brk_cli = { version = "0.3.3", path = "crates/brk_cli" }
|
||||
brk_client = { version = "0.3.3", path = "crates/brk_client" }
|
||||
brk_cohort = { version = "0.3.3", path = "crates/brk_cohort" }
|
||||
brk_computer = { version = "0.3.3", path = "crates/brk_computer" }
|
||||
brk_error = { version = "0.3.3", path = "crates/brk_error" }
|
||||
brk_fetcher = { version = "0.3.3", path = "crates/brk_fetcher" }
|
||||
brk_indexer = { version = "0.3.3", path = "crates/brk_indexer" }
|
||||
brk_iterator = { version = "0.3.3", path = "crates/brk_iterator" }
|
||||
brk_logger = { version = "0.3.3", path = "crates/brk_logger" }
|
||||
brk_mempool = { version = "0.3.3", path = "crates/brk_mempool" }
|
||||
brk_oracle = { version = "0.3.3", path = "crates/brk_oracle" }
|
||||
brk_query = { version = "0.3.3", path = "crates/brk_query", features = ["tokio"] }
|
||||
brk_reader = { version = "0.3.3", path = "crates/brk_reader" }
|
||||
brk_rpc = { version = "0.3.3", path = "crates/brk_rpc" }
|
||||
brk_server = { version = "0.3.3", path = "crates/brk_server" }
|
||||
brk_store = { version = "0.3.3", path = "crates/brk_store" }
|
||||
brk_traversable = { version = "0.3.3", path = "crates/brk_traversable", features = ["pco", "derive"] }
|
||||
brk_traversable_derive = { version = "0.3.3", path = "crates/brk_traversable_derive" }
|
||||
brk_types = { version = "0.3.3", path = "crates/brk_types" }
|
||||
brk_website = { version = "0.3.3", path = "crates/brk_website" }
|
||||
byteview = "0.10.1"
|
||||
color-eyre = "0.6.5"
|
||||
corepc-jsonrpc = { package = "jsonrpc", version = "0.19.0", features = ["simple_http"], default-features = false }
|
||||
corepc-types = { version = "0.15.0", features = ["std"], default-features = false }
|
||||
corepc-types = { version = "0.14.0", features = ["std"], default-features = false }
|
||||
derive_more = { version = "2.1.1", features = ["deref", "deref_mut"] }
|
||||
fjall = "3.1.5"
|
||||
fjall = "3.1.4"
|
||||
indexmap = { version = "2.14.0", features = ["serde"] }
|
||||
jiff = { version = "0.2.29", features = ["perf-inline", "tz-system"], default-features = false }
|
||||
jiff = { version = "0.2.28", features = ["perf-inline", "tz-system"], default-features = false }
|
||||
owo-colors = "4.3.0"
|
||||
parking_lot = "0.12.5"
|
||||
pco = "1.0.2"
|
||||
rayon = "1.12.0"
|
||||
rapidhash = "4.4.2"
|
||||
rustc-hash = "2.1.2"
|
||||
schemars = { version = "1.2.1", features = ["indexmap2"] }
|
||||
serde = "1.0.228"
|
||||
serde_bytes = "0.11.19"
|
||||
serde_derive = "1.0.228"
|
||||
serde_json = { version = "1.0.150", features = ["float_roundtrip", "preserve_order"] }
|
||||
smallvec = "1.15.2"
|
||||
smallvec = "1.15.1"
|
||||
tokio = { version = "1.52.3", features = ["rt-multi-thread"] }
|
||||
tower-http = { version = "0.7.0", features = ["catch-panic", "compression-br", "compression-gzip", "compression-zstd", "cors", "normalize-path", "timeout", "trace"] }
|
||||
tower-http = { version = "0.6.11", features = ["catch-panic", "compression-br", "compression-gzip", "compression-zstd", "cors", "normalize-path", "timeout", "trace"] }
|
||||
tower-layer = "0.3"
|
||||
tracing = { version = "0.1", default-features = false, features = ["std"] }
|
||||
ureq = { version = "3.3.0", features = ["json"] }
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
use std::collections::BTreeMap;
|
||||
|
||||
use brk_cohort::{
|
||||
AGE_RANGE_NAMES, AMOUNT_RANGE_NAMES, CLASS_NAMES, ENTRY_NAMES, EPOCH_NAMES, LOSS_NAMES,
|
||||
OVER_AGE_NAMES, OVER_AMOUNT_NAMES, PROFIT_NAMES, PROFITABILITY_RANGE_NAMES,
|
||||
SPENDABLE_TYPE_NAMES, TERM_NAMES, UNDER_AGE_NAMES, UNDER_AMOUNT_NAMES,
|
||||
AGE_RANGE_NAMES, AMOUNT_RANGE_NAMES, CLASS_NAMES, EPOCH_NAMES, LOSS_NAMES, OVER_AGE_NAMES,
|
||||
OVER_AMOUNT_NAMES, PROFIT_NAMES, PROFITABILITY_RANGE_NAMES, SPENDABLE_TYPE_NAMES, TERM_NAMES,
|
||||
UNDER_AGE_NAMES, UNDER_AMOUNT_NAMES,
|
||||
};
|
||||
use brk_types::{Index, pools};
|
||||
use serde::Serialize;
|
||||
@@ -59,7 +59,6 @@ impl CohortConstants {
|
||||
("TERM_NAMES", to_value(&TERM_NAMES)),
|
||||
("EPOCH_NAMES", to_value(&EPOCH_NAMES)),
|
||||
("CLASS_NAMES", to_value(&CLASS_NAMES)),
|
||||
("ENTRY_NAMES", to_value(&ENTRY_NAMES)),
|
||||
("SPENDABLE_TYPE_NAMES", to_value(&SPENDABLE_TYPE_NAMES)),
|
||||
("AGE_RANGE_NAMES", to_value(&AGE_RANGE_NAMES)),
|
||||
("UNDER_AGE_NAMES", to_value(&UNDER_AGE_NAMES)),
|
||||
|
||||
@@ -51,12 +51,6 @@ const _openBrowserCache = (option) => {{
|
||||
return caches.open(name).catch(() => null);
|
||||
}};
|
||||
|
||||
/**
|
||||
* @param {{string}} url
|
||||
* @returns {{URL}}
|
||||
*/
|
||||
const _parseBaseUrl = (url) => new URL(url, typeof location === 'undefined' ? undefined : location.href);
|
||||
|
||||
/**
|
||||
* Custom error class for BRK client errors
|
||||
*/
|
||||
@@ -409,9 +403,6 @@ class BrkClientBase {{
|
||||
const isString = typeof options === 'string';
|
||||
const rawUrl = isString ? options : options.baseUrl;
|
||||
this.baseUrl = rawUrl.endsWith('/') ? rawUrl.slice(0, -1) : rawUrl;
|
||||
const url = _parseBaseUrl(this.baseUrl);
|
||||
this.url = url.href.endsWith('/') ? url.href.slice(0, -1) : url.href;
|
||||
this.domain = url.hostname;
|
||||
this.timeout = isString ? 5000 : (options.timeout ?? 5000);
|
||||
/** @type {{Promise<Cache | null>}} */
|
||||
this._browserCachePromise = _openBrowserCache(isString ? undefined : options.browserCache);
|
||||
@@ -688,160 +679,6 @@ const _p = (prefix, acc) => acc ? `${{prefix}}_${{acc}}` : prefix;
|
||||
"#
|
||||
)
|
||||
.unwrap();
|
||||
output.push_str(r##"
|
||||
const _MASK_64 = 0xffffffffffffffffn;
|
||||
const _RAPIDHASH_SECRETS = /** @type {const} */ ([
|
||||
0x2d358dccaa6c78a5n,
|
||||
0x8bb84b93962eacc9n,
|
||||
0x4b33a62ed433d4a3n,
|
||||
0x4d5a2da51de1aa47n,
|
||||
0xa0761d6478bd642fn,
|
||||
0xe7037ed1a0b428dbn,
|
||||
0x90ed1765281c388cn,
|
||||
]);
|
||||
const _RAPIDHASH_SEED = _rapidHashSeed(0n);
|
||||
|
||||
/** @param {bigint} value */
|
||||
function _u64(value) {
|
||||
return value & _MASK_64;
|
||||
}
|
||||
|
||||
/** @param {bigint} left @param {bigint} right */
|
||||
function _rapidMix(left, right) {
|
||||
const result = _u64(left) * _u64(right);
|
||||
return _u64(result) ^ _u64(result >> 64n);
|
||||
}
|
||||
|
||||
/** @param {bigint} left @param {bigint} right @returns {[bigint, bigint]} */
|
||||
function _rapidMum(left, right) {
|
||||
const result = _u64(left) * _u64(right);
|
||||
return [_u64(result), _u64(result >> 64n)];
|
||||
}
|
||||
|
||||
/** @param {bigint} seed */
|
||||
function _rapidHashSeed(seed) {
|
||||
return _u64(seed ^ _rapidMix(seed ^ _RAPIDHASH_SECRETS[2], _RAPIDHASH_SECRETS[1]));
|
||||
}
|
||||
|
||||
/** @param {Uint8Array} bytes @param {number} offset */
|
||||
function _readU32(bytes, offset) {
|
||||
return (
|
||||
BigInt(bytes[offset]) |
|
||||
(BigInt(bytes[offset + 1]) << 8n) |
|
||||
(BigInt(bytes[offset + 2]) << 16n) |
|
||||
(BigInt(bytes[offset + 3]) << 24n)
|
||||
);
|
||||
}
|
||||
|
||||
/** @param {Uint8Array} bytes @param {number} offset */
|
||||
function _readU64(bytes, offset) {
|
||||
return _readU32(bytes, offset) | (_readU32(bytes, offset + 4) << 32n);
|
||||
}
|
||||
|
||||
/** @param {Uint8Array | ArrayBuffer | ArrayBufferView | number[]} payload */
|
||||
function _asUint8Array(payload) {
|
||||
if (payload instanceof Uint8Array) return payload;
|
||||
if (payload instanceof ArrayBuffer) return new Uint8Array(payload);
|
||||
if (ArrayBuffer.isView(payload)) return new Uint8Array(payload.buffer, payload.byteOffset, payload.byteLength);
|
||||
if (Array.isArray(payload)) return new Uint8Array(payload);
|
||||
throw new Error("Expected address payload bytes");
|
||||
}
|
||||
|
||||
/** @param {Uint8Array | ArrayBuffer | ArrayBufferView | number[]} payload */
|
||||
function _rapidHashV3(payload) {
|
||||
const bytes = _asUint8Array(payload);
|
||||
const length = bytes.length;
|
||||
if (length === 0) throw new Error("Expected a non-empty address payload");
|
||||
if (length > 65) throw new Error("Expected at most 65 address payload bytes");
|
||||
|
||||
let seed = _RAPIDHASH_SEED;
|
||||
let a = 0n;
|
||||
let b = 0n;
|
||||
let remainder;
|
||||
|
||||
if (length <= 16) {
|
||||
if (length >= 4) {
|
||||
seed ^= BigInt(length);
|
||||
if (length >= 8) {
|
||||
a ^= _readU64(bytes, 0);
|
||||
b ^= _readU64(bytes, length - 8);
|
||||
} else {
|
||||
a ^= _readU32(bytes, 0);
|
||||
b ^= _readU32(bytes, length - 4);
|
||||
}
|
||||
} else if (length > 0) {
|
||||
a ^= (BigInt(bytes[0]) << 45n) | BigInt(bytes[length - 1]);
|
||||
b ^= BigInt(bytes[length >> 1]);
|
||||
}
|
||||
remainder = BigInt(length);
|
||||
} else {
|
||||
seed = _rapidMix(_readU64(bytes, 0) ^ _RAPIDHASH_SECRETS[2], _readU64(bytes, 8) ^ seed);
|
||||
if (length > 32) {
|
||||
seed = _rapidMix(_readU64(bytes, 16) ^ _RAPIDHASH_SECRETS[2], _readU64(bytes, 24) ^ seed);
|
||||
if (length > 48) {
|
||||
seed = _rapidMix(_readU64(bytes, 32) ^ _RAPIDHASH_SECRETS[1], _readU64(bytes, 40) ^ seed);
|
||||
if (length > 64) {
|
||||
seed = _rapidMix(_readU64(bytes, 48) ^ _RAPIDHASH_SECRETS[1], _readU64(bytes, 56) ^ seed);
|
||||
}
|
||||
}
|
||||
}
|
||||
remainder = BigInt(length);
|
||||
a ^= _readU64(bytes, length - 16) ^ remainder;
|
||||
b ^= _readU64(bytes, length - 8);
|
||||
}
|
||||
|
||||
a ^= _RAPIDHASH_SECRETS[1];
|
||||
b ^= seed;
|
||||
[a, b] = _rapidMum(a, b);
|
||||
return _rapidMix(a ^ 0xaaaaaaaaaaaaaaaan, b ^ _RAPIDHASH_SECRETS[1] ^ remainder);
|
||||
}
|
||||
|
||||
/** @param {number} nibbles */
|
||||
function _validateHashPrefixNibbles(nibbles) {
|
||||
if (!Number.isInteger(nibbles) || nibbles < 1 || nibbles > 16) {
|
||||
throw new Error("Expected hash-prefix length from 1 to 16 hex nibbles");
|
||||
}
|
||||
}
|
||||
|
||||
/** @param {OutputType} addrType @returns {number[]} */
|
||||
function _addressPayloadLengths(addrType) {
|
||||
switch (addrType) {
|
||||
case "p2a": return [2];
|
||||
case "p2pk": return [33, 65];
|
||||
case "p2pkh":
|
||||
case "p2sh":
|
||||
case "v0_p2wpkh": return [20];
|
||||
case "v0_p2wsh":
|
||||
case "v1_p2tr": return [32];
|
||||
default:
|
||||
throw new Error(`Unsupported address type for address payload hash-prefix: ${addrType}`);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {OutputType} addrType
|
||||
* @param {Uint8Array | ArrayBuffer | ArrayBufferView | number[]} payload
|
||||
*/
|
||||
function _validateAddressPayloadForType(addrType, payload) {
|
||||
const length = _asUint8Array(payload).length;
|
||||
const expected = _addressPayloadLengths(addrType);
|
||||
if (!expected.includes(length)) {
|
||||
throw new Error(`Expected ${addrType} address payload length ${expected.join(" or ")} bytes`);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Compute the RapidHash v3 hash-prefix used by `/api/address/hash-prefix/{addr_type}/{prefix}`.
|
||||
* @param {Uint8Array | ArrayBuffer | ArrayBufferView | number[]} payload - Raw address payload bytes
|
||||
* @param {number} nibbles - Prefix length from 1 to 16 hex nibbles
|
||||
* @returns {string}
|
||||
*/
|
||||
function addressPayloadHashPrefix(payload, nibbles) {
|
||||
_validateHashPrefixNibbles(nibbles);
|
||||
return _rapidHashV3(payload).toString(16).padStart(16, "0").slice(0, nibbles);
|
||||
}
|
||||
|
||||
"##);
|
||||
}
|
||||
|
||||
/// Generate static constants for the BrkClient class.
|
||||
|
||||
@@ -111,32 +111,6 @@ pub fn generate_main_client(
|
||||
writeln!(output, " this.series = this._buildTree();").unwrap();
|
||||
writeln!(output, " }}\n").unwrap();
|
||||
|
||||
output.push_str(r##" /**
|
||||
* Compute the RapidHash v3 hash-prefix for raw address payload bytes.
|
||||
* @param {Uint8Array | ArrayBuffer | ArrayBufferView | number[]} payload
|
||||
* @param {number} nibbles
|
||||
* @returns {string}
|
||||
*/
|
||||
static addressPayloadHashPrefix(payload, nibbles) {
|
||||
return addressPayloadHashPrefix(payload, nibbles);
|
||||
}
|
||||
|
||||
/**
|
||||
* Fetch address hash-prefix matches from raw address payload bytes.
|
||||
* @param {OutputType} addrType
|
||||
* @param {Uint8Array | ArrayBuffer | ArrayBufferView | number[]} payload - Raw payload bytes matching addrType length
|
||||
* @param {number} nibbles
|
||||
* @param {{ signal?: AbortSignal, onValue?: (value: AddrHashPrefixMatches) => void, cache?: boolean }} [options]
|
||||
* @returns {Promise<AddrHashPrefixMatches>}
|
||||
*/
|
||||
getAddressPayloadHashPrefixMatches(addrType, payload, nibbles, options = {}) {
|
||||
_validateAddressPayloadForType(addrType, payload);
|
||||
const prefix = addressPayloadHashPrefix(payload, nibbles);
|
||||
return this.getAddressHashPrefixMatches(addrType, prefix, options);
|
||||
}
|
||||
|
||||
"##);
|
||||
|
||||
writeln!(output, " /**").unwrap();
|
||||
writeln!(output, " * @private").unwrap();
|
||||
writeln!(output, " * @returns {{SeriesTree}}").unwrap();
|
||||
@@ -187,11 +161,7 @@ pub fn generate_main_client(
|
||||
|
||||
writeln!(output, "}}\n").unwrap();
|
||||
|
||||
writeln!(
|
||||
output,
|
||||
"export {{ BrkClient, BrkError, addressPayloadHashPrefix }};"
|
||||
)
|
||||
.unwrap();
|
||||
writeln!(output, "export {{ BrkClient, BrkError }};").unwrap();
|
||||
}
|
||||
|
||||
#[allow(clippy::too_many_arguments)]
|
||||
|
||||
@@ -84,23 +84,6 @@ pub fn generate_main_client(output: &mut String, endpoints: &[Endpoint]) {
|
||||
.unwrap();
|
||||
writeln!(output, " return _date_to_index(index, d)").unwrap();
|
||||
writeln!(output).unwrap();
|
||||
|
||||
output.push_str(r#" @staticmethod
|
||||
def address_payload_hash_prefix(payload: Union[bytes, bytearray, memoryview], nibbles: int) -> str:
|
||||
"""Compute the RapidHash v3 hash-prefix for raw address payload bytes."""
|
||||
return address_payload_hash_prefix(payload, nibbles)
|
||||
|
||||
def get_address_payload_hash_prefix_matches(
|
||||
self,
|
||||
addr_type: OutputType,
|
||||
payload: Union[bytes, bytearray, memoryview],
|
||||
nibbles: int,
|
||||
) -> AddrHashPrefixMatches:
|
||||
"""Fetch address hash-prefix matches from raw payload bytes matching addr_type length."""
|
||||
_validate_address_payload_for_type(addr_type, payload)
|
||||
return self.get_address_hash_prefix_matches(addr_type, address_payload_hash_prefix(payload, nibbles))
|
||||
|
||||
"#);
|
||||
// Generate API methods
|
||||
generate_api_methods(output, endpoints);
|
||||
}
|
||||
|
||||
@@ -147,125 +147,6 @@ def _p(prefix: str, acc: str) -> str:
|
||||
"#
|
||||
)
|
||||
.unwrap();
|
||||
output.push_str(r#"
|
||||
_MASK_64 = (1 << 64) - 1
|
||||
_RAPIDHASH_SECRETS = (
|
||||
0x2d358dccaa6c78a5,
|
||||
0x8bb84b93962eacc9,
|
||||
0x4b33a62ed433d4a3,
|
||||
0x4d5a2da51de1aa47,
|
||||
0xa0761d6478bd642f,
|
||||
0xe7037ed1a0b428db,
|
||||
0x90ed1765281c388c,
|
||||
)
|
||||
_RAPIDHASH_SEED = 0
|
||||
|
||||
|
||||
def _u64(value: int) -> int:
|
||||
return value & _MASK_64
|
||||
|
||||
|
||||
def _rapid_mix(left: int, right: int) -> int:
|
||||
result = _u64(left) * _u64(right)
|
||||
return _u64(result) ^ _u64(result >> 64)
|
||||
|
||||
|
||||
def _rapid_mum(left: int, right: int) -> Tuple[int, int]:
|
||||
result = _u64(left) * _u64(right)
|
||||
return _u64(result), _u64(result >> 64)
|
||||
|
||||
|
||||
def _rapid_hash_seed(seed: int) -> int:
|
||||
return _u64(seed ^ _rapid_mix(seed ^ _RAPIDHASH_SECRETS[2], _RAPIDHASH_SECRETS[1]))
|
||||
|
||||
|
||||
_RAPIDHASH_SEED = _rapid_hash_seed(0)
|
||||
|
||||
|
||||
def _read_u32(data: bytes, offset: int) -> int:
|
||||
return int.from_bytes(data[offset:offset + 4], "little")
|
||||
|
||||
|
||||
def _read_u64(data: bytes, offset: int) -> int:
|
||||
return int.from_bytes(data[offset:offset + 8], "little")
|
||||
|
||||
|
||||
def _rapid_hash_v3(payload: Union[bytes, bytearray, memoryview]) -> int:
|
||||
data = bytes(payload)
|
||||
length = len(data)
|
||||
if length == 0:
|
||||
raise ValueError("Expected a non-empty address payload")
|
||||
if length > 65:
|
||||
raise ValueError("Expected at most 65 address payload bytes")
|
||||
|
||||
seed = _RAPIDHASH_SEED
|
||||
a = 0
|
||||
b = 0
|
||||
|
||||
if length <= 16:
|
||||
if length >= 4:
|
||||
seed ^= length
|
||||
if length >= 8:
|
||||
a ^= _read_u64(data, 0)
|
||||
b ^= _read_u64(data, length - 8)
|
||||
else:
|
||||
a ^= _read_u32(data, 0)
|
||||
b ^= _read_u32(data, length - 4)
|
||||
elif length > 0:
|
||||
a ^= (data[0] << 45) | data[length - 1]
|
||||
b ^= data[length >> 1]
|
||||
remainder = length
|
||||
else:
|
||||
if length > 16:
|
||||
seed = _rapid_mix(_read_u64(data, 0) ^ _RAPIDHASH_SECRETS[2], _read_u64(data, 8) ^ seed)
|
||||
if length > 32:
|
||||
seed = _rapid_mix(_read_u64(data, 16) ^ _RAPIDHASH_SECRETS[2], _read_u64(data, 24) ^ seed)
|
||||
if length > 48:
|
||||
seed = _rapid_mix(_read_u64(data, 32) ^ _RAPIDHASH_SECRETS[1], _read_u64(data, 40) ^ seed)
|
||||
if length > 64:
|
||||
seed = _rapid_mix(_read_u64(data, 48) ^ _RAPIDHASH_SECRETS[1], _read_u64(data, 56) ^ seed)
|
||||
remainder = length
|
||||
a ^= _read_u64(data, length - 16) ^ remainder
|
||||
b ^= _read_u64(data, length - 8)
|
||||
|
||||
a ^= _RAPIDHASH_SECRETS[1]
|
||||
b ^= seed
|
||||
a, b = _rapid_mum(a, b)
|
||||
return _rapid_mix(a ^ 0xaaaaaaaaaaaaaaaa, b ^ _RAPIDHASH_SECRETS[1] ^ remainder)
|
||||
|
||||
|
||||
def _validate_hash_prefix_nibbles(nibbles: int) -> None:
|
||||
if isinstance(nibbles, bool) or not isinstance(nibbles, int) or nibbles < 1 or nibbles > 16:
|
||||
raise ValueError("Expected hash-prefix length from 1 to 16 hex nibbles")
|
||||
|
||||
|
||||
def _address_payload_lengths(addr_type: OutputType) -> Tuple[int, ...]:
|
||||
if addr_type == "p2a":
|
||||
return (2,)
|
||||
if addr_type == "p2pk":
|
||||
return (33, 65)
|
||||
if addr_type in ("p2pkh", "p2sh", "v0_p2wpkh"):
|
||||
return (20,)
|
||||
if addr_type in ("v0_p2wsh", "v1_p2tr"):
|
||||
return (32,)
|
||||
raise ValueError(f"Unsupported address type for address payload hash-prefix: {addr_type}")
|
||||
|
||||
|
||||
def _validate_address_payload_for_type(addr_type: OutputType, payload: Union[bytes, bytearray, memoryview]) -> None:
|
||||
length = len(bytes(payload))
|
||||
expected = _address_payload_lengths(addr_type)
|
||||
if length not in expected:
|
||||
joined = " or ".join(str(value) for value in expected)
|
||||
raise ValueError(f"Expected {addr_type} address payload length {joined} bytes")
|
||||
|
||||
|
||||
def address_payload_hash_prefix(payload: Union[bytes, bytearray, memoryview], nibbles: int) -> str:
|
||||
"""Compute the RapidHash v3 hash-prefix used by `/api/address/hash-prefix/{addr_type}/{prefix}`."""
|
||||
_validate_hash_prefix_nibbles(nibbles)
|
||||
return f"{_rapid_hash_v3(payload):016x}"[:nibbles]
|
||||
|
||||
|
||||
"#);
|
||||
}
|
||||
|
||||
/// Generate the SeriesData and SeriesEndpoint classes
|
||||
|
||||
@@ -76,36 +76,6 @@ impl BrkClient {{
|
||||
)
|
||||
.unwrap();
|
||||
|
||||
output.push_str(r#" /// Decode a mainnet Bitcoin address into the BRK address type and raw payload bytes.
|
||||
pub fn decode_address_payload(address: &str) -> Result<AddressPayload> {
|
||||
decode_address_payload(address)
|
||||
}
|
||||
|
||||
/// Compute the RapidHash v3 hash-prefix for raw address payload bytes.
|
||||
pub fn address_payload_hash_prefix(payload: &[u8], nibbles: usize) -> Result<String> {
|
||||
address_payload_hash_prefix(payload, nibbles)
|
||||
}
|
||||
|
||||
/// Decode a mainnet Bitcoin address and compute its hash prefix.
|
||||
pub fn address_hash_prefix(address: &str, nibbles: usize) -> Result<AddressHashPrefix> {
|
||||
address_hash_prefix(address, nibbles)
|
||||
}
|
||||
|
||||
/// Fetch address hash-prefix matches from raw payload bytes matching `addr_type` length.
|
||||
pub fn get_address_payload_hash_prefix_matches(&self, addr_type: OutputType, payload: &[u8], nibbles: usize) -> Result<AddrHashPrefixMatches> {
|
||||
validate_address_payload_for_type(addr_type, payload)?;
|
||||
let prefix = address_payload_hash_prefix(payload, nibbles)?;
|
||||
self.get_address_hash_prefix_matches(addr_type, &prefix)
|
||||
}
|
||||
|
||||
/// Fetch address hash-prefix matches for a mainnet Bitcoin address.
|
||||
pub fn get_address_hash_prefix_matches_for_address(&self, address: &str, nibbles: usize) -> Result<AddrHashPrefixMatches> {
|
||||
let hashed = address_hash_prefix(address, nibbles)?;
|
||||
self.get_address_hash_prefix_matches(hashed.addr_type, &hashed.prefix)
|
||||
}
|
||||
|
||||
"#);
|
||||
|
||||
generate_api_methods(output, endpoints);
|
||||
|
||||
writeln!(output, "}}").unwrap();
|
||||
@@ -148,23 +118,6 @@ fn generate_get_method(output: &mut String, endpoint: &Endpoint) {
|
||||
"get_text"
|
||||
};
|
||||
|
||||
if endpoint.path == "/api/address/hash-prefix/{addr_type}/{prefix}" {
|
||||
writeln!(
|
||||
output,
|
||||
" let addr_type = address_payload_type_path(addr_type)?;"
|
||||
)
|
||||
.unwrap();
|
||||
writeln!(
|
||||
output,
|
||||
" self.base.{}(&format!(\"{}\"{}))",
|
||||
fetch_method, path, index_arg
|
||||
)
|
||||
.unwrap();
|
||||
writeln!(output, " }}").unwrap();
|
||||
writeln!(output).unwrap();
|
||||
return;
|
||||
}
|
||||
|
||||
if endpoint.query_params.is_empty() {
|
||||
writeln!(
|
||||
output,
|
||||
|
||||
@@ -11,8 +11,7 @@ use crate::{
|
||||
pub fn generate_imports(output: &mut String) {
|
||||
writeln!(
|
||||
output,
|
||||
r#"use std::str::FromStr;
|
||||
use std::sync::Arc;
|
||||
r#"use std::sync::Arc;
|
||||
use std::ops::{{Bound, RangeBounds}};
|
||||
use serde::de::DeserializeOwned;
|
||||
pub use brk_cohort::*;
|
||||
@@ -44,97 +43,6 @@ impl std::error::Error for BrkError {{}}
|
||||
/// Result type for BRK client operations.
|
||||
pub type Result<T> = std::result::Result<T, BrkError>;
|
||||
|
||||
/// BRK address type and raw payload bytes used by the hash-prefix index.
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub struct AddressPayload {{
|
||||
pub addr_type: OutputType,
|
||||
pub payload: Vec<u8>,
|
||||
}}
|
||||
|
||||
/// BRK address type and leading hex nibbles of the address-payload hash.
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub struct AddressHashPrefix {{
|
||||
pub addr_type: OutputType,
|
||||
pub prefix: String,
|
||||
}}
|
||||
|
||||
/// Compute the RapidHash v3 hash-prefix used by `/api/address/hash-prefix/{{addr_type}}/{{prefix}}`.
|
||||
pub fn address_payload_hash_prefix(payload: &[u8], nibbles: usize) -> Result<String> {{
|
||||
if payload.is_empty() {{
|
||||
return Err(BrkError {{ message: "Expected a non-empty address payload".to_string() }});
|
||||
}}
|
||||
if payload.len() > 65 {{
|
||||
return Err(BrkError {{ message: "Expected at most 65 address payload bytes".to_string() }});
|
||||
}}
|
||||
if !(1..=16).contains(&nibbles) {{
|
||||
return Err(BrkError {{ message: "Expected hash-prefix length from 1 to 16 hex nibbles".to_string() }});
|
||||
}}
|
||||
Ok(format!("{{:016x}}", rapidhash::v3::rapidhash_v3(payload))[..nibbles].to_string())
|
||||
}}
|
||||
|
||||
fn validate_address_payload_for_type(addr_type: OutputType, payload: &[u8]) -> Result<()> {{
|
||||
let expected: &[usize] = match addr_type {{
|
||||
OutputType::P2A => &[2],
|
||||
OutputType::P2PK33 => &[33],
|
||||
OutputType::P2PK65 => &[65],
|
||||
OutputType::P2PKH | OutputType::P2SH | OutputType::P2WPKH => &[20],
|
||||
OutputType::P2WSH | OutputType::P2TR => &[32],
|
||||
OutputType::P2MS | OutputType::OpReturn | OutputType::Empty | OutputType::Unknown => {{
|
||||
return Err(BrkError {{ message: format!("Unsupported address type for address payload hash-prefix: {{addr_type:?}}") }});
|
||||
}},
|
||||
}};
|
||||
let addr_type = address_payload_type_path(addr_type)?;
|
||||
|
||||
if !expected.contains(&payload.len()) {{
|
||||
let joined = expected
|
||||
.iter()
|
||||
.map(ToString::to_string)
|
||||
.collect::<Vec<_>>()
|
||||
.join(" or ");
|
||||
return Err(BrkError {{ message: format!("Expected {{addr_type}} address payload length {{joined}} bytes") }});
|
||||
}}
|
||||
|
||||
Ok(())
|
||||
}}
|
||||
|
||||
fn address_payload_type_path(addr_type: OutputType) -> Result<&'static str> {{
|
||||
match addr_type {{
|
||||
OutputType::P2A => Ok("p2a"),
|
||||
OutputType::P2PK33 | OutputType::P2PK65 => Ok("p2pk"),
|
||||
OutputType::P2PKH => Ok("p2pkh"),
|
||||
OutputType::P2SH => Ok("p2sh"),
|
||||
OutputType::P2WPKH => Ok("v0_p2wpkh"),
|
||||
OutputType::P2WSH => Ok("v0_p2wsh"),
|
||||
OutputType::P2TR => Ok("v1_p2tr"),
|
||||
OutputType::P2MS | OutputType::OpReturn | OutputType::Empty | OutputType::Unknown => {{
|
||||
Err(BrkError {{ message: format!("Unsupported address type for address payload hash-prefix: {{addr_type:?}}") }})
|
||||
}},
|
||||
}}
|
||||
}}
|
||||
|
||||
/// Decode a mainnet Bitcoin address into the BRK address type and raw payload bytes.
|
||||
pub fn decode_address_payload(address: &str) -> Result<AddressPayload> {{
|
||||
if address.is_empty() {{
|
||||
return Err(BrkError {{ message: "Expected an address string".to_string() }});
|
||||
}}
|
||||
let addr_bytes = AddrBytes::from_str(address).map_err(|e| BrkError {{ message: e.to_string() }})?;
|
||||
let addr_type = OutputType::from(&addr_bytes);
|
||||
|
||||
Ok(AddressPayload {{
|
||||
addr_type,
|
||||
payload: addr_bytes.as_slice().to_vec(),
|
||||
}})
|
||||
}}
|
||||
|
||||
/// Decode a mainnet Bitcoin address and compute its hash prefix.
|
||||
pub fn address_hash_prefix(address: &str, nibbles: usize) -> Result<AddressHashPrefix> {{
|
||||
let decoded = decode_address_payload(address)?;
|
||||
Ok(AddressHashPrefix {{
|
||||
addr_type: decoded.addr_type,
|
||||
prefix: address_payload_hash_prefix(&decoded.payload, nibbles)?,
|
||||
}})
|
||||
}}
|
||||
|
||||
/// Options for configuring the BRK client.
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct BrkClientOptions {{
|
||||
|
||||
@@ -13,7 +13,6 @@ exclude = ["examples/"]
|
||||
[dependencies]
|
||||
brk_cohort = { workspace = true }
|
||||
brk_types = { workspace = true }
|
||||
rapidhash = { workspace = true }
|
||||
ureq = { workspace = true }
|
||||
serde = { workspace = true }
|
||||
serde_json = { workspace = true }
|
||||
|
||||
+18
-733
@@ -8,7 +8,6 @@
|
||||
#![allow(clippy::useless_format)]
|
||||
#![allow(clippy::unnecessary_to_owned)]
|
||||
|
||||
use std::str::FromStr;
|
||||
use std::sync::Arc;
|
||||
use std::ops::{Bound, RangeBounds};
|
||||
use serde::de::DeserializeOwned;
|
||||
@@ -33,97 +32,6 @@ impl std::error::Error for BrkError {}
|
||||
/// Result type for BRK client operations.
|
||||
pub type Result<T> = std::result::Result<T, BrkError>;
|
||||
|
||||
/// BRK address type and raw payload bytes used by the hash-prefix index.
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub struct AddressPayload {
|
||||
pub addr_type: OutputType,
|
||||
pub payload: Vec<u8>,
|
||||
}
|
||||
|
||||
/// BRK address type and leading hex nibbles of the address-payload hash.
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub struct AddressHashPrefix {
|
||||
pub addr_type: OutputType,
|
||||
pub prefix: String,
|
||||
}
|
||||
|
||||
/// Compute the RapidHash v3 hash-prefix used by `/api/address/hash-prefix/{addr_type}/{prefix}`.
|
||||
pub fn address_payload_hash_prefix(payload: &[u8], nibbles: usize) -> Result<String> {
|
||||
if payload.is_empty() {
|
||||
return Err(BrkError { message: "Expected a non-empty address payload".to_string() });
|
||||
}
|
||||
if payload.len() > 65 {
|
||||
return Err(BrkError { message: "Expected at most 65 address payload bytes".to_string() });
|
||||
}
|
||||
if !(1..=16).contains(&nibbles) {
|
||||
return Err(BrkError { message: "Expected hash-prefix length from 1 to 16 hex nibbles".to_string() });
|
||||
}
|
||||
Ok(format!("{:016x}", rapidhash::v3::rapidhash_v3(payload))[..nibbles].to_string())
|
||||
}
|
||||
|
||||
fn validate_address_payload_for_type(addr_type: OutputType, payload: &[u8]) -> Result<()> {
|
||||
let expected: &[usize] = match addr_type {
|
||||
OutputType::P2A => &[2],
|
||||
OutputType::P2PK33 => &[33],
|
||||
OutputType::P2PK65 => &[65],
|
||||
OutputType::P2PKH | OutputType::P2SH | OutputType::P2WPKH => &[20],
|
||||
OutputType::P2WSH | OutputType::P2TR => &[32],
|
||||
OutputType::P2MS | OutputType::OpReturn | OutputType::Empty | OutputType::Unknown => {
|
||||
return Err(BrkError { message: format!("Unsupported address type for address payload hash-prefix: {addr_type:?}") });
|
||||
},
|
||||
};
|
||||
let addr_type = address_payload_type_path(addr_type)?;
|
||||
|
||||
if !expected.contains(&payload.len()) {
|
||||
let joined = expected
|
||||
.iter()
|
||||
.map(ToString::to_string)
|
||||
.collect::<Vec<_>>()
|
||||
.join(" or ");
|
||||
return Err(BrkError { message: format!("Expected {addr_type} address payload length {joined} bytes") });
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn address_payload_type_path(addr_type: OutputType) -> Result<&'static str> {
|
||||
match addr_type {
|
||||
OutputType::P2A => Ok("p2a"),
|
||||
OutputType::P2PK33 | OutputType::P2PK65 => Ok("p2pk"),
|
||||
OutputType::P2PKH => Ok("p2pkh"),
|
||||
OutputType::P2SH => Ok("p2sh"),
|
||||
OutputType::P2WPKH => Ok("v0_p2wpkh"),
|
||||
OutputType::P2WSH => Ok("v0_p2wsh"),
|
||||
OutputType::P2TR => Ok("v1_p2tr"),
|
||||
OutputType::P2MS | OutputType::OpReturn | OutputType::Empty | OutputType::Unknown => {
|
||||
Err(BrkError { message: format!("Unsupported address type for address payload hash-prefix: {addr_type:?}") })
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
/// Decode a mainnet Bitcoin address into the BRK address type and raw payload bytes.
|
||||
pub fn decode_address_payload(address: &str) -> Result<AddressPayload> {
|
||||
if address.is_empty() {
|
||||
return Err(BrkError { message: "Expected an address string".to_string() });
|
||||
}
|
||||
let addr_bytes = AddrBytes::from_str(address).map_err(|e| BrkError { message: e.to_string() })?;
|
||||
let addr_type = OutputType::from(&addr_bytes);
|
||||
|
||||
Ok(AddressPayload {
|
||||
addr_type,
|
||||
payload: addr_bytes.as_slice().to_vec(),
|
||||
})
|
||||
}
|
||||
|
||||
/// Decode a mainnet Bitcoin address and compute its hash prefix.
|
||||
pub fn address_hash_prefix(address: &str, nibbles: usize) -> Result<AddressHashPrefix> {
|
||||
let decoded = decode_address_payload(address)?;
|
||||
Ok(AddressHashPrefix {
|
||||
addr_type: decoded.addr_type,
|
||||
prefix: address_payload_hash_prefix(&decoded.payload, nibbles)?,
|
||||
})
|
||||
}
|
||||
|
||||
/// Options for configuring the BRK client.
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct BrkClientOptions {
|
||||
@@ -1283,22 +1191,6 @@ pub struct CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern {
|
||||
pub sopr: AdjustedRatioValuePattern,
|
||||
}
|
||||
|
||||
/// Pattern struct for repeated tree structure.
|
||||
pub struct CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern2 {
|
||||
pub cap: CentsDeltaToUsdPattern,
|
||||
pub capitalized: PricePattern,
|
||||
pub gross_pnl: BlockCumulativeSumPattern,
|
||||
pub loss: BlockCumulativeNegativeSumPattern,
|
||||
pub mvrv: SeriesPattern1<StoredF32>,
|
||||
pub net_pnl: BlockChangeCumulativeDeltaSumPattern,
|
||||
pub peak_regret: BlockCumulativeSumPattern,
|
||||
pub price: BpsCentsPercentilesRatioSatsSmaStdUsdPattern,
|
||||
pub profit: BlockCumulativeSumPattern,
|
||||
pub profit_to_loss_ratio: _1m1w1y24hPattern<StoredF64>,
|
||||
pub sell_side_risk_ratio: _1m1w1y24hPattern8,
|
||||
pub sopr: RatioValuePattern2,
|
||||
}
|
||||
|
||||
/// Pattern struct for repeated tree structure.
|
||||
pub struct EmptyOpP2aP2msP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshUnknownPattern2 {
|
||||
pub empty: _1m1w1y24hBpsPercentRatioPattern,
|
||||
@@ -1766,17 +1658,6 @@ pub struct ActiveInputOutputSpendablePattern {
|
||||
pub spendable_output_to_reused_addr_share: _1m1w1y24hBpsPercentRatioPattern,
|
||||
}
|
||||
|
||||
/// Pattern struct for repeated tree structure.
|
||||
pub struct ActivityCostInvestedOutputsRealizedSupplyUnrealizedPattern2 {
|
||||
pub activity: CoindaysCoinyearsDormancyTransferPattern,
|
||||
pub cost_basis: InMaxMinPerSupplyPattern,
|
||||
pub invested_capital: InPattern,
|
||||
pub outputs: SpendingSpentUnspentPattern,
|
||||
pub realized: CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern2,
|
||||
pub supply: DeltaDominanceHalfInTotalPattern2,
|
||||
pub unrealized: CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2,
|
||||
}
|
||||
|
||||
/// Pattern struct for repeated tree structure.
|
||||
pub struct CapLossMvrvNetPriceProfitSoprPattern {
|
||||
pub cap: CentsDeltaUsdPattern,
|
||||
@@ -3527,22 +3408,6 @@ impl PriceRatioPattern {
|
||||
}
|
||||
}
|
||||
|
||||
/// Pattern struct for repeated tree structure.
|
||||
pub struct RatioValuePattern2 {
|
||||
pub ratio: _1m1w1y24hPattern<StoredF64>,
|
||||
pub value_destroyed: AverageBlockCumulativeSumPattern<Cents>,
|
||||
}
|
||||
|
||||
impl RatioValuePattern2 {
|
||||
/// Create a new pattern node with accumulated series name.
|
||||
pub fn new(client: Arc<BrkClientBase>, acc: String) -> Self {
|
||||
Self {
|
||||
ratio: _1m1w1y24hPattern::new(client.clone(), _m(&acc, "sopr")),
|
||||
value_destroyed: AverageBlockCumulativeSumPattern::new(client.clone(), _m(&acc, "value_destroyed")),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Pattern struct for repeated tree structure.
|
||||
pub struct RatioValuePattern {
|
||||
pub ratio: _24hPattern,
|
||||
@@ -7334,7 +7199,6 @@ pub struct SeriesTree_Cohorts_Utxo {
|
||||
pub over_age: SeriesTree_Cohorts_Utxo_OverAge,
|
||||
pub epoch: SeriesTree_Cohorts_Utxo_Epoch,
|
||||
pub class: SeriesTree_Cohorts_Utxo_Class,
|
||||
pub entry: SeriesTree_Cohorts_Utxo_Entry,
|
||||
pub over_amount: SeriesTree_Cohorts_Utxo_OverAmount,
|
||||
pub amount_range: SeriesTree_Cohorts_Utxo_AmountRange,
|
||||
pub under_amount: SeriesTree_Cohorts_Utxo_UnderAmount,
|
||||
@@ -7354,7 +7218,6 @@ impl SeriesTree_Cohorts_Utxo {
|
||||
over_age: SeriesTree_Cohorts_Utxo_OverAge::new(client.clone(), format!("{base_path}_over_age")),
|
||||
epoch: SeriesTree_Cohorts_Utxo_Epoch::new(client.clone(), format!("{base_path}_epoch")),
|
||||
class: SeriesTree_Cohorts_Utxo_Class::new(client.clone(), format!("{base_path}_class")),
|
||||
entry: SeriesTree_Cohorts_Utxo_Entry::new(client.clone(), format!("{base_path}_entry")),
|
||||
over_amount: SeriesTree_Cohorts_Utxo_OverAmount::new(client.clone(), format!("{base_path}_over_amount")),
|
||||
amount_range: SeriesTree_Cohorts_Utxo_AmountRange::new(client.clone(), format!("{base_path}_amount_range")),
|
||||
under_amount: SeriesTree_Cohorts_Utxo_UnderAmount::new(client.clone(), format!("{base_path}_under_amount")),
|
||||
@@ -8136,7 +7999,7 @@ pub struct SeriesTree_Cohorts_Utxo_Lth_Realized {
|
||||
pub price: SeriesTree_Cohorts_Utxo_Lth_Realized_Price,
|
||||
pub mvrv: SeriesPattern1<StoredF32>,
|
||||
pub net_pnl: BlockChangeCumulativeDeltaSumPattern,
|
||||
pub sopr: RatioValuePattern2,
|
||||
pub sopr: SeriesTree_Cohorts_Utxo_Lth_Realized_Sopr,
|
||||
pub gross_pnl: BlockCumulativeSumPattern,
|
||||
pub sell_side_risk_ratio: _1m1w1y24hPattern8,
|
||||
pub peak_regret: BlockCumulativeSumPattern,
|
||||
@@ -8153,7 +8016,7 @@ impl SeriesTree_Cohorts_Utxo_Lth_Realized {
|
||||
price: SeriesTree_Cohorts_Utxo_Lth_Realized_Price::new(client.clone(), format!("{base_path}_price")),
|
||||
mvrv: SeriesPattern1::new(client.clone(), "lth_mvrv".to_string()),
|
||||
net_pnl: BlockChangeCumulativeDeltaSumPattern::new(client.clone(), "lth_net".to_string()),
|
||||
sopr: RatioValuePattern2::new(client.clone(), "lth".to_string()),
|
||||
sopr: SeriesTree_Cohorts_Utxo_Lth_Realized_Sopr::new(client.clone(), format!("{base_path}_sopr")),
|
||||
gross_pnl: BlockCumulativeSumPattern::new(client.clone(), "lth_realized_gross_pnl".to_string()),
|
||||
sell_side_risk_ratio: _1m1w1y24hPattern8::new(client.clone(), "lth_sell_side_risk_ratio".to_string()),
|
||||
peak_regret: BlockCumulativeSumPattern::new(client.clone(), "lth_realized_peak_regret".to_string()),
|
||||
@@ -8373,6 +8236,21 @@ impl SeriesTree_Cohorts_Utxo_Lth_Realized_Price_StdDev_1y {
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Lth_Realized_Sopr {
|
||||
pub value_destroyed: AverageBlockCumulativeSumPattern<Cents>,
|
||||
pub ratio: _1m1w1y24hPattern<StoredF64>,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Lth_Realized_Sopr {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
value_destroyed: AverageBlockCumulativeSumPattern::new(client.clone(), "lth_value_destroyed".to_string()),
|
||||
ratio: _1m1w1y24hPattern::new(client.clone(), "lth_sopr".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_AgeRange {
|
||||
pub under_1h: ActivityOutputsRealizedSupplyUnrealizedPattern,
|
||||
@@ -8588,561 +8466,6 @@ impl SeriesTree_Cohorts_Utxo_Class {
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry {
|
||||
pub discount: SeriesTree_Cohorts_Utxo_Entry_Discount,
|
||||
pub premium: SeriesTree_Cohorts_Utxo_Entry_Premium,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
discount: SeriesTree_Cohorts_Utxo_Entry_Discount::new(client.clone(), format!("{base_path}_discount")),
|
||||
premium: SeriesTree_Cohorts_Utxo_Entry_Premium::new(client.clone(), format!("{base_path}_premium")),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Discount {
|
||||
pub supply: DeltaDominanceHalfInTotalPattern2,
|
||||
pub outputs: SpendingSpentUnspentPattern,
|
||||
pub activity: CoindaysCoinyearsDormancyTransferPattern,
|
||||
pub realized: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized,
|
||||
pub cost_basis: InMaxMinPerSupplyPattern,
|
||||
pub unrealized: CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2,
|
||||
pub invested_capital: InPattern,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Discount {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
supply: DeltaDominanceHalfInTotalPattern2::new(client.clone(), "veteran_supply".to_string()),
|
||||
outputs: SpendingSpentUnspentPattern::new(client.clone(), "veteran".to_string()),
|
||||
activity: CoindaysCoinyearsDormancyTransferPattern::new(client.clone(), "veteran".to_string()),
|
||||
realized: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized::new(client.clone(), format!("{base_path}_realized")),
|
||||
cost_basis: InMaxMinPerSupplyPattern::new(client.clone(), "veteran".to_string()),
|
||||
unrealized: CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2::new(client.clone(), "veteran".to_string()),
|
||||
invested_capital: InPattern::new(client.clone(), "veteran_invested_capital_in".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Discount_Realized {
|
||||
pub cap: CentsDeltaToUsdPattern,
|
||||
pub profit: BlockCumulativeSumPattern,
|
||||
pub loss: BlockCumulativeNegativeSumPattern,
|
||||
pub price: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price,
|
||||
pub mvrv: SeriesPattern1<StoredF32>,
|
||||
pub net_pnl: BlockChangeCumulativeDeltaSumPattern,
|
||||
pub sopr: RatioValuePattern2,
|
||||
pub gross_pnl: BlockCumulativeSumPattern,
|
||||
pub sell_side_risk_ratio: _1m1w1y24hPattern8,
|
||||
pub peak_regret: BlockCumulativeSumPattern,
|
||||
pub capitalized: PricePattern,
|
||||
pub profit_to_loss_ratio: _1m1w1y24hPattern<StoredF64>,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Discount_Realized {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
cap: CentsDeltaToUsdPattern::new(client.clone(), "veteran_realized_cap".to_string()),
|
||||
profit: BlockCumulativeSumPattern::new(client.clone(), "veteran_realized_profit".to_string()),
|
||||
loss: BlockCumulativeNegativeSumPattern::new(client.clone(), "veteran_realized_loss".to_string()),
|
||||
price: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price::new(client.clone(), format!("{base_path}_price")),
|
||||
mvrv: SeriesPattern1::new(client.clone(), "veteran_mvrv".to_string()),
|
||||
net_pnl: BlockChangeCumulativeDeltaSumPattern::new(client.clone(), "veteran_net".to_string()),
|
||||
sopr: RatioValuePattern2::new(client.clone(), "veteran".to_string()),
|
||||
gross_pnl: BlockCumulativeSumPattern::new(client.clone(), "veteran_realized_gross_pnl".to_string()),
|
||||
sell_side_risk_ratio: _1m1w1y24hPattern8::new(client.clone(), "veteran_sell_side_risk_ratio".to_string()),
|
||||
peak_regret: BlockCumulativeSumPattern::new(client.clone(), "veteran_realized_peak_regret".to_string()),
|
||||
capitalized: PricePattern::new(client.clone(), "veteran_capitalized_price".to_string()),
|
||||
profit_to_loss_ratio: _1m1w1y24hPattern::new(client.clone(), "veteran_realized_profit_to_loss_ratio".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price {
|
||||
pub usd: SeriesPattern1<Dollars>,
|
||||
pub cents: SeriesPattern1<Cents>,
|
||||
pub sats: SeriesPattern1<SatsFract>,
|
||||
pub bps: SeriesPattern1<BasisPoints32>,
|
||||
pub ratio: SeriesPattern1<StoredF32>,
|
||||
pub percentiles: Pct0Pct1Pct2Pct5Pct95Pct98Pct99Pattern,
|
||||
pub sma: _1m1w1y2y4yAllPattern,
|
||||
pub std_dev: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
usd: SeriesPattern1::new(client.clone(), "veteran_realized_price".to_string()),
|
||||
cents: SeriesPattern1::new(client.clone(), "veteran_realized_price_cents".to_string()),
|
||||
sats: SeriesPattern1::new(client.clone(), "veteran_realized_price_sats".to_string()),
|
||||
bps: SeriesPattern1::new(client.clone(), "veteran_realized_price_ratio_bps".to_string()),
|
||||
ratio: SeriesPattern1::new(client.clone(), "veteran_realized_price_ratio".to_string()),
|
||||
percentiles: Pct0Pct1Pct2Pct5Pct95Pct98Pct99Pattern::new(client.clone(), "veteran_realized_price".to_string()),
|
||||
sma: _1m1w1y2y4yAllPattern::new(client.clone(), "veteran_realized_price_ratio_sma".to_string()),
|
||||
std_dev: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev::new(client.clone(), format!("{base_path}_std_dev")),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev {
|
||||
pub all: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_All,
|
||||
pub _4y: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_4y,
|
||||
pub _2y: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_2y,
|
||||
pub _1y: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_1y,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
all: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_All::new(client.clone(), format!("{base_path}_all")),
|
||||
_4y: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_4y::new(client.clone(), format!("{base_path}_4y")),
|
||||
_2y: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_2y::new(client.clone(), format!("{base_path}_2y")),
|
||||
_1y: SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_1y::new(client.clone(), format!("{base_path}_1y")),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_All {
|
||||
pub sd: SeriesPattern1<StoredF32>,
|
||||
pub zscore: SeriesPattern1<StoredF32>,
|
||||
pub _0sd: CentsSatsUsdPattern,
|
||||
pub p0_5sd: PriceRatioPattern,
|
||||
pub p1sd: PriceRatioPattern,
|
||||
pub p1_5sd: PriceRatioPattern,
|
||||
pub p2sd: PriceRatioPattern,
|
||||
pub p2_5sd: PriceRatioPattern,
|
||||
pub p3sd: PriceRatioPattern,
|
||||
pub m0_5sd: PriceRatioPattern,
|
||||
pub m1sd: PriceRatioPattern,
|
||||
pub m1_5sd: PriceRatioPattern,
|
||||
pub m2sd: PriceRatioPattern,
|
||||
pub m2_5sd: PriceRatioPattern,
|
||||
pub m3sd: PriceRatioPattern,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_All {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
sd: SeriesPattern1::new(client.clone(), "veteran_realized_price_ratio_sd".to_string()),
|
||||
zscore: SeriesPattern1::new(client.clone(), "veteran_realized_price_ratio_zscore".to_string()),
|
||||
_0sd: CentsSatsUsdPattern::new(client.clone(), "veteran_realized_price_0sd".to_string()),
|
||||
p0_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p0_5sd".to_string()),
|
||||
p1sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p1sd".to_string()),
|
||||
p1_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p1_5sd".to_string()),
|
||||
p2sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p2sd".to_string()),
|
||||
p2_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p2_5sd".to_string()),
|
||||
p3sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p3sd".to_string()),
|
||||
m0_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m0_5sd".to_string()),
|
||||
m1sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m1sd".to_string()),
|
||||
m1_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m1_5sd".to_string()),
|
||||
m2sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m2sd".to_string()),
|
||||
m2_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m2_5sd".to_string()),
|
||||
m3sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m3sd".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_4y {
|
||||
pub sd: SeriesPattern1<StoredF32>,
|
||||
pub zscore: SeriesPattern1<StoredF32>,
|
||||
pub _0sd: CentsSatsUsdPattern,
|
||||
pub p0_5sd: PriceRatioPattern,
|
||||
pub p1sd: PriceRatioPattern,
|
||||
pub p1_5sd: PriceRatioPattern,
|
||||
pub p2sd: PriceRatioPattern,
|
||||
pub p2_5sd: PriceRatioPattern,
|
||||
pub p3sd: PriceRatioPattern,
|
||||
pub m0_5sd: PriceRatioPattern,
|
||||
pub m1sd: PriceRatioPattern,
|
||||
pub m1_5sd: PriceRatioPattern,
|
||||
pub m2sd: PriceRatioPattern,
|
||||
pub m2_5sd: PriceRatioPattern,
|
||||
pub m3sd: PriceRatioPattern,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_4y {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
sd: SeriesPattern1::new(client.clone(), "veteran_realized_price_ratio_sd_4y".to_string()),
|
||||
zscore: SeriesPattern1::new(client.clone(), "veteran_realized_price_ratio_zscore_4y".to_string()),
|
||||
_0sd: CentsSatsUsdPattern::new(client.clone(), "veteran_realized_price_0sd_4y".to_string()),
|
||||
p0_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p0_5sd_4y".to_string()),
|
||||
p1sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p1sd_4y".to_string()),
|
||||
p1_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p1_5sd_4y".to_string()),
|
||||
p2sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p2sd_4y".to_string()),
|
||||
p2_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p2_5sd_4y".to_string()),
|
||||
p3sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p3sd_4y".to_string()),
|
||||
m0_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m0_5sd_4y".to_string()),
|
||||
m1sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m1sd_4y".to_string()),
|
||||
m1_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m1_5sd_4y".to_string()),
|
||||
m2sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m2sd_4y".to_string()),
|
||||
m2_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m2_5sd_4y".to_string()),
|
||||
m3sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m3sd_4y".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_2y {
|
||||
pub sd: SeriesPattern1<StoredF32>,
|
||||
pub zscore: SeriesPattern1<StoredF32>,
|
||||
pub _0sd: CentsSatsUsdPattern,
|
||||
pub p0_5sd: PriceRatioPattern,
|
||||
pub p1sd: PriceRatioPattern,
|
||||
pub p1_5sd: PriceRatioPattern,
|
||||
pub p2sd: PriceRatioPattern,
|
||||
pub p2_5sd: PriceRatioPattern,
|
||||
pub p3sd: PriceRatioPattern,
|
||||
pub m0_5sd: PriceRatioPattern,
|
||||
pub m1sd: PriceRatioPattern,
|
||||
pub m1_5sd: PriceRatioPattern,
|
||||
pub m2sd: PriceRatioPattern,
|
||||
pub m2_5sd: PriceRatioPattern,
|
||||
pub m3sd: PriceRatioPattern,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_2y {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
sd: SeriesPattern1::new(client.clone(), "veteran_realized_price_ratio_sd_2y".to_string()),
|
||||
zscore: SeriesPattern1::new(client.clone(), "veteran_realized_price_ratio_zscore_2y".to_string()),
|
||||
_0sd: CentsSatsUsdPattern::new(client.clone(), "veteran_realized_price_0sd_2y".to_string()),
|
||||
p0_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p0_5sd_2y".to_string()),
|
||||
p1sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p1sd_2y".to_string()),
|
||||
p1_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p1_5sd_2y".to_string()),
|
||||
p2sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p2sd_2y".to_string()),
|
||||
p2_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p2_5sd_2y".to_string()),
|
||||
p3sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p3sd_2y".to_string()),
|
||||
m0_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m0_5sd_2y".to_string()),
|
||||
m1sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m1sd_2y".to_string()),
|
||||
m1_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m1_5sd_2y".to_string()),
|
||||
m2sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m2sd_2y".to_string()),
|
||||
m2_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m2_5sd_2y".to_string()),
|
||||
m3sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m3sd_2y".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_1y {
|
||||
pub sd: SeriesPattern1<StoredF32>,
|
||||
pub zscore: SeriesPattern1<StoredF32>,
|
||||
pub _0sd: CentsSatsUsdPattern,
|
||||
pub p0_5sd: PriceRatioPattern,
|
||||
pub p1sd: PriceRatioPattern,
|
||||
pub p1_5sd: PriceRatioPattern,
|
||||
pub p2sd: PriceRatioPattern,
|
||||
pub p2_5sd: PriceRatioPattern,
|
||||
pub p3sd: PriceRatioPattern,
|
||||
pub m0_5sd: PriceRatioPattern,
|
||||
pub m1sd: PriceRatioPattern,
|
||||
pub m1_5sd: PriceRatioPattern,
|
||||
pub m2sd: PriceRatioPattern,
|
||||
pub m2_5sd: PriceRatioPattern,
|
||||
pub m3sd: PriceRatioPattern,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_1y {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
sd: SeriesPattern1::new(client.clone(), "veteran_realized_price_ratio_sd_1y".to_string()),
|
||||
zscore: SeriesPattern1::new(client.clone(), "veteran_realized_price_ratio_zscore_1y".to_string()),
|
||||
_0sd: CentsSatsUsdPattern::new(client.clone(), "veteran_realized_price_0sd_1y".to_string()),
|
||||
p0_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p0_5sd_1y".to_string()),
|
||||
p1sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p1sd_1y".to_string()),
|
||||
p1_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p1_5sd_1y".to_string()),
|
||||
p2sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p2sd_1y".to_string()),
|
||||
p2_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p2_5sd_1y".to_string()),
|
||||
p3sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "p3sd_1y".to_string()),
|
||||
m0_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m0_5sd_1y".to_string()),
|
||||
m1sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m1sd_1y".to_string()),
|
||||
m1_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m1_5sd_1y".to_string()),
|
||||
m2sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m2sd_1y".to_string()),
|
||||
m2_5sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m2_5sd_1y".to_string()),
|
||||
m3sd: PriceRatioPattern::new(client.clone(), "veteran_realized_price".to_string(), "m3sd_1y".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Premium {
|
||||
pub supply: DeltaDominanceHalfInTotalPattern2,
|
||||
pub outputs: SpendingSpentUnspentPattern,
|
||||
pub activity: CoindaysCoinyearsDormancyTransferPattern,
|
||||
pub realized: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized,
|
||||
pub cost_basis: InMaxMinPerSupplyPattern,
|
||||
pub unrealized: CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2,
|
||||
pub invested_capital: InPattern,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Premium {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
supply: DeltaDominanceHalfInTotalPattern2::new(client.clone(), "rookie_supply".to_string()),
|
||||
outputs: SpendingSpentUnspentPattern::new(client.clone(), "rookie".to_string()),
|
||||
activity: CoindaysCoinyearsDormancyTransferPattern::new(client.clone(), "rookie".to_string()),
|
||||
realized: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized::new(client.clone(), format!("{base_path}_realized")),
|
||||
cost_basis: InMaxMinPerSupplyPattern::new(client.clone(), "rookie".to_string()),
|
||||
unrealized: CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2::new(client.clone(), "rookie".to_string()),
|
||||
invested_capital: InPattern::new(client.clone(), "rookie_invested_capital_in".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Premium_Realized {
|
||||
pub cap: CentsDeltaToUsdPattern,
|
||||
pub profit: BlockCumulativeSumPattern,
|
||||
pub loss: BlockCumulativeNegativeSumPattern,
|
||||
pub price: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price,
|
||||
pub mvrv: SeriesPattern1<StoredF32>,
|
||||
pub net_pnl: BlockChangeCumulativeDeltaSumPattern,
|
||||
pub sopr: RatioValuePattern2,
|
||||
pub gross_pnl: BlockCumulativeSumPattern,
|
||||
pub sell_side_risk_ratio: _1m1w1y24hPattern8,
|
||||
pub peak_regret: BlockCumulativeSumPattern,
|
||||
pub capitalized: PricePattern,
|
||||
pub profit_to_loss_ratio: _1m1w1y24hPattern<StoredF64>,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Premium_Realized {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
cap: CentsDeltaToUsdPattern::new(client.clone(), "rookie_realized_cap".to_string()),
|
||||
profit: BlockCumulativeSumPattern::new(client.clone(), "rookie_realized_profit".to_string()),
|
||||
loss: BlockCumulativeNegativeSumPattern::new(client.clone(), "rookie_realized_loss".to_string()),
|
||||
price: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price::new(client.clone(), format!("{base_path}_price")),
|
||||
mvrv: SeriesPattern1::new(client.clone(), "rookie_mvrv".to_string()),
|
||||
net_pnl: BlockChangeCumulativeDeltaSumPattern::new(client.clone(), "rookie_net".to_string()),
|
||||
sopr: RatioValuePattern2::new(client.clone(), "rookie".to_string()),
|
||||
gross_pnl: BlockCumulativeSumPattern::new(client.clone(), "rookie_realized_gross_pnl".to_string()),
|
||||
sell_side_risk_ratio: _1m1w1y24hPattern8::new(client.clone(), "rookie_sell_side_risk_ratio".to_string()),
|
||||
peak_regret: BlockCumulativeSumPattern::new(client.clone(), "rookie_realized_peak_regret".to_string()),
|
||||
capitalized: PricePattern::new(client.clone(), "rookie_capitalized_price".to_string()),
|
||||
profit_to_loss_ratio: _1m1w1y24hPattern::new(client.clone(), "rookie_realized_profit_to_loss_ratio".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price {
|
||||
pub usd: SeriesPattern1<Dollars>,
|
||||
pub cents: SeriesPattern1<Cents>,
|
||||
pub sats: SeriesPattern1<SatsFract>,
|
||||
pub bps: SeriesPattern1<BasisPoints32>,
|
||||
pub ratio: SeriesPattern1<StoredF32>,
|
||||
pub percentiles: Pct0Pct1Pct2Pct5Pct95Pct98Pct99Pattern,
|
||||
pub sma: _1m1w1y2y4yAllPattern,
|
||||
pub std_dev: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
usd: SeriesPattern1::new(client.clone(), "rookie_realized_price".to_string()),
|
||||
cents: SeriesPattern1::new(client.clone(), "rookie_realized_price_cents".to_string()),
|
||||
sats: SeriesPattern1::new(client.clone(), "rookie_realized_price_sats".to_string()),
|
||||
bps: SeriesPattern1::new(client.clone(), "rookie_realized_price_ratio_bps".to_string()),
|
||||
ratio: SeriesPattern1::new(client.clone(), "rookie_realized_price_ratio".to_string()),
|
||||
percentiles: Pct0Pct1Pct2Pct5Pct95Pct98Pct99Pattern::new(client.clone(), "rookie_realized_price".to_string()),
|
||||
sma: _1m1w1y2y4yAllPattern::new(client.clone(), "rookie_realized_price_ratio_sma".to_string()),
|
||||
std_dev: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev::new(client.clone(), format!("{base_path}_std_dev")),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev {
|
||||
pub all: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_All,
|
||||
pub _4y: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_4y,
|
||||
pub _2y: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_2y,
|
||||
pub _1y: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_1y,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
all: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_All::new(client.clone(), format!("{base_path}_all")),
|
||||
_4y: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_4y::new(client.clone(), format!("{base_path}_4y")),
|
||||
_2y: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_2y::new(client.clone(), format!("{base_path}_2y")),
|
||||
_1y: SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_1y::new(client.clone(), format!("{base_path}_1y")),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_All {
|
||||
pub sd: SeriesPattern1<StoredF32>,
|
||||
pub zscore: SeriesPattern1<StoredF32>,
|
||||
pub _0sd: CentsSatsUsdPattern,
|
||||
pub p0_5sd: PriceRatioPattern,
|
||||
pub p1sd: PriceRatioPattern,
|
||||
pub p1_5sd: PriceRatioPattern,
|
||||
pub p2sd: PriceRatioPattern,
|
||||
pub p2_5sd: PriceRatioPattern,
|
||||
pub p3sd: PriceRatioPattern,
|
||||
pub m0_5sd: PriceRatioPattern,
|
||||
pub m1sd: PriceRatioPattern,
|
||||
pub m1_5sd: PriceRatioPattern,
|
||||
pub m2sd: PriceRatioPattern,
|
||||
pub m2_5sd: PriceRatioPattern,
|
||||
pub m3sd: PriceRatioPattern,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_All {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
sd: SeriesPattern1::new(client.clone(), "rookie_realized_price_ratio_sd".to_string()),
|
||||
zscore: SeriesPattern1::new(client.clone(), "rookie_realized_price_ratio_zscore".to_string()),
|
||||
_0sd: CentsSatsUsdPattern::new(client.clone(), "rookie_realized_price_0sd".to_string()),
|
||||
p0_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p0_5sd".to_string()),
|
||||
p1sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p1sd".to_string()),
|
||||
p1_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p1_5sd".to_string()),
|
||||
p2sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p2sd".to_string()),
|
||||
p2_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p2_5sd".to_string()),
|
||||
p3sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p3sd".to_string()),
|
||||
m0_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m0_5sd".to_string()),
|
||||
m1sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m1sd".to_string()),
|
||||
m1_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m1_5sd".to_string()),
|
||||
m2sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m2sd".to_string()),
|
||||
m2_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m2_5sd".to_string()),
|
||||
m3sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m3sd".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_4y {
|
||||
pub sd: SeriesPattern1<StoredF32>,
|
||||
pub zscore: SeriesPattern1<StoredF32>,
|
||||
pub _0sd: CentsSatsUsdPattern,
|
||||
pub p0_5sd: PriceRatioPattern,
|
||||
pub p1sd: PriceRatioPattern,
|
||||
pub p1_5sd: PriceRatioPattern,
|
||||
pub p2sd: PriceRatioPattern,
|
||||
pub p2_5sd: PriceRatioPattern,
|
||||
pub p3sd: PriceRatioPattern,
|
||||
pub m0_5sd: PriceRatioPattern,
|
||||
pub m1sd: PriceRatioPattern,
|
||||
pub m1_5sd: PriceRatioPattern,
|
||||
pub m2sd: PriceRatioPattern,
|
||||
pub m2_5sd: PriceRatioPattern,
|
||||
pub m3sd: PriceRatioPattern,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_4y {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
sd: SeriesPattern1::new(client.clone(), "rookie_realized_price_ratio_sd_4y".to_string()),
|
||||
zscore: SeriesPattern1::new(client.clone(), "rookie_realized_price_ratio_zscore_4y".to_string()),
|
||||
_0sd: CentsSatsUsdPattern::new(client.clone(), "rookie_realized_price_0sd_4y".to_string()),
|
||||
p0_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p0_5sd_4y".to_string()),
|
||||
p1sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p1sd_4y".to_string()),
|
||||
p1_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p1_5sd_4y".to_string()),
|
||||
p2sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p2sd_4y".to_string()),
|
||||
p2_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p2_5sd_4y".to_string()),
|
||||
p3sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p3sd_4y".to_string()),
|
||||
m0_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m0_5sd_4y".to_string()),
|
||||
m1sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m1sd_4y".to_string()),
|
||||
m1_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m1_5sd_4y".to_string()),
|
||||
m2sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m2sd_4y".to_string()),
|
||||
m2_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m2_5sd_4y".to_string()),
|
||||
m3sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m3sd_4y".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_2y {
|
||||
pub sd: SeriesPattern1<StoredF32>,
|
||||
pub zscore: SeriesPattern1<StoredF32>,
|
||||
pub _0sd: CentsSatsUsdPattern,
|
||||
pub p0_5sd: PriceRatioPattern,
|
||||
pub p1sd: PriceRatioPattern,
|
||||
pub p1_5sd: PriceRatioPattern,
|
||||
pub p2sd: PriceRatioPattern,
|
||||
pub p2_5sd: PriceRatioPattern,
|
||||
pub p3sd: PriceRatioPattern,
|
||||
pub m0_5sd: PriceRatioPattern,
|
||||
pub m1sd: PriceRatioPattern,
|
||||
pub m1_5sd: PriceRatioPattern,
|
||||
pub m2sd: PriceRatioPattern,
|
||||
pub m2_5sd: PriceRatioPattern,
|
||||
pub m3sd: PriceRatioPattern,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_2y {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
sd: SeriesPattern1::new(client.clone(), "rookie_realized_price_ratio_sd_2y".to_string()),
|
||||
zscore: SeriesPattern1::new(client.clone(), "rookie_realized_price_ratio_zscore_2y".to_string()),
|
||||
_0sd: CentsSatsUsdPattern::new(client.clone(), "rookie_realized_price_0sd_2y".to_string()),
|
||||
p0_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p0_5sd_2y".to_string()),
|
||||
p1sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p1sd_2y".to_string()),
|
||||
p1_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p1_5sd_2y".to_string()),
|
||||
p2sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p2sd_2y".to_string()),
|
||||
p2_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p2_5sd_2y".to_string()),
|
||||
p3sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p3sd_2y".to_string()),
|
||||
m0_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m0_5sd_2y".to_string()),
|
||||
m1sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m1sd_2y".to_string()),
|
||||
m1_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m1_5sd_2y".to_string()),
|
||||
m2sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m2sd_2y".to_string()),
|
||||
m2_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m2_5sd_2y".to_string()),
|
||||
m3sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m3sd_2y".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_1y {
|
||||
pub sd: SeriesPattern1<StoredF32>,
|
||||
pub zscore: SeriesPattern1<StoredF32>,
|
||||
pub _0sd: CentsSatsUsdPattern,
|
||||
pub p0_5sd: PriceRatioPattern,
|
||||
pub p1sd: PriceRatioPattern,
|
||||
pub p1_5sd: PriceRatioPattern,
|
||||
pub p2sd: PriceRatioPattern,
|
||||
pub p2_5sd: PriceRatioPattern,
|
||||
pub p3sd: PriceRatioPattern,
|
||||
pub m0_5sd: PriceRatioPattern,
|
||||
pub m1sd: PriceRatioPattern,
|
||||
pub m1_5sd: PriceRatioPattern,
|
||||
pub m2sd: PriceRatioPattern,
|
||||
pub m2_5sd: PriceRatioPattern,
|
||||
pub m3sd: PriceRatioPattern,
|
||||
}
|
||||
|
||||
impl SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_1y {
|
||||
pub fn new(client: Arc<BrkClientBase>, base_path: String) -> Self {
|
||||
Self {
|
||||
sd: SeriesPattern1::new(client.clone(), "rookie_realized_price_ratio_sd_1y".to_string()),
|
||||
zscore: SeriesPattern1::new(client.clone(), "rookie_realized_price_ratio_zscore_1y".to_string()),
|
||||
_0sd: CentsSatsUsdPattern::new(client.clone(), "rookie_realized_price_0sd_1y".to_string()),
|
||||
p0_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p0_5sd_1y".to_string()),
|
||||
p1sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p1sd_1y".to_string()),
|
||||
p1_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p1_5sd_1y".to_string()),
|
||||
p2sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p2sd_1y".to_string()),
|
||||
p2_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p2_5sd_1y".to_string()),
|
||||
p3sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "p3sd_1y".to_string()),
|
||||
m0_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m0_5sd_1y".to_string()),
|
||||
m1sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m1sd_1y".to_string()),
|
||||
m1_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m1_5sd_1y".to_string()),
|
||||
m2sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m2sd_1y".to_string()),
|
||||
m2_5sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m2_5sd_1y".to_string()),
|
||||
m3sd: PriceRatioPattern::new(client.clone(), "rookie_realized_price".to_string(), "m3sd_1y".to_string()),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Series tree node.
|
||||
pub struct SeriesTree_Cohorts_Utxo_OverAmount {
|
||||
pub _1sat: ActivityOutputsRealizedSupplyUnrealizedPattern2,
|
||||
@@ -9630,7 +8953,7 @@ pub struct BrkClient {
|
||||
|
||||
impl BrkClient {
|
||||
/// Client version.
|
||||
pub const VERSION: &'static str = "v0.3.6";
|
||||
pub const VERSION: &'static str = "v0.3.2";
|
||||
|
||||
/// Create a new client with the given base URL.
|
||||
pub fn new(base_url: impl Into<String>) -> Self {
|
||||
@@ -9684,34 +9007,6 @@ impl BrkClient {
|
||||
))
|
||||
}
|
||||
|
||||
/// Decode a mainnet Bitcoin address into the BRK address type and raw payload bytes.
|
||||
pub fn decode_address_payload(address: &str) -> Result<AddressPayload> {
|
||||
decode_address_payload(address)
|
||||
}
|
||||
|
||||
/// Compute the RapidHash v3 hash-prefix for raw address payload bytes.
|
||||
pub fn address_payload_hash_prefix(payload: &[u8], nibbles: usize) -> Result<String> {
|
||||
address_payload_hash_prefix(payload, nibbles)
|
||||
}
|
||||
|
||||
/// Decode a mainnet Bitcoin address and compute its hash prefix.
|
||||
pub fn address_hash_prefix(address: &str, nibbles: usize) -> Result<AddressHashPrefix> {
|
||||
address_hash_prefix(address, nibbles)
|
||||
}
|
||||
|
||||
/// Fetch address hash-prefix matches from raw payload bytes matching `addr_type` length.
|
||||
pub fn get_address_payload_hash_prefix_matches(&self, addr_type: OutputType, payload: &[u8], nibbles: usize) -> Result<AddrHashPrefixMatches> {
|
||||
validate_address_payload_for_type(addr_type, payload)?;
|
||||
let prefix = address_payload_hash_prefix(payload, nibbles)?;
|
||||
self.get_address_hash_prefix_matches(addr_type, &prefix)
|
||||
}
|
||||
|
||||
/// Fetch address hash-prefix matches for a mainnet Bitcoin address.
|
||||
pub fn get_address_hash_prefix_matches_for_address(&self, address: &str, nibbles: usize) -> Result<AddrHashPrefixMatches> {
|
||||
let hashed = address_hash_prefix(address, nibbles)?;
|
||||
self.get_address_hash_prefix_matches(hashed.addr_type, &hashed.prefix)
|
||||
}
|
||||
|
||||
/// Health check
|
||||
///
|
||||
/// Liveness probe. Returns server identity, uptime, and indexed/computed heights from local state only (no bitcoind round-trip). For real chain-tip catch-up, see `/api/server/sync`.
|
||||
@@ -9986,16 +9281,6 @@ impl BrkClient {
|
||||
self.base.get_json(&path)
|
||||
}
|
||||
|
||||
/// Address hash-prefix matches
|
||||
///
|
||||
/// Find addresses by address type and by the first 1-16 hex nibbles of RapidHash v3 over the raw address payload bytes. Intended for privacy-preserving client-side wallet discovery without sending raw addresses or xpubs. Fetch metadata for the returned addresses through `/api/address/{address}`.
|
||||
///
|
||||
/// Endpoint: `GET /api/address/hash-prefix/{addr_type}/{prefix}`
|
||||
pub fn get_address_hash_prefix_matches(&self, addr_type: OutputType, prefix: &str) -> Result<AddrHashPrefixMatches> {
|
||||
let addr_type = address_payload_type_path(addr_type)?;
|
||||
self.base.get_json(&format!("/api/address/hash-prefix/{addr_type}/{prefix}"))
|
||||
}
|
||||
|
||||
/// Address information
|
||||
///
|
||||
/// Retrieve address information including balance and transaction counts. Supports all standard Bitcoin address types (P2PKH, P2SH, P2WPKH, P2WSH, P2TR).
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
use brk_client::{
|
||||
BrkClient, OutputType, address_hash_prefix, address_payload_hash_prefix, decode_address_payload,
|
||||
};
|
||||
|
||||
#[test]
|
||||
fn address_payload_hash_prefix_vectors() {
|
||||
let vectors = [
|
||||
(vec![0x4e, 0x73], "58101afa51a1ecfd"),
|
||||
((0_u8..20).collect::<Vec<_>>(), "c3327ecb8ae1ff23"),
|
||||
((0_u8..32).collect::<Vec<_>>(), "c0186990f026b180"),
|
||||
((0_u8..65).collect::<Vec<_>>(), "0d4b77027ae7d700"),
|
||||
];
|
||||
|
||||
for (payload, expected) in vectors.iter() {
|
||||
assert_eq!(address_payload_hash_prefix(payload, 16).unwrap(), *expected);
|
||||
assert_eq!(
|
||||
BrkClient::address_payload_hash_prefix(payload, 8).unwrap(),
|
||||
&expected[..8]
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn address_payload_hash_prefix_validation() {
|
||||
assert!(address_payload_hash_prefix(&[], 16).is_err());
|
||||
assert!(address_payload_hash_prefix(&[0; 66], 16).is_err());
|
||||
assert!(address_payload_hash_prefix(&[1, 2], 0).is_err());
|
||||
assert!(address_payload_hash_prefix(&[1, 2], 17).is_err());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn address_hash_prefix_uses_brk_address_parser() {
|
||||
let address = "1BoatSLRHtKNngkdXEeobR76b53LETtpyT";
|
||||
let decoded = decode_address_payload(address).unwrap();
|
||||
assert_eq!(decoded.addr_type, OutputType::P2PKH);
|
||||
assert_eq!(decoded.payload.len(), 20);
|
||||
|
||||
let hashed = address_hash_prefix(address, 8).unwrap();
|
||||
assert_eq!(hashed.addr_type, OutputType::P2PKH);
|
||||
assert_eq!(
|
||||
hashed.prefix,
|
||||
address_payload_hash_prefix(&decoded.payload, 8).unwrap()
|
||||
);
|
||||
}
|
||||
@@ -1,104 +0,0 @@
|
||||
use brk_traversable::Traversable;
|
||||
use rayon::iter::{IntoParallelIterator, ParallelIterator};
|
||||
use serde::Serialize;
|
||||
|
||||
use super::{CohortName, Filter};
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
|
||||
pub enum EntryPrice {
|
||||
Discount,
|
||||
Premium,
|
||||
}
|
||||
|
||||
impl EntryPrice {
|
||||
#[inline]
|
||||
pub const fn from_is_discount(is_discount: bool) -> Self {
|
||||
if is_discount {
|
||||
Self::Discount
|
||||
} else {
|
||||
Self::Premium
|
||||
}
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn is_discount(self) -> bool {
|
||||
matches!(self, Self::Discount)
|
||||
}
|
||||
}
|
||||
|
||||
pub const ENTRY_FILTERS: ByEntry<Filter> = ByEntry {
|
||||
discount: Filter::Entry(EntryPrice::Discount),
|
||||
premium: Filter::Entry(EntryPrice::Premium),
|
||||
};
|
||||
|
||||
pub const ENTRY_NAMES: ByEntry<CohortName> = ByEntry {
|
||||
discount: CohortName::new("veteran", "Veteran", "Veteran Coins"),
|
||||
premium: CohortName::new("rookie", "Rookie", "Rookie Coins"),
|
||||
};
|
||||
|
||||
#[derive(Default, Clone, Traversable, Serialize)]
|
||||
pub struct ByEntry<T> {
|
||||
pub discount: T,
|
||||
pub premium: T,
|
||||
}
|
||||
|
||||
impl ByEntry<CohortName> {
|
||||
pub const fn names() -> &'static Self {
|
||||
&ENTRY_NAMES
|
||||
}
|
||||
}
|
||||
|
||||
impl<T> ByEntry<T> {
|
||||
pub fn new<F>(mut create: F) -> Self
|
||||
where
|
||||
F: FnMut(Filter, &'static str) -> T,
|
||||
{
|
||||
let f = ENTRY_FILTERS;
|
||||
let n = ENTRY_NAMES;
|
||||
Self {
|
||||
discount: create(f.discount, n.discount.id),
|
||||
premium: create(f.premium, n.premium.id),
|
||||
}
|
||||
}
|
||||
|
||||
pub fn try_new<F, E>(mut create: F) -> Result<Self, E>
|
||||
where
|
||||
F: FnMut(Filter, &'static str) -> Result<T, E>,
|
||||
{
|
||||
let f = ENTRY_FILTERS;
|
||||
let n = ENTRY_NAMES;
|
||||
Ok(Self {
|
||||
discount: create(f.discount, n.discount.id)?,
|
||||
premium: create(f.premium, n.premium.id)?,
|
||||
})
|
||||
}
|
||||
|
||||
pub fn get(&self, entry: EntryPrice) -> &T {
|
||||
match entry {
|
||||
EntryPrice::Discount => &self.discount,
|
||||
EntryPrice::Premium => &self.premium,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn get_mut(&mut self, entry: EntryPrice) -> &mut T {
|
||||
match entry {
|
||||
EntryPrice::Discount => &mut self.discount,
|
||||
EntryPrice::Premium => &mut self.premium,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn iter(&self) -> impl Iterator<Item = &T> {
|
||||
[&self.discount, &self.premium].into_iter()
|
||||
}
|
||||
|
||||
pub fn iter_mut(&mut self) -> impl Iterator<Item = &mut T> {
|
||||
[&mut self.discount, &mut self.premium].into_iter()
|
||||
}
|
||||
|
||||
pub fn par_iter_mut(&mut self) -> impl ParallelIterator<Item = &mut T>
|
||||
where
|
||||
T: Send + Sync,
|
||||
{
|
||||
[&mut self.discount, &mut self.premium].into_par_iter()
|
||||
}
|
||||
}
|
||||
@@ -24,7 +24,7 @@ impl CohortContext {
|
||||
/// Build full name for a filter, adding prefix only for Time/Amount filters.
|
||||
///
|
||||
/// Prefix rules:
|
||||
/// - No prefix: `All`, `Term`, `Epoch`, `Class`, `Entry`, `Type`
|
||||
/// - No prefix: `All`, `Term`, `Epoch`, `Class`, `Type`
|
||||
/// - Context prefix: `Time`, `Amount`
|
||||
pub fn full_name(&self, filter: &Filter, name: &str) -> String {
|
||||
match filter {
|
||||
@@ -32,7 +32,6 @@ impl CohortContext {
|
||||
| Filter::Term(_)
|
||||
| Filter::Epoch(_)
|
||||
| Filter::Class(_)
|
||||
| Filter::Entry(_)
|
||||
| Filter::Type(_) => name.to_string(),
|
||||
Filter::Time(_) | Filter::Amount(_) => self.prefixed(name),
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
use brk_types::{Halving, OutputType, Sats, Year};
|
||||
|
||||
use super::{AmountFilter, CohortContext, EntryPrice, Term, TimeFilter};
|
||||
use super::{AmountFilter, CohortContext, Term, TimeFilter};
|
||||
|
||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||
pub enum Filter {
|
||||
@@ -10,7 +10,6 @@ pub enum Filter {
|
||||
Amount(AmountFilter),
|
||||
Epoch(Halving),
|
||||
Class(Year),
|
||||
Entry(EntryPrice),
|
||||
Type(OutputType),
|
||||
}
|
||||
|
||||
@@ -69,8 +68,7 @@ impl Filter {
|
||||
}
|
||||
|
||||
/// Whether to compute extended metrics (realized cap ratios, profit/loss ratios, percentiles)
|
||||
/// For UTXO context: true for age range cohorts (Range), aggregate cohorts (All, Term),
|
||||
/// and immutable entry valuation cohorts.
|
||||
/// For UTXO context: true only for age range cohorts (Range) and aggregate cohorts (All, Term)
|
||||
/// For address context: always false
|
||||
pub fn is_extended(&self, context: CohortContext) -> bool {
|
||||
match context {
|
||||
@@ -78,10 +76,7 @@ impl Filter {
|
||||
CohortContext::Utxo => {
|
||||
matches!(
|
||||
self,
|
||||
Filter::All
|
||||
| Filter::Term(_)
|
||||
| Filter::Time(TimeFilter::Range(_))
|
||||
| Filter::Entry(_)
|
||||
Filter::All | Filter::Term(_) | Filter::Time(TimeFilter::Range(_))
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ mod amount_range;
|
||||
mod by_addr_type;
|
||||
mod by_any_addr;
|
||||
mod by_epoch;
|
||||
mod by_entry;
|
||||
mod by_term;
|
||||
mod by_type;
|
||||
mod class;
|
||||
@@ -37,7 +36,6 @@ pub use amount_range::*;
|
||||
pub use by_addr_type::*;
|
||||
pub use by_any_addr::*;
|
||||
pub use by_epoch::*;
|
||||
pub use by_entry::*;
|
||||
pub use by_term::*;
|
||||
pub use by_type::*;
|
||||
pub use class::*;
|
||||
|
||||
@@ -2,8 +2,8 @@ use brk_traversable::Traversable;
|
||||
use rayon::prelude::*;
|
||||
|
||||
use crate::{
|
||||
AgeRange, AmountRange, ByEntry, ByEpoch, ByTerm, Class, Filter, OverAge, OverAmount,
|
||||
SpendableType, UnderAge, UnderAmount,
|
||||
AgeRange, AmountRange, ByEpoch, ByTerm, Class, Filter, OverAge, OverAmount, SpendableType,
|
||||
UnderAge, UnderAmount,
|
||||
};
|
||||
|
||||
#[derive(Default, Clone, Traversable)]
|
||||
@@ -12,7 +12,6 @@ pub struct UTXOGroups<T> {
|
||||
pub age_range: AgeRange<T>,
|
||||
pub epoch: ByEpoch<T>,
|
||||
pub class: Class<T>,
|
||||
pub entry: ByEntry<T>,
|
||||
pub over_age: OverAge<T>,
|
||||
pub over_amount: OverAmount<T>,
|
||||
pub amount_range: AmountRange<T>,
|
||||
@@ -32,7 +31,6 @@ impl<T> UTXOGroups<T> {
|
||||
age_range: AgeRange::new(&mut create),
|
||||
epoch: ByEpoch::new(&mut create),
|
||||
class: Class::new(&mut create),
|
||||
entry: ByEntry::new(&mut create),
|
||||
over_age: OverAge::new(&mut create),
|
||||
over_amount: OverAmount::new(&mut create),
|
||||
amount_range: AmountRange::new(&mut create),
|
||||
@@ -53,7 +51,6 @@ impl<T> UTXOGroups<T> {
|
||||
.chain(self.age_range.iter())
|
||||
.chain(self.epoch.iter())
|
||||
.chain(self.class.iter())
|
||||
.chain(self.entry.iter())
|
||||
.chain(self.amount_range.iter())
|
||||
.chain(self.under_amount.iter())
|
||||
.chain(self.type_.iter())
|
||||
@@ -69,7 +66,6 @@ impl<T> UTXOGroups<T> {
|
||||
.chain(self.age_range.iter_mut())
|
||||
.chain(self.epoch.iter_mut())
|
||||
.chain(self.class.iter_mut())
|
||||
.chain(self.entry.iter_mut())
|
||||
.chain(self.amount_range.iter_mut())
|
||||
.chain(self.under_amount.iter_mut())
|
||||
.chain(self.type_.iter_mut())
|
||||
@@ -88,7 +84,6 @@ impl<T> UTXOGroups<T> {
|
||||
.chain(self.age_range.par_iter_mut())
|
||||
.chain(self.epoch.par_iter_mut())
|
||||
.chain(self.class.par_iter_mut())
|
||||
.chain(self.entry.par_iter_mut())
|
||||
.chain(self.amount_range.par_iter_mut())
|
||||
.chain(self.under_amount.par_iter_mut())
|
||||
.chain(self.type_.par_iter_mut())
|
||||
@@ -99,7 +94,6 @@ impl<T> UTXOGroups<T> {
|
||||
.iter()
|
||||
.chain(self.epoch.iter())
|
||||
.chain(self.class.iter())
|
||||
.chain(self.entry.iter())
|
||||
.chain(self.amount_range.iter())
|
||||
.chain(self.type_.iter())
|
||||
}
|
||||
@@ -109,7 +103,6 @@ impl<T> UTXOGroups<T> {
|
||||
.iter_mut()
|
||||
.chain(self.epoch.iter_mut())
|
||||
.chain(self.class.iter_mut())
|
||||
.chain(self.entry.iter_mut())
|
||||
.chain(self.amount_range.iter_mut())
|
||||
.chain(self.type_.iter_mut())
|
||||
}
|
||||
@@ -122,7 +115,6 @@ impl<T> UTXOGroups<T> {
|
||||
.par_iter_mut()
|
||||
.chain(self.epoch.par_iter_mut())
|
||||
.chain(self.class.par_iter_mut())
|
||||
.chain(self.entry.par_iter_mut())
|
||||
.chain(self.amount_range.par_iter_mut())
|
||||
.chain(self.type_.par_iter_mut())
|
||||
}
|
||||
|
||||
@@ -30,34 +30,18 @@ const TREE_SIZE: usize = TIER0_COUNT + TIER1_COUNT + OVERFLOW; // 190,001
|
||||
pub(super) struct CostBasisNode {
|
||||
all_sats: i64,
|
||||
sth_sats: i64,
|
||||
discount_sats: i64,
|
||||
all_usd: i128,
|
||||
sth_usd: i128,
|
||||
discount_usd: i128,
|
||||
}
|
||||
|
||||
impl CostBasisNode {
|
||||
#[inline(always)]
|
||||
fn new_supply(sats: i64, usd: i128, is_sth: bool) -> Self {
|
||||
fn new(sats: i64, usd: i128, is_sth: bool) -> Self {
|
||||
Self {
|
||||
all_sats: sats,
|
||||
sth_sats: if is_sth { sats } else { 0 },
|
||||
discount_sats: 0,
|
||||
all_usd: usd,
|
||||
sth_usd: if is_sth { usd } else { 0 },
|
||||
discount_usd: 0,
|
||||
}
|
||||
}
|
||||
|
||||
#[inline(always)]
|
||||
fn new_discount(sats: i64, usd: i128) -> Self {
|
||||
Self {
|
||||
all_sats: 0,
|
||||
sth_sats: 0,
|
||||
discount_sats: sats,
|
||||
all_usd: 0,
|
||||
sth_usd: 0,
|
||||
discount_usd: usd,
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -67,10 +51,8 @@ impl FenwickNode for CostBasisNode {
|
||||
fn add_assign(&mut self, other: &Self) {
|
||||
self.all_sats += other.all_sats;
|
||||
self.sth_sats += other.sth_sats;
|
||||
self.discount_sats += other.discount_sats;
|
||||
self.all_usd += other.all_usd;
|
||||
self.sth_usd += other.sth_usd;
|
||||
self.discount_usd += other.discount_usd;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -169,34 +151,16 @@ impl CostBasisFenwick {
|
||||
}
|
||||
let bucket = price_to_bucket(price);
|
||||
let delta =
|
||||
CostBasisNode::new_supply(net_sats, price.as_u128() as i128 * net_sats as i128, is_sth);
|
||||
CostBasisNode::new(net_sats, price.as_u128() as i128 * net_sats as i128, is_sth);
|
||||
self.tree.add(bucket, &delta);
|
||||
self.totals.add_assign(&delta);
|
||||
}
|
||||
|
||||
/// Apply a net delta from the discount-entry cohort.
|
||||
///
|
||||
/// Supply totals are maintained from the age-range cohorts; this updates
|
||||
/// only the discount-entry partition so premium can be derived as all - discount.
|
||||
pub(super) fn apply_discount_delta(&mut self, price: CentsCompact, pending: &PendingDelta) {
|
||||
let net_sats = u64::from(pending.inc) as i64 - u64::from(pending.dec) as i64;
|
||||
if net_sats == 0 {
|
||||
return;
|
||||
}
|
||||
let bucket = price_to_bucket(price);
|
||||
let delta =
|
||||
CostBasisNode::new_discount(net_sats, price.as_u128() as i128 * net_sats as i128);
|
||||
self.tree.add(bucket, &delta);
|
||||
self.totals.add_assign(&delta);
|
||||
}
|
||||
|
||||
/// Bulk-initialize from age-range maps plus the discount-entry map.
|
||||
/// Age-range maps maintain all/STH/LTH totals; the discount-entry map
|
||||
/// maintains only the discount partition used to derive premium.
|
||||
pub(super) fn bulk_init_with_discount<'a>(
|
||||
/// Bulk-initialize from BTreeMaps (one per age-range cohort).
|
||||
/// Call after state import when all pending maps have been drained.
|
||||
pub(super) fn bulk_init<'a>(
|
||||
&mut self,
|
||||
maps: impl Iterator<Item = (&'a std::collections::BTreeMap<CentsCompact, Sats>, bool)>,
|
||||
discount_maps: impl Iterator<Item = &'a std::collections::BTreeMap<CentsCompact, Sats>>,
|
||||
) {
|
||||
self.tree.reset();
|
||||
self.totals = CostBasisNode::default();
|
||||
@@ -205,18 +169,7 @@ impl CostBasisFenwick {
|
||||
for (&price, &sats) in map.iter() {
|
||||
let bucket = price_to_bucket(price);
|
||||
let s = u64::from(sats) as i64;
|
||||
let node =
|
||||
CostBasisNode::new_supply(s, price.as_u128() as i128 * s as i128, is_sth);
|
||||
self.tree.add_raw(bucket, &node);
|
||||
self.totals.add_assign(&node);
|
||||
}
|
||||
}
|
||||
|
||||
for map in discount_maps {
|
||||
for (&price, &sats) in map.iter() {
|
||||
let bucket = price_to_bucket(price);
|
||||
let s = u64::from(sats) as i64;
|
||||
let node = CostBasisNode::new_discount(s, price.as_u128() as i128 * s as i128);
|
||||
let node = CostBasisNode::new(s, price.as_u128() as i128 * s as i128, is_sth);
|
||||
self.tree.add_raw(bucket, &node);
|
||||
self.totals.add_assign(&node);
|
||||
}
|
||||
@@ -259,26 +212,6 @@ impl CostBasisFenwick {
|
||||
)
|
||||
}
|
||||
|
||||
/// Compute percentile prices for discount-entry cohort.
|
||||
pub(super) fn percentiles_discount_entry(&self) -> PercentileResult {
|
||||
self.compute_percentiles(
|
||||
self.totals.discount_sats,
|
||||
self.totals.discount_usd,
|
||||
|n| n.discount_sats,
|
||||
|n| n.discount_usd,
|
||||
)
|
||||
}
|
||||
|
||||
/// Compute percentile prices for premium-entry cohort (all - discount).
|
||||
pub(super) fn percentiles_premium_entry(&self) -> PercentileResult {
|
||||
self.compute_percentiles(
|
||||
self.totals.all_sats - self.totals.discount_sats,
|
||||
self.totals.all_usd - self.totals.discount_usd,
|
||||
|n| n.all_sats - n.discount_sats,
|
||||
|n| n.all_usd - n.discount_usd,
|
||||
)
|
||||
}
|
||||
|
||||
fn compute_percentiles(
|
||||
&self,
|
||||
total_sats: i64,
|
||||
@@ -338,37 +271,6 @@ impl CostBasisFenwick {
|
||||
return (0, 0, 0);
|
||||
}
|
||||
|
||||
let range = self.density_range(spot_price);
|
||||
let all_range = range.all_sats.max(0);
|
||||
let sth_range = range.sth_sats.max(0);
|
||||
let lth_range = all_range - sth_range;
|
||||
|
||||
let lth_total = self.totals.all_sats - self.totals.sth_sats;
|
||||
(
|
||||
Self::to_bps(all_range, self.totals.all_sats),
|
||||
Self::to_bps(sth_range, self.totals.sth_sats),
|
||||
Self::to_bps(lth_range, lth_total),
|
||||
)
|
||||
}
|
||||
|
||||
/// Compute supply density for entry cohorts: (discount_bps, premium_bps).
|
||||
pub(super) fn entry_density(&self, spot_price: Cents) -> (u16, u16) {
|
||||
if self.totals.all_sats <= 0 {
|
||||
return (0, 0);
|
||||
}
|
||||
|
||||
let range = self.density_range(spot_price);
|
||||
let discount_range = range.discount_sats.max(0);
|
||||
let premium_range = range.all_sats.max(0) - discount_range;
|
||||
let premium_total = self.totals.all_sats - self.totals.discount_sats;
|
||||
|
||||
(
|
||||
Self::to_bps(discount_range, self.totals.discount_sats),
|
||||
Self::to_bps(premium_range, premium_total),
|
||||
)
|
||||
}
|
||||
|
||||
fn density_range(&self, spot_price: Cents) -> CostBasisNode {
|
||||
let spot_f64 = u64::from(spot_price) as f64;
|
||||
let low = Cents::from((spot_f64 * 0.95) as u64);
|
||||
let high = Cents::from((spot_f64 * 1.05) as u64);
|
||||
@@ -383,23 +285,24 @@ impl CostBasisFenwick {
|
||||
CostBasisNode::default()
|
||||
};
|
||||
|
||||
CostBasisNode {
|
||||
all_sats: cum_high.all_sats - cum_low.all_sats,
|
||||
sth_sats: cum_high.sth_sats - cum_low.sth_sats,
|
||||
discount_sats: cum_high.discount_sats - cum_low.discount_sats,
|
||||
all_usd: cum_high.all_usd - cum_low.all_usd,
|
||||
sth_usd: cum_high.sth_usd - cum_low.sth_usd,
|
||||
discount_usd: cum_high.discount_usd - cum_low.discount_usd,
|
||||
}
|
||||
}
|
||||
let all_range = (cum_high.all_sats - cum_low.all_sats).max(0);
|
||||
let sth_range = (cum_high.sth_sats - cum_low.sth_sats).max(0);
|
||||
let lth_range = all_range - sth_range;
|
||||
|
||||
#[inline(always)]
|
||||
fn to_bps(range: i64, total: i64) -> u16 {
|
||||
if total <= 0 {
|
||||
0
|
||||
} else {
|
||||
(range as f64 / total as f64 * 10000.0).round() as u16
|
||||
}
|
||||
let to_bps = |range: i64, total: i64| -> u16 {
|
||||
if total <= 0 {
|
||||
0
|
||||
} else {
|
||||
(range as f64 / total as f64 * 10000.0).round() as u16
|
||||
}
|
||||
};
|
||||
|
||||
let lth_total = self.totals.all_sats - self.totals.sth_sats;
|
||||
(
|
||||
to_bps(all_range, self.totals.all_sats),
|
||||
to_bps(sth_range, self.totals.sth_sats),
|
||||
to_bps(lth_range, lth_total),
|
||||
)
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
use std::path::Path;
|
||||
|
||||
use brk_cohort::{
|
||||
AgeRange, AmountRange, ByEntry, ByEpoch, Class, CohortContext, Filter, Filtered, OverAge,
|
||||
OverAmount, SpendableType, Term, UnderAge, UnderAmount,
|
||||
AgeRange, AmountRange, ByEpoch, Class, CohortContext, Filter, Filtered, OverAge, OverAmount,
|
||||
SpendableType, Term, UnderAge, UnderAmount,
|
||||
};
|
||||
use brk_error::Result;
|
||||
use brk_indexer::Lengths;
|
||||
@@ -16,6 +16,7 @@ use vecdb::{
|
||||
use crate::{
|
||||
blocks,
|
||||
distribution::{
|
||||
DynCohortVecs,
|
||||
metrics::{
|
||||
AllCohortMetrics, BasicCohortMetrics, CohortMetricsBase, CoreCohortMetrics,
|
||||
ExtendedAdjustedCohortMetrics, ExtendedCohortMetrics, ImportConfig,
|
||||
@@ -23,7 +24,6 @@ use crate::{
|
||||
TypeCohortMetrics,
|
||||
},
|
||||
state::UTXOCohortState,
|
||||
DynCohortVecs,
|
||||
},
|
||||
indexes,
|
||||
internal::{ValuePerBlockCumulativeRolling, WindowStartVec, Windows},
|
||||
@@ -45,7 +45,6 @@ pub struct UTXOCohorts<M: StorageMode = Rw> {
|
||||
pub over_age: OverAge<UTXOCohortVecs<CoreCohortMetrics<M>>>,
|
||||
pub epoch: ByEpoch<UTXOCohortVecs<CoreCohortMetrics<M>>>,
|
||||
pub class: Class<UTXOCohortVecs<CoreCohortMetrics<M>>>,
|
||||
pub entry: ByEntry<UTXOCohortVecs<ExtendedCohortMetrics<M>>>,
|
||||
pub over_amount: OverAmount<UTXOCohortVecs<MinimalCohortMetrics<M>>>,
|
||||
pub amount_range: AmountRange<UTXOCohortVecs<MinimalCohortMetrics<M>>>,
|
||||
pub under_amount: UnderAmount<UTXOCohortVecs<MinimalCohortMetrics<M>>>,
|
||||
@@ -68,10 +67,8 @@ pub(crate) struct UTXOCohortsTransientState {
|
||||
}
|
||||
|
||||
impl UTXOCohorts<Rw> {
|
||||
/// Separate cohorts currently total 72:
|
||||
/// 21 age + 5 epoch + 18 class + 2 entry + 15 amount + 11 spendable type.
|
||||
/// Keep small headroom because this is only Vec allocation capacity.
|
||||
const SEPARATE_COHORT_CAPACITY: usize = 82;
|
||||
/// ~71 separate cohorts (21 age + 5 epoch + 18 class + 15 amount + 12 type)
|
||||
const SEPARATE_COHORT_CAPACITY: usize = 80;
|
||||
|
||||
/// Import all UTXO cohorts from database.
|
||||
pub(crate) fn forced_import(
|
||||
@@ -139,26 +136,6 @@ impl UTXOCohorts<Rw> {
|
||||
let epoch = ByEpoch::try_new(&core_separate)?;
|
||||
let class = Class::try_new(&core_separate)?;
|
||||
|
||||
let extended_separate =
|
||||
|f: Filter, name: &'static str| -> Result<UTXOCohortVecs<ExtendedCohortMetrics>> {
|
||||
let full_name = CohortContext::Utxo.full_name(&f, name);
|
||||
let cfg = ImportConfig {
|
||||
db,
|
||||
filter: &f,
|
||||
full_name: &full_name,
|
||||
version: v,
|
||||
indexes,
|
||||
cached_starts,
|
||||
};
|
||||
let state = Some(Box::new(UTXOCohortState::new(states_path, &full_name)));
|
||||
Ok(UTXOCohortVecs::new(
|
||||
state,
|
||||
ExtendedCohortMetrics::forced_import(&cfg)?,
|
||||
))
|
||||
};
|
||||
|
||||
let entry = ByEntry::try_new(&extended_separate)?;
|
||||
|
||||
// Helper for separate cohorts with MinimalCohortMetrics + MinimalRealizedState
|
||||
let minimal_separate =
|
||||
|f: Filter, name: &'static str| -> Result<UTXOCohortVecs<MinimalCohortMetrics>> {
|
||||
@@ -304,7 +281,6 @@ impl UTXOCohorts<Rw> {
|
||||
lth,
|
||||
epoch,
|
||||
class,
|
||||
entry,
|
||||
type_,
|
||||
under_age,
|
||||
over_age,
|
||||
@@ -333,7 +309,6 @@ impl UTXOCohorts<Rw> {
|
||||
sth,
|
||||
caches,
|
||||
age_range,
|
||||
entry,
|
||||
..
|
||||
} = self;
|
||||
caches
|
||||
@@ -352,15 +327,7 @@ impl UTXOCohorts<Rw> {
|
||||
Some((map, caches.fenwick.is_sth_at(i)))
|
||||
})
|
||||
.collect();
|
||||
let discount_maps = entry
|
||||
.discount
|
||||
.state
|
||||
.as_ref()
|
||||
.map(|state| state.cost_basis_map())
|
||||
.into_iter();
|
||||
caches
|
||||
.fenwick
|
||||
.bulk_init_with_discount(maps.into_iter(), discount_maps);
|
||||
caches.fenwick.bulk_init(maps.into_iter());
|
||||
}
|
||||
|
||||
/// Apply pending deltas from all age-range cohorts to the Fenwick tree.
|
||||
@@ -371,10 +338,7 @@ impl UTXOCohorts<Rw> {
|
||||
}
|
||||
// Destructure to get separate borrows on caches and age_range
|
||||
let Self {
|
||||
caches,
|
||||
age_range,
|
||||
entry,
|
||||
..
|
||||
caches, age_range, ..
|
||||
} = self;
|
||||
for (i, sub) in age_range.iter().enumerate() {
|
||||
if let Some(state) = sub.state.as_ref() {
|
||||
@@ -384,11 +348,6 @@ impl UTXOCohorts<Rw> {
|
||||
});
|
||||
}
|
||||
}
|
||||
if let Some(state) = entry.discount.state.as_ref() {
|
||||
state.for_each_cost_basis_pending(|&price, delta| {
|
||||
caches.fenwick.apply_discount_delta(price, delta);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/// Push maturation sats to the matured vecs for the given height.
|
||||
@@ -406,7 +365,6 @@ impl UTXOCohorts<Rw> {
|
||||
age_range,
|
||||
epoch,
|
||||
class,
|
||||
entry,
|
||||
amount_range,
|
||||
type_,
|
||||
..
|
||||
@@ -416,7 +374,6 @@ impl UTXOCohorts<Rw> {
|
||||
.map(|x| x as &mut dyn DynCohortVecs)
|
||||
.chain(epoch.par_iter_mut().map(|x| x as &mut dyn DynCohortVecs))
|
||||
.chain(class.par_iter_mut().map(|x| x as &mut dyn DynCohortVecs))
|
||||
.chain(entry.par_iter_mut().map(|x| x as &mut dyn DynCohortVecs))
|
||||
.chain(
|
||||
amount_range
|
||||
.par_iter_mut()
|
||||
@@ -432,7 +389,6 @@ impl UTXOCohorts<Rw> {
|
||||
age_range,
|
||||
epoch,
|
||||
class,
|
||||
entry,
|
||||
amount_range,
|
||||
type_,
|
||||
..
|
||||
@@ -442,7 +398,6 @@ impl UTXOCohorts<Rw> {
|
||||
.map(|x| x as &mut dyn DynCohortVecs)
|
||||
.chain(epoch.iter_mut().map(|x| x as &mut dyn DynCohortVecs))
|
||||
.chain(class.iter_mut().map(|x| x as &mut dyn DynCohortVecs))
|
||||
.chain(entry.iter_mut().map(|x| x as &mut dyn DynCohortVecs))
|
||||
.chain(amount_range.iter_mut().map(|x| x as &mut dyn DynCohortVecs))
|
||||
.chain(type_.iter_mut().map(|x| x as &mut dyn DynCohortVecs))
|
||||
}
|
||||
@@ -454,7 +409,6 @@ impl UTXOCohorts<Rw> {
|
||||
.map(|x| x as &dyn DynCohortVecs)
|
||||
.chain(self.epoch.iter().map(|x| x as &dyn DynCohortVecs))
|
||||
.chain(self.class.iter().map(|x| x as &dyn DynCohortVecs))
|
||||
.chain(self.entry.iter().map(|x| x as &dyn DynCohortVecs))
|
||||
.chain(self.amount_range.iter().map(|x| x as &dyn DynCohortVecs))
|
||||
.chain(self.type_.iter().map(|x| x as &dyn DynCohortVecs))
|
||||
}
|
||||
@@ -562,7 +516,6 @@ impl UTXOCohorts<Rw> {
|
||||
);
|
||||
all.extend(self.epoch.iter_mut().map(|x| x as &mut dyn DynCohortVecs));
|
||||
all.extend(self.class.iter_mut().map(|x| x as &mut dyn DynCohortVecs));
|
||||
all.extend(self.entry.iter_mut().map(|x| x as &mut dyn DynCohortVecs));
|
||||
all.extend(
|
||||
self.amount_range
|
||||
.iter_mut()
|
||||
@@ -651,7 +604,6 @@ impl UTXOCohorts<Rw> {
|
||||
under_amount,
|
||||
epoch,
|
||||
class,
|
||||
entry,
|
||||
type_,
|
||||
..
|
||||
} = self;
|
||||
@@ -724,19 +676,6 @@ impl UTXOCohorts<Rw> {
|
||||
.compute_rest_part2(prices, starting_lengths, ss, au, exit)
|
||||
})
|
||||
}),
|
||||
Box::new(|| {
|
||||
entry.par_iter_mut().try_for_each(|v| {
|
||||
v.metrics.compute_rest_part2(
|
||||
blocks,
|
||||
prices,
|
||||
starting_lengths,
|
||||
height_to_market_cap,
|
||||
ss,
|
||||
au,
|
||||
exit,
|
||||
)
|
||||
})
|
||||
}),
|
||||
Box::new(|| {
|
||||
amount_range.par_iter_mut().try_for_each(|v| {
|
||||
v.metrics
|
||||
@@ -791,9 +730,6 @@ impl UTXOCohorts<Rw> {
|
||||
for v in self.class.iter_mut() {
|
||||
vecs.extend(v.metrics.collect_all_vecs_mut());
|
||||
}
|
||||
for v in self.entry.iter_mut() {
|
||||
vecs.extend(v.metrics.collect_all_vecs_mut());
|
||||
}
|
||||
for v in self.amount_range.iter_mut() {
|
||||
vecs.extend(v.metrics.collect_all_vecs_mut());
|
||||
}
|
||||
@@ -877,7 +813,7 @@ impl UTXOCohorts<Rw> {
|
||||
|
||||
/// Aggregate RealizedFull fields from age_range states and push to all/sth/lth.
|
||||
/// Called during the block loop after separate cohorts' push_state but before reset.
|
||||
pub(crate) fn push_overlapping(&mut self, height_price: Cents) -> Cents {
|
||||
pub(crate) fn push_overlapping(&mut self, height_price: Cents) {
|
||||
let Self {
|
||||
all,
|
||||
sth,
|
||||
@@ -916,7 +852,7 @@ impl UTXOCohorts<Rw> {
|
||||
}
|
||||
}
|
||||
|
||||
let all_capitalized_price = all.metrics.realized.push_accum(&all_acc);
|
||||
all.metrics.realized.push_accum(&all_acc);
|
||||
sth.metrics.realized.push_accum(&sth_acc);
|
||||
lth.metrics.realized.push_accum(<h_acc);
|
||||
|
||||
@@ -944,8 +880,6 @@ impl UTXOCohorts<Rw> {
|
||||
.unrealized
|
||||
.capitalized_cap_in_loss_raw
|
||||
.push(CentsSquaredSats::new(lth_ccap.1));
|
||||
|
||||
all_capitalized_price
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -50,22 +50,6 @@ impl UTXOCohorts {
|
||||
let lth = self.caches.fenwick.percentiles_lth();
|
||||
push_cost_basis(<h, lth_d, &mut self.lth.metrics.cost_basis);
|
||||
|
||||
let (discount_d, premium_d) = self.caches.fenwick.entry_density(spot_price);
|
||||
|
||||
let discount = self.caches.fenwick.percentiles_discount_entry();
|
||||
push_cost_basis(
|
||||
&discount,
|
||||
discount_d,
|
||||
&mut self.entry.discount.metrics.cost_basis,
|
||||
);
|
||||
|
||||
let premium = self.caches.fenwick.percentiles_premium_entry();
|
||||
push_cost_basis(
|
||||
&premium,
|
||||
premium_d,
|
||||
&mut self.entry.premium.metrics.cost_basis,
|
||||
);
|
||||
|
||||
let prof = self.caches.fenwick.profitability(spot_price);
|
||||
push_profitability(&prof, &mut self.profitability);
|
||||
}
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
use brk_cohort::EntryPrice;
|
||||
use brk_types::{Cents, CostBasisSnapshot, Height, Timestamp};
|
||||
use vecdb::Rw;
|
||||
|
||||
@@ -13,7 +12,6 @@ impl UTXOCohorts<Rw> {
|
||||
/// - The "under_1h" age cohort (all new UTXOs start at 0 hours old)
|
||||
/// - The appropriate epoch cohort based on block height
|
||||
/// - The appropriate class cohort based on block timestamp
|
||||
/// - The immutable entry valuation cohort based on creation price versus anchor
|
||||
/// - The appropriate output type cohort (P2PKH, P2SH, etc.)
|
||||
/// - The appropriate amount range cohort based on value
|
||||
pub(crate) fn receive(
|
||||
@@ -22,14 +20,13 @@ impl UTXOCohorts<Rw> {
|
||||
height: Height,
|
||||
timestamp: Timestamp,
|
||||
price: Cents,
|
||||
entry: EntryPrice,
|
||||
) {
|
||||
let supply_state = received.spendable_supply;
|
||||
|
||||
// Pre-compute snapshot once for cohorts sharing the block-level supply_state
|
||||
// Pre-compute snapshot once for the 3 cohorts sharing the same supply_state
|
||||
let snapshot = CostBasisSnapshot::from_utxo(price, &supply_state);
|
||||
|
||||
// New UTXOs go into under_1h plus immutable creation cohorts
|
||||
// New UTXOs go into under_1h, current epoch, and current class
|
||||
self.age_range
|
||||
.under_1h
|
||||
.state
|
||||
@@ -48,12 +45,6 @@ impl UTXOCohorts<Rw> {
|
||||
.unwrap()
|
||||
.receive_utxo_snapshot(&supply_state, &snapshot);
|
||||
}
|
||||
self.entry
|
||||
.get_mut(entry)
|
||||
.state
|
||||
.as_mut()
|
||||
.unwrap()
|
||||
.receive_utxo_snapshot(&supply_state, &snapshot);
|
||||
|
||||
// Update output type cohorts (skip types with no outputs this block)
|
||||
self.type_.iter_typed_mut().for_each(|(output_type, vecs)| {
|
||||
|
||||
@@ -49,7 +49,7 @@ impl UTXOCohorts<Rw> {
|
||||
// This is the max price between receive and send heights
|
||||
let peak_price = price_range_max.max_between(receive_height, send_height);
|
||||
|
||||
// Pre-compute once for cohorts sharing the sent supply.
|
||||
// Pre-compute once for age_range, epoch, year (all share sent.spendable_supply)
|
||||
if let Some(pre) = SendPrecomputed::new(
|
||||
&sent.spendable_supply,
|
||||
current_price,
|
||||
@@ -75,12 +75,6 @@ impl UTXOCohorts<Rw> {
|
||||
.unwrap()
|
||||
.send_utxo_precomputed(&sent.spendable_supply, &pre);
|
||||
}
|
||||
self.entry
|
||||
.get_mut(block_state.entry)
|
||||
.state
|
||||
.as_mut()
|
||||
.unwrap()
|
||||
.send_utxo_precomputed(&sent.spendable_supply, &pre);
|
||||
} else if sent.spendable_supply.utxo_count > 0 {
|
||||
// Zero-value UTXOs: just subtract supply
|
||||
self.age_range.get_mut(age).state.as_mut().unwrap().supply -=
|
||||
@@ -91,12 +85,6 @@ impl UTXOCohorts<Rw> {
|
||||
if let Some(v) = self.class.mut_vec_from_timestamp(block_state.timestamp) {
|
||||
v.state.as_mut().unwrap().supply -= &sent.spendable_supply;
|
||||
}
|
||||
self.entry
|
||||
.get_mut(block_state.entry)
|
||||
.state
|
||||
.as_mut()
|
||||
.unwrap()
|
||||
.supply -= &sent.spendable_supply;
|
||||
}
|
||||
|
||||
// Update output type cohorts (skip zero-supply entries)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
use brk_cohort::{ByAddrType, EntryPrice};
|
||||
use brk_cohort::ByAddrType;
|
||||
use brk_error::Result;
|
||||
use brk_indexer::Indexer;
|
||||
use brk_types::{
|
||||
@@ -46,7 +46,6 @@ pub(crate) fn process_blocks(
|
||||
last_height: Height,
|
||||
chain_state: &mut Vec<BlockState>,
|
||||
tx_index_to_height: &mut RangeMap<TxIndex, Height>,
|
||||
mut entry_anchor: Cents,
|
||||
cached_prices: &[Cents],
|
||||
cached_timestamps: &[Timestamp],
|
||||
cached_price_range_max: &PriceRangeMax,
|
||||
@@ -371,14 +370,9 @@ pub(crate) fn process_blocks(
|
||||
.iterate(Sats::FIFTY_BTC, OutputType::P2PK65);
|
||||
}
|
||||
|
||||
let entry = EntryPrice::from_is_discount(
|
||||
entry_anchor == Cents::ZERO || block_price <= entry_anchor,
|
||||
);
|
||||
|
||||
// Push current block state before processing cohort updates
|
||||
chain_state.push(BlockState {
|
||||
supply: transacted.spendable_supply,
|
||||
entry,
|
||||
price: block_price,
|
||||
timestamp,
|
||||
});
|
||||
@@ -417,7 +411,7 @@ pub(crate) fn process_blocks(
|
||||
|| {
|
||||
// UTXO cohorts receive/send
|
||||
vecs.utxo_cohorts
|
||||
.receive(transacted, height, timestamp, block_price, entry);
|
||||
.receive(transacted, height, timestamp, block_price);
|
||||
if let Some(min_h) =
|
||||
vecs.utxo_cohorts
|
||||
.send(height_to_sent, chain_state, ctx.price_range_max)
|
||||
@@ -466,7 +460,7 @@ pub(crate) fn process_blocks(
|
||||
let is_last_of_day = is_last_of_day[offset];
|
||||
let date_opt = is_last_of_day.then(|| Date::from(timestamp));
|
||||
|
||||
entry_anchor = push_cohort_states(
|
||||
push_cohort_states(
|
||||
&mut vecs.utxo_cohorts,
|
||||
&mut vecs.addr_cohorts,
|
||||
height,
|
||||
@@ -533,7 +527,7 @@ fn push_cohort_states(
|
||||
addr_cohorts: &mut AddrCohorts,
|
||||
height: Height,
|
||||
height_price: Cents,
|
||||
) -> Cents {
|
||||
) {
|
||||
// Phase 1: push + unrealized (no reset yet, states still needed for aggregation)
|
||||
rayon::join(
|
||||
|| {
|
||||
@@ -551,7 +545,7 @@ fn push_cohort_states(
|
||||
);
|
||||
|
||||
// Phase 2: aggregate age_range states → push to overlapping cohorts
|
||||
let all_capitalized_price = utxo_cohorts.push_overlapping(height_price);
|
||||
utxo_cohorts.push_overlapping(height_price);
|
||||
|
||||
// Phase 3: reset per-block values
|
||||
utxo_cohorts
|
||||
@@ -560,6 +554,4 @@ fn push_cohort_states(
|
||||
addr_cohorts
|
||||
.iter_separate_mut()
|
||||
.for_each(|v| v.reset_single_iteration_values());
|
||||
|
||||
all_capitalized_price
|
||||
}
|
||||
|
||||
@@ -206,7 +206,7 @@ impl RealizedFull {
|
||||
}
|
||||
|
||||
#[inline(always)]
|
||||
pub(crate) fn push_accum(&mut self, accum: &RealizedFullAccum) -> Cents {
|
||||
pub(crate) fn push_accum(&mut self, accum: &RealizedFullAccum) {
|
||||
self.cap_raw.push(accum.cap_raw);
|
||||
self.capitalized.cap_raw.push(accum.capitalized_cap_raw);
|
||||
|
||||
@@ -221,8 +221,6 @@ impl RealizedFull {
|
||||
self.capitalized.price.cents.height.push(capitalized_price);
|
||||
|
||||
self.peak_regret.value.block.cents.push(accum.peak_regret());
|
||||
|
||||
capitalized_price
|
||||
}
|
||||
|
||||
pub(crate) fn compute_rest_part1(
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
use std::ops::{Add, AddAssign, SubAssign};
|
||||
|
||||
use brk_cohort::EntryPrice;
|
||||
use brk_types::{Cents, SupplyState, Timestamp};
|
||||
use serde::Serialize;
|
||||
|
||||
@@ -9,8 +8,6 @@ pub struct BlockState {
|
||||
#[serde(flatten)]
|
||||
pub supply: SupplyState,
|
||||
#[serde(skip)]
|
||||
pub entry: EntryPrice,
|
||||
#[serde(skip)]
|
||||
pub price: Cents,
|
||||
#[serde(skip)]
|
||||
pub timestamp: Timestamp,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
use std::path::{Path, PathBuf};
|
||||
|
||||
use brk_cohort::{ByAddrType, EntryPrice, Filter};
|
||||
use brk_cohort::{ByAddrType, Filter};
|
||||
use brk_error::Result;
|
||||
use brk_indexer::Indexer;
|
||||
use brk_traversable::Traversable;
|
||||
@@ -436,34 +436,13 @@ impl Vecs {
|
||||
let end = usize::from(recovered_height);
|
||||
debug!("building supply_state vec for {} heights", recovered_height);
|
||||
let supply_state_data: Vec<_> = self.supply_state.collect_range_at(0, end);
|
||||
let capitalized_price_data: Vec<_> = self
|
||||
.utxo_cohorts
|
||||
.all
|
||||
.metrics
|
||||
.realized
|
||||
.capitalized
|
||||
.price
|
||||
.cents
|
||||
.height
|
||||
.collect_range_at(0, end);
|
||||
|
||||
let mut entry_anchor = Cents::ZERO;
|
||||
chain_state = supply_state_data
|
||||
.into_iter()
|
||||
.enumerate()
|
||||
.map(|(h, supply)| {
|
||||
let price = self.caches.prices[h];
|
||||
let entry = EntryPrice::from_is_discount(
|
||||
entry_anchor == Cents::ZERO || price <= entry_anchor,
|
||||
);
|
||||
entry_anchor = capitalized_price_data[h];
|
||||
|
||||
BlockState {
|
||||
supply,
|
||||
entry,
|
||||
price,
|
||||
timestamp: self.caches.timestamps[h],
|
||||
}
|
||||
.map(|(h, supply)| BlockState {
|
||||
supply,
|
||||
price: self.caches.prices[h],
|
||||
timestamp: self.caches.timestamps[h],
|
||||
})
|
||||
.collect();
|
||||
debug!("chain_state rebuilt");
|
||||
@@ -495,20 +474,6 @@ impl Vecs {
|
||||
let prices = std::mem::take(&mut self.caches.prices);
|
||||
let timestamps = std::mem::take(&mut self.caches.timestamps);
|
||||
let price_range_max = std::mem::take(&mut self.caches.price_range_max);
|
||||
let entry_anchor = starting_height
|
||||
.decremented()
|
||||
.and_then(|height| {
|
||||
self.utxo_cohorts
|
||||
.all
|
||||
.metrics
|
||||
.realized
|
||||
.capitalized
|
||||
.price
|
||||
.cents
|
||||
.height
|
||||
.collect_one(height)
|
||||
})
|
||||
.unwrap_or(Cents::ZERO);
|
||||
|
||||
process_blocks(
|
||||
self,
|
||||
@@ -521,7 +486,6 @@ impl Vecs {
|
||||
last_height,
|
||||
&mut chain_state,
|
||||
&mut tx_index_to_height,
|
||||
entry_anchor,
|
||||
&prices,
|
||||
×tamps,
|
||||
&price_range_max,
|
||||
|
||||
@@ -0,0 +1,279 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use bitcoin::{Network, PublicKey, ScriptBuf};
|
||||
use brk_error::{Error, OptionData, Result};
|
||||
use brk_types::{
|
||||
Addr, AddrBytes, AddrChainStats, AddrHash, AddrIndexOutPoint, AddrIndexTxIndex, AddrStats,
|
||||
AnyAddrDataIndexEnum, Dollars, Height, OutputType, Transaction, TxIndex, TxStatus, Txid,
|
||||
TypeIndex, Unit, Utxo, Vout,
|
||||
};
|
||||
use vecdb::VecIndex;
|
||||
|
||||
use crate::Query;
|
||||
|
||||
impl Query {
|
||||
pub fn addr(&self, addr: Addr) -> Result<AddrStats> {
|
||||
let computer = self.computer();
|
||||
|
||||
let script = if let Ok(addr) = bitcoin::Address::from_str(&addr) {
|
||||
if !addr.is_valid_for_network(Network::Bitcoin) {
|
||||
return Err(Error::InvalidNetwork);
|
||||
}
|
||||
let addr = addr.assume_checked();
|
||||
addr.script_pubkey()
|
||||
} else if let Ok(pubkey) = PublicKey::from_str(&addr) {
|
||||
ScriptBuf::new_p2pk(&pubkey)
|
||||
} else {
|
||||
return Err(Error::InvalidAddr);
|
||||
};
|
||||
|
||||
let output_type = OutputType::from(&script);
|
||||
let Ok(bytes) = AddrBytes::try_from((&script, output_type)) else {
|
||||
return Err(Error::InvalidAddr);
|
||||
};
|
||||
let hash = AddrHash::from(&bytes);
|
||||
let type_index = self.type_index_for(output_type, &hash)?;
|
||||
|
||||
if type_index >= self.safe_lengths().to_type_index(output_type) {
|
||||
return Err(Error::UnknownAddr);
|
||||
}
|
||||
|
||||
let any_addr_index = computer
|
||||
.distribution
|
||||
.any_addr_indexes
|
||||
.get_once(output_type, type_index)?;
|
||||
|
||||
let (addr_data, realized_price) = match any_addr_index.to_enum() {
|
||||
AnyAddrDataIndexEnum::Funded(index) => {
|
||||
let data = computer
|
||||
.distribution
|
||||
.addrs_data
|
||||
.funded
|
||||
.reader()
|
||||
.get(usize::from(index));
|
||||
let price = data.realized_price().to_dollars();
|
||||
(data, price)
|
||||
}
|
||||
AnyAddrDataIndexEnum::Empty(index) => {
|
||||
let data = computer
|
||||
.distribution
|
||||
.addrs_data
|
||||
.empty
|
||||
.reader()
|
||||
.get(usize::from(index))
|
||||
.into();
|
||||
(data, Dollars::default())
|
||||
}
|
||||
};
|
||||
|
||||
Ok(AddrStats {
|
||||
addr,
|
||||
addr_type: output_type,
|
||||
chain_stats: AddrChainStats {
|
||||
type_index,
|
||||
funded_txo_count: addr_data.funded_txo_count,
|
||||
funded_txo_sum: addr_data.received,
|
||||
spent_txo_count: addr_data.spent_txo_count,
|
||||
spent_txo_sum: addr_data.sent,
|
||||
tx_count: addr_data.tx_count,
|
||||
realized_price,
|
||||
},
|
||||
mempool_stats: self
|
||||
.mempool()
|
||||
.and_then(|m| m.addr_stats(&bytes))
|
||||
.unwrap_or_default(),
|
||||
})
|
||||
}
|
||||
|
||||
pub fn addr_txs_chain(
|
||||
&self,
|
||||
addr: &Addr,
|
||||
after_txid: Option<Txid>,
|
||||
limit: usize,
|
||||
) -> Result<Vec<Transaction>> {
|
||||
let txindices = self.addr_txindices(addr, after_txid, limit)?;
|
||||
self.transactions_by_indices(&txindices)
|
||||
}
|
||||
|
||||
pub fn addr_txids(
|
||||
&self,
|
||||
addr: Addr,
|
||||
after_txid: Option<Txid>,
|
||||
limit: usize,
|
||||
) -> Result<Vec<Txid>> {
|
||||
let txindices = self.addr_txindices(&addr, after_txid, limit)?;
|
||||
let txid_reader = self.indexer().vecs.transactions.txid.reader();
|
||||
Ok(txindices
|
||||
.into_iter()
|
||||
.map(|tx_index| txid_reader.get(tx_index.to_usize()))
|
||||
.collect())
|
||||
}
|
||||
|
||||
fn addr_txindices(
|
||||
&self,
|
||||
addr: &Addr,
|
||||
after_txid: Option<Txid>,
|
||||
limit: usize,
|
||||
) -> Result<Vec<TxIndex>> {
|
||||
let stores = &self.indexer().stores;
|
||||
|
||||
let (output_type, type_index) = self.resolve_addr(addr)?;
|
||||
|
||||
let store = stores
|
||||
.addr_type_to_addr_index_and_tx_index
|
||||
.get(output_type)
|
||||
.data()?;
|
||||
|
||||
let tx_index_len = self.safe_lengths().tx_index;
|
||||
|
||||
if let Some(after_txid) = after_txid {
|
||||
let after_tx_index = self.resolve_tx_index(&after_txid)?;
|
||||
let min = AddrIndexTxIndex::min_for_addr(type_index);
|
||||
let cursor = AddrIndexTxIndex::from((type_index, after_tx_index));
|
||||
Ok(store
|
||||
.range(min..cursor)
|
||||
.rev()
|
||||
.map(|(key, _): (AddrIndexTxIndex, Unit)| key.tx_index())
|
||||
.filter(|tx_index| *tx_index < tx_index_len)
|
||||
.take(limit)
|
||||
.collect())
|
||||
} else {
|
||||
Ok(store
|
||||
.prefix(type_index)
|
||||
.rev()
|
||||
.map(|(key, _): (AddrIndexTxIndex, Unit)| key.tx_index())
|
||||
.filter(|tx_index| *tx_index < tx_index_len)
|
||||
.take(limit)
|
||||
.collect())
|
||||
}
|
||||
}
|
||||
|
||||
pub fn addr_utxos(&self, addr: Addr, max_utxos: usize) -> Result<Vec<Utxo>> {
|
||||
let indexer = self.indexer();
|
||||
let stores = &indexer.stores;
|
||||
let vecs = &indexer.vecs;
|
||||
|
||||
let (output_type, type_index) = self.resolve_addr(&addr)?;
|
||||
|
||||
let store = stores
|
||||
.addr_type_to_addr_index_and_unspent_outpoint
|
||||
.get(output_type)
|
||||
.data()?;
|
||||
|
||||
let tx_index_len = self.safe_lengths().tx_index;
|
||||
let outpoints: Vec<(TxIndex, Vout)> = store
|
||||
.prefix(type_index)
|
||||
.map(|(key, _): (AddrIndexOutPoint, Unit)| (key.tx_index(), key.vout()))
|
||||
.filter(|(tx_index, _)| *tx_index < tx_index_len)
|
||||
.take(max_utxos + 1)
|
||||
.collect();
|
||||
if outpoints.len() > max_utxos {
|
||||
return Err(Error::TooManyUtxos);
|
||||
}
|
||||
|
||||
let txid_reader = vecs.transactions.txid.reader();
|
||||
let first_txout_index_reader = vecs.transactions.first_txout_index.reader();
|
||||
let value_reader = vecs.outputs.value.reader();
|
||||
|
||||
let mut cached_status: Option<(Height, TxStatus)> = None;
|
||||
let mut utxos = Vec::with_capacity(outpoints.len());
|
||||
|
||||
for (tx_index, vout) in outpoints {
|
||||
let txid = txid_reader.get(tx_index.to_usize());
|
||||
let first_txout_index = first_txout_index_reader.get(tx_index.to_usize());
|
||||
let value = value_reader.get(usize::from(first_txout_index + vout));
|
||||
|
||||
let height = self.confirmed_status_height(tx_index)?;
|
||||
let status = if let Some((h, ref s)) = cached_status
|
||||
&& h == height
|
||||
{
|
||||
s.clone()
|
||||
} else {
|
||||
let s = self.confirmed_status_at(height)?;
|
||||
cached_status = Some((height, s.clone()));
|
||||
s
|
||||
};
|
||||
|
||||
utxos.push(Utxo {
|
||||
txid,
|
||||
vout,
|
||||
status,
|
||||
value,
|
||||
});
|
||||
}
|
||||
|
||||
Ok(utxos)
|
||||
}
|
||||
|
||||
pub fn addr_mempool_hash(&self, addr: &Addr) -> Option<u64> {
|
||||
let mempool = self.mempool()?;
|
||||
let bytes = AddrBytes::from_str(addr).ok()?;
|
||||
mempool.addr_state_hash(&bytes)
|
||||
}
|
||||
|
||||
pub fn addr_mempool_txs(&self, addr: &Addr, limit: usize) -> Result<Vec<Transaction>> {
|
||||
let bytes = AddrBytes::from_str(addr)?;
|
||||
let mempool = self.mempool().ok_or(Error::MempoolNotAvailable)?;
|
||||
Ok(mempool.addr_txs(&bytes, limit))
|
||||
}
|
||||
|
||||
/// Height of the last on-chain activity for an address (last tx_index to height).
|
||||
/// With `before_txid`, returns the newest activity strictly older than that
|
||||
/// cursor. Used by paginated chain etags so a new tx above the cursor
|
||||
/// doesn't invalidate deeper pages.
|
||||
pub fn addr_last_activity_height(
|
||||
&self,
|
||||
addr: &Addr,
|
||||
before_txid: Option<&Txid>,
|
||||
) -> Result<Height> {
|
||||
let (output_type, type_index) = self.resolve_addr(addr)?;
|
||||
let store = self
|
||||
.indexer()
|
||||
.stores
|
||||
.addr_type_to_addr_index_and_tx_index
|
||||
.get(output_type)
|
||||
.data()?;
|
||||
let tx_index_len = self.safe_lengths().tx_index;
|
||||
let last_tx_index = match before_txid {
|
||||
Some(txid) => {
|
||||
let before_tx_index = self.resolve_tx_index(txid)?;
|
||||
let min = AddrIndexTxIndex::min_for_addr(type_index);
|
||||
let cursor = AddrIndexTxIndex::from((type_index, before_tx_index));
|
||||
store
|
||||
.range(min..cursor)
|
||||
.rev()
|
||||
.map(|(key, _): (AddrIndexTxIndex, Unit)| key.tx_index())
|
||||
.find(|tx_index| *tx_index < tx_index_len)
|
||||
.ok_or(Error::UnknownAddr)?
|
||||
}
|
||||
None => store
|
||||
.prefix(type_index)
|
||||
.rev()
|
||||
.map(|(key, _): (AddrIndexTxIndex, Unit)| key.tx_index())
|
||||
.find(|tx_index| *tx_index < tx_index_len)
|
||||
.ok_or(Error::UnknownAddr)?,
|
||||
};
|
||||
self.confirmed_status_height(last_tx_index)
|
||||
}
|
||||
|
||||
fn resolve_addr(&self, addr: &Addr) -> Result<(OutputType, TypeIndex)> {
|
||||
let bytes = AddrBytes::from_str(addr)?;
|
||||
let output_type = OutputType::from(&bytes);
|
||||
let hash = AddrHash::from(&bytes);
|
||||
let type_index = self.type_index_for(output_type, &hash)?;
|
||||
Ok((output_type, type_index))
|
||||
}
|
||||
|
||||
/// Lookup the per-type index of an address by `(output_type, hash)`.
|
||||
/// Returns `UnknownAddr` if the hash is absent from the type's index.
|
||||
fn type_index_for(&self, output_type: OutputType, hash: &AddrHash) -> Result<TypeIndex> {
|
||||
self.indexer()
|
||||
.stores
|
||||
.addr_type_to_addr_hash_to_addr_index
|
||||
.get(output_type)
|
||||
.data()?
|
||||
.get(hash)?
|
||||
.map(|cow| cow.into_owned())
|
||||
.ok_or(Error::UnknownAddr)
|
||||
}
|
||||
}
|
||||
@@ -1,45 +0,0 @@
|
||||
use brk_error::{Error, OptionData, Result};
|
||||
use brk_types::{Addr, AddrIndexTxIndex, Height, Txid, Unit};
|
||||
|
||||
use crate::Query;
|
||||
|
||||
impl Query {
|
||||
/// Height of the last on-chain activity for an address (last tx_index to height).
|
||||
/// With `before_txid`, returns the newest activity strictly older than that
|
||||
/// cursor. Used by paginated chain etags so a new tx above the cursor
|
||||
/// doesn't invalidate deeper pages.
|
||||
pub fn addr_last_activity_height(
|
||||
&self,
|
||||
addr: &Addr,
|
||||
before_txid: Option<&Txid>,
|
||||
) -> Result<Height> {
|
||||
let (output_type, type_index) = self.resolve_addr(addr)?;
|
||||
let store = self
|
||||
.indexer()
|
||||
.stores
|
||||
.addr_type_to_addr_index_and_tx_index
|
||||
.get(output_type)
|
||||
.data()?;
|
||||
let tx_index_len = self.safe_lengths().tx_index;
|
||||
let last_tx_index = match before_txid {
|
||||
Some(txid) => {
|
||||
let before_tx_index = self.resolve_tx_index(txid)?;
|
||||
let min = AddrIndexTxIndex::min_for_addr(type_index);
|
||||
let cursor = AddrIndexTxIndex::from((type_index, before_tx_index));
|
||||
store
|
||||
.range(min..cursor)
|
||||
.rev()
|
||||
.map(|(key, _): (AddrIndexTxIndex, Unit)| key.tx_index())
|
||||
.find(|tx_index| *tx_index < tx_index_len)
|
||||
.ok_or(Error::UnknownAddr)?
|
||||
}
|
||||
None => store
|
||||
.prefix(type_index)
|
||||
.rev()
|
||||
.map(|(key, _): (AddrIndexTxIndex, Unit)| key.tx_index())
|
||||
.find(|tx_index| *tx_index < tx_index_len)
|
||||
.ok_or(Error::UnknownAddr)?,
|
||||
};
|
||||
self.confirmed_status_height(last_tx_index)
|
||||
}
|
||||
}
|
||||
@@ -1,115 +0,0 @@
|
||||
use brk_error::{Error, OptionData, Result};
|
||||
use brk_types::{Addr, AddrHash, AddrHashPrefixMatches, OutputType};
|
||||
|
||||
use crate::Query;
|
||||
|
||||
const ADDR_HASH_PREFIX_MATCH_LIMIT: usize = 100;
|
||||
|
||||
impl Query {
|
||||
pub fn addr_hash_prefix_matches(
|
||||
&self,
|
||||
addr_type: OutputType,
|
||||
prefix: &str,
|
||||
) -> Result<AddrHashPrefixMatches> {
|
||||
if !addr_type.is_addr() {
|
||||
return Err(Error::UnsupportedType(addr_type.to_string()));
|
||||
}
|
||||
|
||||
let prefix = AddrHashPrefix::parse(prefix)?;
|
||||
let store = self
|
||||
.indexer()
|
||||
.stores
|
||||
.addr_type_to_addr_hash_to_addr_index
|
||||
.get(addr_type)
|
||||
.data()?;
|
||||
let safe_type_index = self.safe_lengths().to_type_index(addr_type);
|
||||
let addr_readers = self.indexer().vecs.addrs.addr_readers();
|
||||
let mut addresses = Vec::new();
|
||||
let max_hash = AddrHash::new(u64::MAX);
|
||||
|
||||
if let Some(upper) = prefix.upper {
|
||||
for (_, type_index) in store.range(prefix.lower..upper) {
|
||||
if type_index >= safe_type_index {
|
||||
continue;
|
||||
}
|
||||
|
||||
let script = addr_readers.script_pubkey(addr_type, type_index);
|
||||
addresses.push(Addr::try_from((&script, addr_type))?);
|
||||
|
||||
if addresses.len() > ADDR_HASH_PREFIX_MATCH_LIMIT {
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for (_, type_index) in store.range(prefix.lower..max_hash) {
|
||||
if type_index >= safe_type_index {
|
||||
continue;
|
||||
}
|
||||
|
||||
let script = addr_readers.script_pubkey(addr_type, type_index);
|
||||
addresses.push(Addr::try_from((&script, addr_type))?);
|
||||
|
||||
if addresses.len() > ADDR_HASH_PREFIX_MATCH_LIMIT {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if addresses.len() <= ADDR_HASH_PREFIX_MATCH_LIMIT
|
||||
&& let Some(type_index) = store.get(&max_hash)?.map(|cow| cow.into_owned())
|
||||
&& type_index < safe_type_index
|
||||
{
|
||||
let script = addr_readers.script_pubkey(addr_type, type_index);
|
||||
addresses.push(Addr::try_from((&script, addr_type))?);
|
||||
}
|
||||
}
|
||||
|
||||
let truncated = addresses.len() > ADDR_HASH_PREFIX_MATCH_LIMIT;
|
||||
addresses.truncate(ADDR_HASH_PREFIX_MATCH_LIMIT);
|
||||
|
||||
Ok(AddrHashPrefixMatches {
|
||||
addr_type,
|
||||
prefix: prefix.text,
|
||||
truncated,
|
||||
addresses,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
struct AddrHashPrefix {
|
||||
text: String,
|
||||
lower: AddrHash,
|
||||
upper: Option<AddrHash>,
|
||||
}
|
||||
|
||||
impl AddrHashPrefix {
|
||||
const MAX_NIBBLES: usize = u64::BITS as usize / 4;
|
||||
|
||||
fn parse(prefix: &str) -> Result<Self> {
|
||||
let nibbles = prefix.len();
|
||||
if !(1..=Self::MAX_NIBBLES).contains(&nibbles) {
|
||||
return Err(Self::parse_error());
|
||||
}
|
||||
|
||||
let value = u64::from_str_radix(prefix, 16).map_err(|_| Self::parse_error())?;
|
||||
let shift = (Self::MAX_NIBBLES - nibbles) * 4;
|
||||
let factor = 1_u64 << shift;
|
||||
let lower = value * factor;
|
||||
let upper = value
|
||||
.checked_add(1)
|
||||
.and_then(|value| value.checked_mul(factor))
|
||||
.map(AddrHash::new);
|
||||
|
||||
Ok(Self {
|
||||
text: prefix.to_ascii_lowercase(),
|
||||
lower: AddrHash::new(lower),
|
||||
upper,
|
||||
})
|
||||
}
|
||||
|
||||
fn parse_error() -> Error {
|
||||
Error::Parse(format!(
|
||||
"hash prefix must be 1 to {} hexadecimal characters",
|
||||
Self::MAX_NIBBLES
|
||||
))
|
||||
}
|
||||
}
|
||||
@@ -1,20 +0,0 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use brk_error::{Error, Result};
|
||||
use brk_types::{Addr, AddrBytes, Transaction};
|
||||
|
||||
use crate::Query;
|
||||
|
||||
impl Query {
|
||||
pub fn addr_mempool_hash(&self, addr: &Addr) -> Option<u64> {
|
||||
let mempool = self.mempool()?;
|
||||
let bytes = AddrBytes::from_str(addr).ok()?;
|
||||
mempool.addr_state_hash(&bytes)
|
||||
}
|
||||
|
||||
pub fn addr_mempool_txs(&self, addr: &Addr, limit: usize) -> Result<Vec<Transaction>> {
|
||||
let bytes = AddrBytes::from_str(addr)?;
|
||||
let mempool = self.mempool().ok_or(Error::MempoolNotAvailable)?;
|
||||
Ok(mempool.addr_txs(&bytes, limit))
|
||||
}
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
mod activity;
|
||||
mod hash_prefix;
|
||||
mod mempool;
|
||||
mod resolve;
|
||||
mod stats;
|
||||
mod txs;
|
||||
mod utxos;
|
||||
@@ -1,33 +0,0 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use brk_error::{Error, OptionData, Result};
|
||||
use brk_types::{Addr, AddrBytes, AddrHash, OutputType, TypeIndex};
|
||||
|
||||
use crate::Query;
|
||||
|
||||
impl Query {
|
||||
pub(super) fn resolve_addr(&self, addr: &Addr) -> Result<(OutputType, TypeIndex)> {
|
||||
let bytes = AddrBytes::from_str(addr)?;
|
||||
let output_type = OutputType::from(&bytes);
|
||||
let hash = AddrHash::from(&bytes);
|
||||
let type_index = self.type_index_for(output_type, &hash)?;
|
||||
Ok((output_type, type_index))
|
||||
}
|
||||
|
||||
/// Lookup the per-type index of an address by `(output_type, hash)`.
|
||||
/// Returns `UnknownAddr` if the hash is absent from the type's index.
|
||||
pub(super) fn type_index_for(
|
||||
&self,
|
||||
output_type: OutputType,
|
||||
hash: &AddrHash,
|
||||
) -> Result<TypeIndex> {
|
||||
self.indexer()
|
||||
.stores
|
||||
.addr_type_to_addr_hash_to_addr_index
|
||||
.get(output_type)
|
||||
.data()?
|
||||
.get(hash)?
|
||||
.map(|cow| cow.into_owned())
|
||||
.ok_or(Error::UnknownAddr)
|
||||
}
|
||||
}
|
||||
@@ -1,78 +0,0 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use brk_error::{Error, Result};
|
||||
use brk_types::{
|
||||
Addr, AddrBytes, AddrChainStats, AddrHash, AddrStats, AnyAddrDataIndexEnum, Dollars,
|
||||
OutputType, TypeIndex,
|
||||
};
|
||||
|
||||
use crate::Query;
|
||||
|
||||
impl Query {
|
||||
pub fn addr(&self, addr: Addr) -> Result<AddrStats> {
|
||||
let bytes = AddrBytes::from_str(&addr)?;
|
||||
let output_type = OutputType::from(&bytes);
|
||||
let hash = AddrHash::from(&bytes);
|
||||
let type_index = self.type_index_for(output_type, &hash)?;
|
||||
self.addr_stats(addr, bytes, output_type, type_index)
|
||||
}
|
||||
|
||||
fn addr_stats(
|
||||
&self,
|
||||
addr: Addr,
|
||||
bytes: AddrBytes,
|
||||
output_type: OutputType,
|
||||
type_index: TypeIndex,
|
||||
) -> Result<AddrStats> {
|
||||
if type_index >= self.safe_lengths().to_type_index(output_type) {
|
||||
return Err(Error::UnknownAddr);
|
||||
}
|
||||
|
||||
let computer = self.computer();
|
||||
let any_addr_index = computer
|
||||
.distribution
|
||||
.any_addr_indexes
|
||||
.get_once(output_type, type_index)?;
|
||||
|
||||
let (addr_data, realized_price) = match any_addr_index.to_enum() {
|
||||
AnyAddrDataIndexEnum::Funded(index) => {
|
||||
let data = computer
|
||||
.distribution
|
||||
.addrs_data
|
||||
.funded
|
||||
.reader()
|
||||
.get(usize::from(index));
|
||||
let price = data.realized_price().to_dollars();
|
||||
(data, price)
|
||||
}
|
||||
AnyAddrDataIndexEnum::Empty(index) => {
|
||||
let data = computer
|
||||
.distribution
|
||||
.addrs_data
|
||||
.empty
|
||||
.reader()
|
||||
.get(usize::from(index))
|
||||
.into();
|
||||
(data, Dollars::default())
|
||||
}
|
||||
};
|
||||
|
||||
Ok(AddrStats {
|
||||
addr,
|
||||
addr_type: output_type,
|
||||
chain_stats: AddrChainStats {
|
||||
type_index,
|
||||
funded_txo_count: addr_data.funded_txo_count,
|
||||
funded_txo_sum: addr_data.received,
|
||||
spent_txo_count: addr_data.spent_txo_count,
|
||||
spent_txo_sum: addr_data.sent,
|
||||
tx_count: addr_data.tx_count,
|
||||
realized_price,
|
||||
},
|
||||
mempool_stats: self
|
||||
.mempool()
|
||||
.and_then(|m| m.addr_stats(&bytes))
|
||||
.unwrap_or_default(),
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -1,70 +0,0 @@
|
||||
use brk_error::{OptionData, Result};
|
||||
use brk_types::{Addr, AddrIndexTxIndex, Transaction, TxIndex, Txid, Unit};
|
||||
use vecdb::VecIndex;
|
||||
|
||||
use crate::Query;
|
||||
|
||||
impl Query {
|
||||
pub fn addr_txs_chain(
|
||||
&self,
|
||||
addr: &Addr,
|
||||
after_txid: Option<Txid>,
|
||||
limit: usize,
|
||||
) -> Result<Vec<Transaction>> {
|
||||
let txindices = self.addr_txindices(addr, after_txid, limit)?;
|
||||
self.transactions_by_indices(&txindices)
|
||||
}
|
||||
|
||||
pub fn addr_txids(
|
||||
&self,
|
||||
addr: Addr,
|
||||
after_txid: Option<Txid>,
|
||||
limit: usize,
|
||||
) -> Result<Vec<Txid>> {
|
||||
let txindices = self.addr_txindices(&addr, after_txid, limit)?;
|
||||
let txid_reader = self.indexer().vecs.transactions.txid.reader();
|
||||
Ok(txindices
|
||||
.into_iter()
|
||||
.map(|tx_index| txid_reader.get(tx_index.to_usize()))
|
||||
.collect())
|
||||
}
|
||||
|
||||
fn addr_txindices(
|
||||
&self,
|
||||
addr: &Addr,
|
||||
after_txid: Option<Txid>,
|
||||
limit: usize,
|
||||
) -> Result<Vec<TxIndex>> {
|
||||
let stores = &self.indexer().stores;
|
||||
|
||||
let (output_type, type_index) = self.resolve_addr(addr)?;
|
||||
|
||||
let store = stores
|
||||
.addr_type_to_addr_index_and_tx_index
|
||||
.get(output_type)
|
||||
.data()?;
|
||||
|
||||
let tx_index_len = self.safe_lengths().tx_index;
|
||||
|
||||
if let Some(after_txid) = after_txid {
|
||||
let after_tx_index = self.resolve_tx_index(&after_txid)?;
|
||||
let min = AddrIndexTxIndex::min_for_addr(type_index);
|
||||
let cursor = AddrIndexTxIndex::from((type_index, after_tx_index));
|
||||
Ok(store
|
||||
.range(min..cursor)
|
||||
.rev()
|
||||
.map(|(key, _): (AddrIndexTxIndex, Unit)| key.tx_index())
|
||||
.filter(|tx_index| *tx_index < tx_index_len)
|
||||
.take(limit)
|
||||
.collect())
|
||||
} else {
|
||||
Ok(store
|
||||
.prefix(type_index)
|
||||
.rev()
|
||||
.map(|(key, _): (AddrIndexTxIndex, Unit)| key.tx_index())
|
||||
.filter(|tx_index| *tx_index < tx_index_len)
|
||||
.take(limit)
|
||||
.collect())
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,64 +0,0 @@
|
||||
use brk_error::{Error, OptionData, Result};
|
||||
use brk_types::{Addr, AddrIndexOutPoint, Height, TxIndex, TxStatus, Unit, Utxo, Vout};
|
||||
use vecdb::VecIndex;
|
||||
|
||||
use crate::Query;
|
||||
|
||||
impl Query {
|
||||
pub fn addr_utxos(&self, addr: Addr, max_utxos: usize) -> Result<Vec<Utxo>> {
|
||||
let indexer = self.indexer();
|
||||
let stores = &indexer.stores;
|
||||
let vecs = &indexer.vecs;
|
||||
|
||||
let (output_type, type_index) = self.resolve_addr(&addr)?;
|
||||
|
||||
let store = stores
|
||||
.addr_type_to_addr_index_and_unspent_outpoint
|
||||
.get(output_type)
|
||||
.data()?;
|
||||
|
||||
let tx_index_len = self.safe_lengths().tx_index;
|
||||
let outpoints: Vec<(TxIndex, Vout)> = store
|
||||
.prefix(type_index)
|
||||
.map(|(key, _): (AddrIndexOutPoint, Unit)| (key.tx_index(), key.vout()))
|
||||
.filter(|(tx_index, _)| *tx_index < tx_index_len)
|
||||
.take(max_utxos + 1)
|
||||
.collect();
|
||||
if outpoints.len() > max_utxos {
|
||||
return Err(Error::TooManyUtxos);
|
||||
}
|
||||
|
||||
let txid_reader = vecs.transactions.txid.reader();
|
||||
let first_txout_index_reader = vecs.transactions.first_txout_index.reader();
|
||||
let value_reader = vecs.outputs.value.reader();
|
||||
|
||||
let mut cached_status: Option<(Height, TxStatus)> = None;
|
||||
let mut utxos = Vec::with_capacity(outpoints.len());
|
||||
|
||||
for (tx_index, vout) in outpoints {
|
||||
let txid = txid_reader.get(tx_index.to_usize());
|
||||
let first_txout_index = first_txout_index_reader.get(tx_index.to_usize());
|
||||
let value = value_reader.get(usize::from(first_txout_index + vout));
|
||||
|
||||
let height = self.confirmed_status_height(tx_index)?;
|
||||
let status = if let Some((h, ref s)) = cached_status
|
||||
&& h == height
|
||||
{
|
||||
s.clone()
|
||||
} else {
|
||||
let s = self.confirmed_status_at(height)?;
|
||||
cached_status = Some((height, s.clone()));
|
||||
s
|
||||
};
|
||||
|
||||
utxos.push(Utxo {
|
||||
txid,
|
||||
vout,
|
||||
status,
|
||||
value,
|
||||
});
|
||||
}
|
||||
|
||||
Ok(utxos)
|
||||
}
|
||||
}
|
||||
@@ -3,12 +3,12 @@ use axum::{
|
||||
extract::{Path, State},
|
||||
http::{HeaderMap, Uri},
|
||||
};
|
||||
use brk_types::{AddrHashPrefixMatches, AddrStats, AddrValidation, Transaction, Utxo, Version};
|
||||
use brk_types::{AddrStats, AddrValidation, Transaction, Utxo, Version};
|
||||
|
||||
use crate::{
|
||||
AppState, CacheStrategy,
|
||||
extended::TransformResponseExtended,
|
||||
params::{AddrAfterTxidParam, AddrHashPrefixParam, AddrParam, Empty, ValidateAddrParam},
|
||||
params::{AddrAfterTxidParam, AddrParam, Empty, ValidateAddrParam},
|
||||
};
|
||||
|
||||
/// Esplora `/txs` and `/txs/chain` page sizes. Wire-protocol constants from
|
||||
@@ -26,29 +26,6 @@ pub trait AddrRoutes {
|
||||
impl AddrRoutes for ApiRouter<AppState> {
|
||||
fn add_addr_routes(self) -> Self {
|
||||
self.api_route(
|
||||
"/api/address/hash-prefix/{addr_type}/{prefix}",
|
||||
get_with(async |
|
||||
uri: Uri,
|
||||
headers: HeaderMap,
|
||||
Path(path): Path<AddrHashPrefixParam>,
|
||||
_: Empty,
|
||||
State(state): State<AppState>
|
||||
| {
|
||||
state.respond_json(&headers, CacheStrategy::Tip, &uri, move |q| {
|
||||
q.addr_hash_prefix_matches(path.addr_type, &path.prefix)
|
||||
}).await
|
||||
}, |op| op
|
||||
.id("get_address_hash_prefix_matches")
|
||||
.addrs_tag()
|
||||
.summary("Address hash-prefix matches")
|
||||
.description("Find addresses by address type and by the first 1-16 hex nibbles of RapidHash v3 over the raw address payload bytes. Intended for privacy-preserving client-side wallet discovery without sending raw addresses or xpubs. Fetch metadata for the returned addresses through `/api/address/{address}`.")
|
||||
.json_response::<AddrHashPrefixMatches>()
|
||||
.not_modified()
|
||||
.bad_request()
|
||||
.server_error()
|
||||
),
|
||||
)
|
||||
.api_route(
|
||||
"/api/address/{address}",
|
||||
get_with(async |
|
||||
uri: Uri,
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
use brk_types::OutputType;
|
||||
use schemars::JsonSchema;
|
||||
use serde::Deserialize;
|
||||
|
||||
#[derive(Deserialize, JsonSchema)]
|
||||
pub struct AddrHashPrefixParam {
|
||||
pub addr_type: OutputType,
|
||||
pub prefix: String,
|
||||
}
|
||||
@@ -1,5 +1,4 @@
|
||||
mod addr_after_txid_param;
|
||||
mod addr_hash_prefix_param;
|
||||
mod addr_param;
|
||||
mod block_count_param;
|
||||
mod blockhash_param;
|
||||
@@ -21,7 +20,6 @@ mod urpd_params;
|
||||
mod validate_addr_param;
|
||||
|
||||
pub use addr_after_txid_param::*;
|
||||
pub use addr_hash_prefix_param::*;
|
||||
pub use addr_param::*;
|
||||
pub use block_count_param::*;
|
||||
pub use blockhash_param::*;
|
||||
|
||||
@@ -16,7 +16,7 @@ indexmap = { workspace = true }
|
||||
itoa = "1.0.18"
|
||||
jiff = { workspace = true }
|
||||
pco = { workspace = true }
|
||||
rapidhash = { workspace = true }
|
||||
rapidhash = "4.4.1"
|
||||
rustc-hash = { workspace = true }
|
||||
ryu = "1.0.23"
|
||||
schemars = { workspace = true }
|
||||
|
||||
@@ -7,12 +7,6 @@ use super::AddrBytes;
|
||||
#[derive(Debug, Deref, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Bytes, Hash)]
|
||||
pub struct AddrHash(u64);
|
||||
|
||||
impl AddrHash {
|
||||
pub const fn new(value: u64) -> Self {
|
||||
Self(value)
|
||||
}
|
||||
}
|
||||
|
||||
impl From<&AddrBytes> for AddrHash {
|
||||
#[inline]
|
||||
fn from(addr_bytes: &AddrBytes) -> Self {
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
use crate::{Addr, OutputType};
|
||||
use schemars::JsonSchema;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Debug, Serialize, Deserialize, JsonSchema)]
|
||||
pub struct AddrHashPrefixMatches {
|
||||
pub addr_type: OutputType,
|
||||
pub prefix: String,
|
||||
pub truncated: bool,
|
||||
pub addresses: Vec<Addr>,
|
||||
}
|
||||
@@ -6,7 +6,6 @@ mod addr;
|
||||
mod addr_bytes;
|
||||
mod addr_chain_stats;
|
||||
mod addr_hash;
|
||||
mod addr_hash_prefix_matches;
|
||||
mod addr_index_any;
|
||||
mod addr_index_outpoint;
|
||||
mod addr_index_tx_index;
|
||||
@@ -204,7 +203,6 @@ pub use addr::*;
|
||||
pub use addr_bytes::*;
|
||||
pub use addr_chain_stats::*;
|
||||
pub use addr_hash::*;
|
||||
pub use addr_hash_prefix_matches::*;
|
||||
pub use addr_index_any::*;
|
||||
pub use addr_index_outpoint::*;
|
||||
pub use addr_index_tx_index::*;
|
||||
|
||||
@@ -6,233 +6,6 @@ All notable changes to the Bitcoin Research Kit (BRK) project will be documented
|
||||
|
||||
> *This changelog was generated by Claude Code*
|
||||
|
||||
## [v0.3.6](https://github.com/bitcoinresearchkit/brk/releases/tag/v0.3.6) - 2026-06-27
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
#### `website`
|
||||
|
||||
- Fixed chart PNG export metadata by deriving the share title and download filename from the chart heading, producing named files such as `bitview-{chart-id}.png` instead of anonymous blob exports ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.6/website/scripts/utils/chart/capture.js))
|
||||
- Fixed chart PNG export on iPhone, iPad, and iPadOS desktop user agents by treating touch-capable Mac user agents as iOS and creating the PNG blob through a synchronous data-URL path on that platform, giving mobile Safari a reliable capture payload ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.6/website/scripts/utils/env.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.6/website/scripts/utils/chart/capture.js))
|
||||
- Fixed mobile chart export delivery by routing iOS captures through the Web Share sheet when file sharing is available, allowing users to save or share generated chart PNGs through the native browser flow ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.6/website/scripts/utils/chart/capture.js))
|
||||
- Fixed popup-blocked chart exports by falling back to a named download link when `window.open` cannot open the PNG blob, preserving a working export path for browsers that block new blob tabs ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.6/website/scripts/utils/chart/capture.js))
|
||||
- Fixed exported PNG object URL lifetime by tracking opened blob URLs and revoking them on `pagehide` instead of shortly after opening, preventing exported image tabs from losing their blob before loading while still cleaning URLs when the page unloads ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.6/website/scripts/utils/chart/capture.js))
|
||||
|
||||
### Internal Changes
|
||||
|
||||
#### `clients`
|
||||
|
||||
- Regenerated the generated JavaScript client documentation so TypeDoc source links point at the released generated client snapshot, keeping documentation navigation aligned with the shipped client artifact ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.6/modules/brk-client/docs/classes/BrkClient.md))
|
||||
|
||||
[View changes](https://github.com/bitcoinresearchkit/brk/compare/v0.3.5...v0.3.6)
|
||||
|
||||
## [v0.3.5](https://github.com/bitcoinresearchkit/brk/releases/tag/v0.3.5) - 2026-06-23
|
||||
|
||||
### New Features
|
||||
|
||||
#### `brk_types`
|
||||
|
||||
- Added `AddrHashPrefixMatches`, a serializable response type carrying the requested address type, normalized hash prefix, truncation flag, and matched addresses so prefix-search results have a stable API shape ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/crates/brk_types/src/addr_hash_prefix_matches.rs))
|
||||
- Added a public `AddrHash::new(u64)` constructor, allowing query code to build typed lower and upper hash bounds for address-prefix range scans without untyped numeric casts ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/crates/brk_types/src/addr_hash.rs))
|
||||
|
||||
#### `brk_query`
|
||||
|
||||
- Added `Query::addr_hash_prefix_matches(addr_type, prefix)`, which validates address output types, accepts 1 to 16 hexadecimal prefix nibbles, range-scans address payload hashes, skips entries beyond safe index lengths, returns up to 100 candidate addresses, and sets `truncated` when a bucket is too large. Wallet clients can use this to discover anonymity-set candidates without sending raw addresses or xpubs to a public server ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/crates/brk_query/src/impl/addr/hash_prefix.rs))
|
||||
|
||||
#### `brk_server`
|
||||
|
||||
- Added `GET /api/address/hash-prefix/{addr_type}/{prefix}` with typed path parameters, tip caching, OpenAPI metadata, and `AddrHashPrefixMatches` JSON output, exposing the new prefix-search query through the HTTP API for wallet discovery clients ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/crates/brk_server/src/api/addrs.rs), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/crates/brk_server/src/params/addr_hash_prefix_param.rs))
|
||||
|
||||
#### `brk_client`
|
||||
|
||||
- Added the Rust client method `get_address_hash_prefix_matches(addr_type, prefix)`, giving Rust callers typed access to the address hash-prefix endpoint without constructing the URL by hand ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/crates/brk_client/src/lib.rs))
|
||||
|
||||
#### `clients`
|
||||
|
||||
- Added generated JavaScript and Python `AddrHashPrefixMatches` / `AddrHashPrefixParam` types and `getAddressHashPrefixMatches` / `get_address_hash_prefix_matches` methods, giving browser and Python consumers direct access to the new wallet-discovery endpoint ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/modules/brk-client/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/packages/brk_client/brk_client/__init__.py))
|
||||
- Published generated client documentation for the address hash-prefix endpoint and its request/response types, making the new API discoverable from the shipped JavaScript and Python docs ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/modules/brk-client/docs/interfaces/AddrHashPrefixMatches.md), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/packages/brk_client/DOCS.md))
|
||||
|
||||
#### `website_next`
|
||||
|
||||
- Added the `/wallets` route, Home link, stylesheet imports, and dialog support for the Wallets page, allowing users to open the watch-only wallet workspace from the next website navigation ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/routes.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/home/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/index.html))
|
||||
- Added an encrypted persistent wallet vault stored in the browser with password-based create, unlock, lock, reset, add-wallet, and delete-wallet flows, so watch-only wallet sources can persist locally without server storage ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/vault/encryption.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/vault/storage.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/vault/index.js))
|
||||
- Added a temporary vault mode that keeps imported wallets out of browser storage and can be cleared from the session controls, giving users a no-persistence option for one-off wallet checks ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/start/temporary.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/vault/index.js))
|
||||
- Added the Add Wallet dialog with name and source fields, xpub or descriptor extraction from pasted text, source redaction, and validation by deriving the first address before saving, preventing unsupported watch-only sources from entering the vault ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/add/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/add/source.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/index.js))
|
||||
- Added horizontal wallet selection with scroll snapping, add buttons, lock/clear controls, and hold-to-delete or hold-to-reset actions, making multi-wallet navigation and destructive actions available without accidental single-click deletion ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/selector/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/hold/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/start/reset/index.js))
|
||||
- Added a privacy redaction system for wallet sources, balances, dates, txids, and addresses, including a page-level Privacy/Reveal toggle that keeps sensitive values masked during wallet viewing ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/redaction/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/amount/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/index.js))
|
||||
- Added browser-side parsing for `xpub`, `ypub`, `zpub`, `tpub`, `upub`, and `vpub` keys plus non-hardened BIP32 public derivation, allowing the Wallets page to derive watch-only receive, change, and direct branches locally ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/derive/key.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/derive/bip32.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/derive/index.js))
|
||||
- Added browser-side address encoding and crypto helpers for Base58Check, Bech32, Bech32m, SHA-256, RIPEMD-160, HMAC-SHA512, secp256k1 public-key tweaks, P2PKH, nested P2WPKH, native P2WPKH, and P2TR address generation, keeping single-key wallet derivation on the client device ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/derive/address.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/derive/hash.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/derive/secp256k1.js))
|
||||
- Added `wsh(sortedmulti(...))` descriptor support with checksum stripping, origin metadata tolerance, ranged non-hardened paths, receive/change descriptor selection, network consistency checks, BIP-sorted multisig script construction, and native P2WSH address generation, allowing multisig watch-only descriptors to be scanned from the browser ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/derive/descriptor.js))
|
||||
- Added wallet scanning across supported scripts and branches with a 10-unused-address gap limit, a 1,000-address scan ceiling, progress messages, cached runtime results, BTC/USD price loading, and next receive-address selection based on observed activity, so wallet scans can stop predictably and present a usable receive address ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/scan/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/scan/branches.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/vault/runtime.js))
|
||||
- Added public-server wallet lookup through RapidHash v3 address-payload prefixes, expanding from 4 to 16 prefix nibbles until the returned bucket is not truncated; local and private servers use direct address lookups instead. This lets public scans fetch metadata for anonymity-set buckets while local scans avoid unnecessary bucket work ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/lookup/bucket.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/lookup/hash.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/lookup/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/lookup/local.js))
|
||||
- Added the wallet summary panel with total BTC balance, USD value from the live price endpoint, and redaction-aware amount rendering, giving users an immediate portfolio-level view after a scan completes ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/summary/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/amount/index.js))
|
||||
- Added a Receive dialog for the selected next receive address, including branch/index labeling, a `bitcoin:` QR code, grouped address rendering, copy-to-clipboard handling, and close-on-backdrop behavior ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/receive/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/address/index.js))
|
||||
- Added the History tab, which loads transactions for used wallet addresses, caches bucket histories, de-duplicates transactions by txid, groups confirmed transactions by date and mempool transactions separately, classifies receive/send/consolidation activity, and shows expandable fee, txid, and involved-address details ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/history/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/history/cache.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/history/transaction.js))
|
||||
- Added the Holdings tab, which loads UTXOs for positive-balance wallet addresses, caches bucket UTXO responses, treats missing addresses as empty, sorts spendable outputs by value, and displays confirmed or mempool outpoints with their owning wallet address ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/holdings/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/holdings/cache.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/holdings/utxo.js))
|
||||
- Added the Addresses tab, listing used wallet addresses with branch labels, derivation indexes, balances, transaction counts, grouped redaction-aware address text, and anonymity-set sizes so users can inspect what the scan found and how private each public lookup bucket was ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/addresses/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/wallet/address/index.js))
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
#### `brk_bindgen`
|
||||
|
||||
- Fixed generated JavaScript client base URL parsing by resolving the configured base URL with `URL` and browser `location.href` fallback, allowing relative API roots and exposing a reliable parsed domain for client-side local/public server decisions ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/crates/brk_bindgen/src/generators/javascript/client.rs))
|
||||
|
||||
#### `clients`
|
||||
|
||||
- Applied the JavaScript base URL parsing fix to the shipped generated browser client, so consumers can instantiate the client with relative paths while `client.url` and `client.domain` still resolve to normalized values ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/modules/brk-client/index.js))
|
||||
|
||||
### Internal Changes
|
||||
|
||||
#### `brk_query`
|
||||
|
||||
- Split address query code into focused `activity`, `hash_prefix`, `mempool`, `resolve`, `stats`, `txs`, and `utxos` modules while keeping the existing address stats, transaction, UTXO, mempool, and last-activity query behavior available through the same `Query` methods ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/crates/brk_query/src/impl/addr/mod.rs), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/crates/brk_query/src/impl/addr/resolve.rs))
|
||||
|
||||
#### `website_next`
|
||||
|
||||
- Replaced the embedded `website_next` generated client copy with a link to the workspace `modules` directory and excluded that module link from TypeScript checking, keeping the next website on the shared generated client bundle used elsewhere in the workspace ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/modules), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/tsconfig.json))
|
||||
- Added shared wallet UI primitives for buttons, link-buttons, input fields, dialogs, busy states, status messages, number formatting, BTC amount rendering, redaction synchronization, and hold-to-confirm actions, giving the Wallets page reusable behavior for its vault, scanner, and wallet detail panels ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/styles/main.css), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/dialog/style.css), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/dom.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.5/website_next/wallets/format.js))
|
||||
|
||||
[View changes](https://github.com/bitcoinresearchkit/brk/compare/v0.3.4...v0.3.5)
|
||||
|
||||
## [v0.3.4](https://github.com/bitcoinresearchkit/brk/releases/tag/v0.3.4) - 2026-06-14
|
||||
|
||||
### Breaking Changes
|
||||
|
||||
#### `brk_client`
|
||||
|
||||
- Changed the generated `SeriesTree_Cohorts_Utxo_Lth_Realized.sopr` Rust field to use the shared `RatioValuePattern2` type. Code that names the generated concrete SOPR struct must use `RatioValuePattern2`, while `.sopr.ratio` and `.sopr.value_destroyed` access still point to the same series paths ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_client/src/lib.rs))
|
||||
|
||||
#### `clients`
|
||||
|
||||
- Changed the generated JavaScript and Python LTH realized SOPR node to the shared `RatioValuePattern2` shape. Consumers that refer to generated type or class names must use the shared pattern name, while existing ratio and value-destroyed property access remains available ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/modules/brk-client/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/packages/brk_client/brk_client/__init__.py))
|
||||
|
||||
### New Features
|
||||
|
||||
#### `brk_cohort`
|
||||
|
||||
- Added immutable entry-price cohorts through `EntryPrice`, `ByEntry`, `ENTRY_FILTERS`, and `ENTRY_NAMES`, creating the `Veteran`/`Rookie` cohort pair for coins created at a discount or premium to the entry anchor ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_cohort/src/by_entry.rs))
|
||||
- Added `Filter::Entry` and wired entry cohorts into UTXO cohort construction, iteration, mutable iteration, parallel iteration, and separate cohort traversal so all UTXO cohort consumers can discover and compute entry cohorts through the same traversal APIs as term, age, class, epoch, amount, and type cohorts ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_cohort/src/filter.rs), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_cohort/src/utxo.rs))
|
||||
- Marked entry cohorts as extended UTXO cohorts and kept their display names unprefixed, giving Veteran/Rookie the same realized-cap, ratio, percentile, and cost-basis metric coverage as the extended aggregate cohorts without adding context prefixes to chart labels ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_cohort/src/filter.rs), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_cohort/src/cohort_context.rs))
|
||||
|
||||
#### `brk_computer`
|
||||
|
||||
- Added entry cohort computation to the distribution block loop by classifying each block's new UTXOs against the previous all-cohort capitalized price. This creates the data foundation for comparing coins born below the realized valuation anchor with coins born above it ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_computer/src/distribution/compute/block_loop.rs))
|
||||
- Stored each UTXO's entry cohort in `BlockState` and applied receives, spends, and zero-value supply adjustments to the matching entry cohort, keeping Veteran/Rookie membership immutable for the full lifetime of a UTXO ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_computer/src/distribution/state/block.rs), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_computer/src/distribution/cohorts/utxo/receive.rs), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_computer/src/distribution/cohorts/utxo/send.rs))
|
||||
- Rebuilt entry cohort state during distribution resume from stored capitalized price history and passed the correct entry anchor into resumed block processing, so restarted indexing keeps the same Veteran/Rookie classifications as a clean run ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_computer/src/distribution/vecs.rs))
|
||||
- Included entry cohorts in UTXO cohort import, iteration, compute-rest execution, and vector collection, making entry metrics part of the persisted distribution dataset instead of an in-memory-only classification ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_computer/src/distribution/cohorts/utxo/groups.rs))
|
||||
- Added entry-aware cost-basis support to the Fenwick cache by tracking the discount-entry partition, deriving premium as all coins minus discount coins, and pushing Veteran/Rookie cost-basis percentiles plus density values for charting cost-basis concentration by entry cohort ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_computer/src/distribution/cohorts/utxo/fenwick.rs), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_computer/src/distribution/cohorts/utxo/percentiles.rs))
|
||||
- Returned the all-cohort capitalized price from realized metric accumulation and used it as the next block's entry anchor, tying entry classification directly to the computed capitalized-price series that users can inspect ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_computer/src/distribution/metrics/realized/full.rs), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_computer/src/distribution/cohorts/utxo/groups.rs))
|
||||
|
||||
#### `brk_bindgen`
|
||||
|
||||
- Exported `ENTRY_NAMES` from generated constants, allowing Rust, JavaScript, Python, and website code to use the same Veteran/Rookie IDs and labels as `brk_cohort` ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_bindgen/src/generate/constants.rs))
|
||||
|
||||
#### `brk_client`
|
||||
|
||||
- Added the generated Rust client tree under `series.cohorts.utxo.entry.discount` and `series.cohorts.utxo.entry.premium`, exposing Veteran/Rookie supply, outputs, activity, realized metrics, cost basis, unrealized values, and invested capital through typed client accessors ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_client/src/lib.rs))
|
||||
- Added `RatioValuePattern2` for SOPR ratio plus value-destroyed access, giving entry cohorts and the LTH realized SOPR node one shared typed pattern for SOPR series reads ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/crates/brk_client/src/lib.rs))
|
||||
|
||||
#### `clients`
|
||||
|
||||
- Added generated JavaScript and Python access to `cohorts.utxo.entry.discount` and `cohorts.utxo.entry.premium`, so browser and Python consumers can fetch Veteran/Rookie entry cohort metrics without hand-building series names ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/modules/brk-client/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/packages/brk_client/brk_client/__init__.py))
|
||||
- Published generated client documentation for `ENTRY_NAMES`, the entry cohort tree, Veteran/Rookie realized-price nodes, and the shared SOPR ratio/value-destroyed pattern, making the new client surface discoverable from the shipped docs ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/packages/brk_client/DOCS.md), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/modules/brk-client/docs/interfaces/SeriesTree_Cohorts_Utxo_Entry.md))
|
||||
|
||||
#### `website`
|
||||
|
||||
- Added a Distribution `Entry` folder with a `Veteran vs Rookie` comparison and individual Veteran/Rookie cohort folders, letting website users chart entry cohorts with the same NUPL, realized, unrealized, supply, and cohort metric views used by existing distribution folders ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website/scripts/options/partial.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website/scripts/options/distribution/data.js))
|
||||
|
||||
#### `website_next`
|
||||
|
||||
- Changed the Home and header experience so the fixed header carries only the bitview brand link while Home presents direct Explore, Learn, and Build links. This makes the first screen the entry point for section selection instead of duplicating primary navigation in the header ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/home/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/header/index.js))
|
||||
- Added route canonicalization, hash-preserving route navigation, per-page `pageactive` events, and Cloudflare SPA asset fallback configuration, allowing direct deep links and client-side route transitions to land on the intended page state ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/routes.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/main.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/wrangler.toml))
|
||||
- Replaced the placeholder Learn taxonomy with data-backed Introduction, Supply, UTXO Set, Address Count, Mining Pools, and Capitalization sections, turning Learn into a smaller set of populated sections rather than a broad menu with placeholder charts ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/sections/introduction.js))
|
||||
- Added Supply Learn charts for circulating supply, profitability, exposed public-key supply, exposed supply by type, term, age, UTXO balance, address balance, output type, halving epoch, and creation-year class, giving readers direct chart access to supply composition and exposed-key risk ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/sections/supply.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/supply.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/cohorts.js))
|
||||
- Added UTXO Set Learn charts for total set size, net change, growth rate, spent outputs, spending rate, spending rate by term/age/balance/type/epoch/class, and UTXO count distribution by the same cohort groups, making set turnover and set composition readable from one section ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/sections/utxo-set.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/utxo-set.js))
|
||||
- Added Address Count Learn charts for funded addresses, new addresses, funded-address change, funded-address growth rate, active/sending/receiving/bidirectional/reactivated addresses, funded/empty/total state, balance cohorts, address type cohorts, and reuse signals, covering address-set growth, activity, distribution, and privacy-relevant reuse in the guide ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/sections/address-count.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/address-count.js))
|
||||
- Added Mining Pools Learn charts for major pool dominance, major pool blocks mined, major pool rewards, per-major-pool dominance/blocks/rewards, and minor pool dominance/blocks, giving readers a charted view of mining concentration and attributed block production ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/sections/mining-pools.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/mining-pools.js))
|
||||
- Added Market Cap and Realized Cap Learn charts with splits by profitability, term, age, UTXO balance, address balance, output type, halving epoch, and creation-year class, allowing valuation comparisons across the same cohort dimensions used in supply views ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/sections/capitalization.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/sections/capitalization/market.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/sections/capitalization/realized.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/capitalization.js))
|
||||
- Added collapsible Learn sections with persisted open state, synchronized contents-sidebar state, hash-driven ancestor opening, and active-hash toggling, so readers can keep long sections collapsed while preserving deep-link behavior ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/details.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/hash-links.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/index.js))
|
||||
- Added path-based Learn section IDs, nested contents entries, and scroll-spy navigation that keeps the current hash and contents sidebar aligned with the visible nested section, making repeated titles such as `Type` or `Balance` safe to deep link ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/path.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/contents/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/scroll-spy.js))
|
||||
- Added chart lifecycle management with near-viewport activation, suspension when charts leave view, cached timeframe loading, loading status, and error status, reducing unnecessary chart work while keeping visible Learn charts responsive ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/intersection.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/loader.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/renderer.js))
|
||||
- Added Learn chart controls for area view, line view, stacked view, bar view, dot view, linear/log scale, ascending/descending series order, unit-aware formatting, and persisted per-chart settings, giving readers more ways to inspect the same series without leaving the chart ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/views.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/area/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/scale.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/order.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/units.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/setting.js))
|
||||
- Added clickable/pinned legend highlighting, preview highlighting from chart scrub position, scrubber shade, scrubber markers, unit-aware readouts, and keyboard scrub controls, making multi-series Learn charts inspectable by date and by selected cohort ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/legend/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/highlight.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/scrubber/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/format.js))
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
#### `website`
|
||||
|
||||
- Fixed root website reads of generated price series by changing `brk.series.prices` callers to `brk.series.price`, restoring market option construction and chart-pane live price overlays against the generated client tree ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website/scripts/options/market.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website/scripts/panes/chart.js))
|
||||
|
||||
#### `website_next`
|
||||
|
||||
- Fixed route clicks with trailing slashes and route-plus-hash targets by resolving canonical paths before navigation and preserving the hash in the pushed route, so links such as `/learn#supply` open the expected page and section ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/routes.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/main.js))
|
||||
- Fixed plain-click detection to respect `Alt`-click and made event-target lookup safe for non-Element event targets, preserving browser modifier behavior and preventing `.closest()` calls on unsupported targets ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/utils/event.js))
|
||||
- Fixed generated anchor IDs by replacing non-alphanumeric runs and trimming leading or trailing separators, preventing punctuation in headings from producing fragile Learn deep-link IDs ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/utils/id.js))
|
||||
- Fixed Learn chart fullscreen button state by listening for fullscreen changes on the target element, keeping the control state tied to the chart that entered or exited fullscreen ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/fullscreen.js))
|
||||
|
||||
### Internal Changes
|
||||
|
||||
#### `website`
|
||||
|
||||
- Replaced the checked-in `website/scripts/modules` vendor tree with a link to the workspace `modules` directory, making the root website consume the same local client and browser modules as the rest of the repository ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website/scripts/modules))
|
||||
|
||||
#### `website_next`
|
||||
|
||||
- Split Learn chart code into renderer, loader, plot dispatcher, scale, order, setting, series-path, area, legend, scrubber, math, and type declaration modules, keeping chart loading, chart settings, plotting, and interaction code in focused files for future chart work ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/renderer.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/plot.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/types.d.ts))
|
||||
- Split Learn data definitions into reusable cohort, group, rolling-window, supply, UTXO set, address-count, mining-pool, capitalization, and section modules, making each Learn topic source its chart series from named data builders instead of one monolithic data file ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/cohort-series.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/groups.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/data/types.d.ts))
|
||||
- Split Learn chart CSS into control, legend, scrubber, and area styles, and changed Learn page styling for nested collapsible headings, sidebar scroll alignment, chart fullscreen layout, and chart loading states so the larger nested guide remains navigable and readable ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/controls/style.css), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/legend/style.css), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/charts/scrubber/style.css), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/style.css), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/learn/contents/style.css))
|
||||
- Changed the shared `website_next` visual foundation to a dark-only variable set with selection colors, thin scrollbars, inherited textarea fonts, `h4` serif headings, and zero-duration reduced-motion transitions, aligning base styles with the next website's Learn and Home layouts ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/styles/variables.css), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/styles/main.css), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/styles/reset.css), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/styles/fonts.css), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/index.html))
|
||||
- Added local contributor guidance favoring `@type {const}` with inference for literal data structures, matching the new Learn data and chart setting style ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.4/website_next/AGENTS.md))
|
||||
|
||||
[View changes](https://github.com/bitcoinresearchkit/brk/compare/v0.3.3...v0.3.4)
|
||||
|
||||
## [v0.3.3](https://github.com/bitcoinresearchkit/brk/releases/tag/v0.3.3) - 2026-06-06
|
||||
|
||||
### New Features
|
||||
|
||||
#### `workspace`
|
||||
|
||||
- Added `cycle-dca-sim.mjs`, a Bitview-backed BTC cycle DCA simulator that fetches daily price, all-time-high, halving epoch, and cost-basis percentile series; simulates p50-triggered DCA-in, p100 or percentile-triggered DCA-out, configurable cash reserves, buy weights, sell bands, ATH exits, custom start dates, and table or CSV output; and reports results against lump-sum and simple daily-DCA benchmarks so strategy research can be repeated from the command line ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/scripts/cycle-dca-sim.mjs))
|
||||
- Added `cycle-dca-sweep.mjs`, a grid-search tool that tests buy-weight curves and sell multiples across monthly or explicit start dates, then ranks candidates by average, median, and worst performance against DCA and lump-sum baselines so cycle-rule parameters can be compared systematically ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/scripts/cycle-dca-sweep.mjs))
|
||||
|
||||
#### `website_next`
|
||||
|
||||
- Added a route registry for Home, Explore, Learn, and Build pages, then generated the primary header navigation from that registry so route validation, active nav state, and page construction use one path map ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/routes.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/header/index.js))
|
||||
- Added page caching, hidden/inert inactive pages, same-origin left-click route interception, browser back/forward rendering, and transition/reveal overlay handling so the next website behaves as a client-side app without recreating pages on every navigation ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/main.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/utils/transition.js))
|
||||
- Bundled the generated JavaScript BRK client inside `website_next` and added a `https://bitview.space` client wrapper, giving the next website direct access to typed BRK series endpoints without depending on the root website client bundle ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/modules/brk-client/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/utils/client.js))
|
||||
- Rebuilt the Learn page as a structured article with generated section IDs, nested sections, a contents sidebar, smooth same-page hash navigation, popstate hash restoration, scroll-spy `aria-current` state, and URL hash replacement for the currently visible section, making the learning guide navigable by deep link and keyboard-friendly anchors ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/contents/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/hash-links.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/scroll-spy.js))
|
||||
- Added data-backed Learn chart definitions for circulating supply, supply in profit and loss, STH versus LTH supply, supply by age, supply by UTXO balance, supply by address balance, supply by script type, supply by halving epoch, and supply by creation-year class, while keeping the broader Learn taxonomy for Capitalization, Activity, Mining, Market, Ownership, Liquidity, Risk, Cycles, and Cohorts in the same section model ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/data.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/cohorts.js))
|
||||
- Added reusable SVG chart rendering for Learn charts with lazy first-intersection loading, per-chart request caching, responsive viewBox sizing, timeframe controls for intraday through all-history ranges, chart view controls for line, stacked, reversed stacked, bar, reversed bar, and dot views, local storage persistence for chart controls, and a fullscreen toggle for individual figures ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/timeframes.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/views.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/fullscreen.js))
|
||||
- Added interactive Learn chart legends, series highlighting, formatted value readouts, pointer and keyboard scrubber controls, and line, stacked-area, bar, and dot plot renderers so readers can compare cohort values at a selected date and switch chart forms without losing context ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/legend.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/highlight.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/scrubber.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/line/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/stacked/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/bar/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/dots/index.js))
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
#### `brk_client`
|
||||
|
||||
- Fixed the Rust client basic example to use `client.series().price.split.close.usd`, so the documented example follows the generated series tree instead of referencing a nonexistent `prices` branch ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/crates/brk_client/examples/basic.rs))
|
||||
|
||||
#### `website`
|
||||
|
||||
- Fixed chart PNG capture to place the screenshot at its real chart offset inside the pane, render the visible title with its computed font styling, wrap top and bottom legend rows to the available legend width, preserve multi-color swatches, honor selected option text and text transforms, and draw the page background plus host watermark so exported charts match the on-page composition ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website/scripts/utils/chart/capture.js))
|
||||
- Fixed stale chart legend prefixes by adding a `clearPrefix()` path and calling it when a pane has no units, so a chart that renders without a unit selector no longer inherits the previous chart's prefix or separator ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website/scripts/utils/chart/legend.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website/scripts/utils/chart/index.js))
|
||||
|
||||
### Internal Changes
|
||||
|
||||
#### `clients`
|
||||
|
||||
- Regenerated the generated JavaScript and Python client artifacts and TypeDoc files for the release snapshot, keeping shipped client packages and documentation synchronized with the generated API surface used by the website work ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/modules/brk-client/index.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/packages/brk_client/brk_client/__init__.py))
|
||||
|
||||
#### `website_next`
|
||||
|
||||
- Split Learn chart behavior into small modules for series config, SVG element creation, path construction, value formatting, storage, radio controls, lazy intersection loading, viewBox sizing, and color lookup, making the chart stack reusable across Learn sections without duplicating rendering code ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/config.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/path.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/learn/charts/radio.js), [source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/utils/colors.js))
|
||||
- Tightened the local `website_next` contributor guidance around speed, memory use, composition, and maintainable file boundaries so future work on the next website has clearer implementation constraints ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/website_next/AGENTS.md))
|
||||
|
||||
#### `workspace`
|
||||
|
||||
- Allowed the root `btc-cycle-sim.html` artifact to be tracked despite the root HTML ignore rule, enabling the BTC cycle simulator page to live at the repository root when it is added ([source](https://github.com/bitcoinresearchkit/brk/blob/v0.3.3/.gitignore))
|
||||
|
||||
[View changes](https://github.com/bitcoinresearchkit/brk/compare/v0.3.2...v0.3.3)
|
||||
|
||||
## [v0.3.2](https://github.com/bitcoinresearchkit/brk/releases/tag/v0.3.2) - 2026-06-04
|
||||
|
||||
### Breaking Changes
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
[](https://opensats.org/)
|
||||
[](https://discord.gg/WACpShCB7M)
|
||||
[](https://x.com/_nym21_)
|
||||
[](https://primal.net/p/nprofile1qqsfw5dacngjlahye34krvgz7u0yghhjgk7gxzl5ptm9v6n2y3sn03sqxu2e6)
|
||||
|
||||
> "Shout out to Bitcoin Research Kit. [...] Couldn't recommend them highly enough."
|
||||
> — James Check (CheckOnChain), [What Bitcoin Did #1000](https://www.whatbitcoindid.com/episodes/wbd1000-checkmate)
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -6,7 +6,7 @@
|
||||
|
||||
# Class: BrkError
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:1509](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L1509)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:1491](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L1491)
|
||||
|
||||
Custom error class for BRK client errors
|
||||
|
||||
@@ -20,7 +20,7 @@ Custom error class for BRK client errors
|
||||
|
||||
> **new BrkError**(`message`, `status?`): `BrkError`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:1514](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L1514)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:1496](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L1496)
|
||||
|
||||
#### Parameters
|
||||
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
[**brk-client**](../README.md)
|
||||
|
||||
***
|
||||
|
||||
[brk-client](../globals.md) / addressPayloadHashPrefix
|
||||
|
||||
# Function: addressPayloadHashPrefix()
|
||||
|
||||
> **addressPayloadHashPrefix**(`payload`, `nibbles`): `string`
|
||||
|
||||
Compute the RapidHash v3 hash-prefix used by `/api/address/hash-prefix/{addr_type}/{prefix}`.
|
||||
|
||||
## Parameters
|
||||
|
||||
### payload
|
||||
|
||||
`Uint8Array` | `ArrayBuffer` | `ArrayBufferView` | `number`[]
|
||||
|
||||
Raw address payload bytes. Must be 1 to 65 bytes.
|
||||
|
||||
### nibbles
|
||||
|
||||
`number`
|
||||
|
||||
Prefix length from 1 to 16 hex nibbles.
|
||||
|
||||
## Returns
|
||||
|
||||
`string`
|
||||
|
||||
@@ -9,10 +9,6 @@
|
||||
- [BrkClient](classes/BrkClient.md)
|
||||
- [BrkError](classes/BrkError.md)
|
||||
|
||||
## Functions
|
||||
|
||||
- [addressPayloadHashPrefix](functions/addressPayloadHashPrefix.md)
|
||||
|
||||
## Interfaces
|
||||
|
||||
- [\_0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern](interfaces/0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern.md)
|
||||
@@ -41,14 +37,11 @@
|
||||
- [ActiveBidirectionalReactivatedReceivingSendingPattern](interfaces/ActiveBidirectionalReactivatedReceivingSendingPattern.md)
|
||||
- [ActiveInputOutputSpendablePattern](interfaces/ActiveInputOutputSpendablePattern.md)
|
||||
- [ActivityAddrOutputsRealizedSupplyUnrealizedPattern](interfaces/ActivityAddrOutputsRealizedSupplyUnrealizedPattern.md)
|
||||
- [ActivityCostInvestedOutputsRealizedSupplyUnrealizedPattern2](interfaces/ActivityCostInvestedOutputsRealizedSupplyUnrealizedPattern2.md)
|
||||
- [ActivityOutputsRealizedSupplyUnrealizedPattern](interfaces/ActivityOutputsRealizedSupplyUnrealizedPattern.md)
|
||||
- [ActivityOutputsRealizedSupplyUnrealizedPattern2](interfaces/ActivityOutputsRealizedSupplyUnrealizedPattern2.md)
|
||||
- [ActivityOutputsRealizedSupplyUnrealizedPattern3](interfaces/ActivityOutputsRealizedSupplyUnrealizedPattern3.md)
|
||||
- [AddrAfterTxidParam](interfaces/AddrAfterTxidParam.md)
|
||||
- [AddrChainStats](interfaces/AddrChainStats.md)
|
||||
- [AddrHashPrefixMatches](interfaces/AddrHashPrefixMatches.md)
|
||||
- [AddrHashPrefixParam](interfaces/AddrHashPrefixParam.md)
|
||||
- [AddrMempoolStats](interfaces/AddrMempoolStats.md)
|
||||
- [AddrParam](interfaces/AddrParam.md)
|
||||
- [AddrStats](interfaces/AddrStats.md)
|
||||
@@ -116,7 +109,6 @@
|
||||
- [BtcCentsSatsUsdPattern3](interfaces/BtcCentsSatsUsdPattern3.md)
|
||||
- [BtcSatsPattern](interfaces/BtcSatsPattern.md)
|
||||
- [CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern](interfaces/CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern.md)
|
||||
- [CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern2](interfaces/CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern2.md)
|
||||
- [CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2](interfaces/CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2.md)
|
||||
- [CapLossMvrvNetPriceProfitSoprPattern](interfaces/CapLossMvrvNetPriceProfitSoprPattern.md)
|
||||
- [CapLossMvrvPriceProfitPattern](interfaces/CapLossMvrvPriceProfitPattern.md)
|
||||
@@ -218,7 +210,6 @@
|
||||
- [RangeBuilder](interfaces/RangeBuilder.md)
|
||||
- [RatioTransferValuePattern](interfaces/RatioTransferValuePattern.md)
|
||||
- [RatioValuePattern](interfaces/RatioValuePattern.md)
|
||||
- [RatioValuePattern2](interfaces/RatioValuePattern2.md)
|
||||
- [RbfResponse](interfaces/RbfResponse.md)
|
||||
- [RbfTx](interfaces/RbfTx.md)
|
||||
- [RecommendedFees](interfaces/RecommendedFees.md)
|
||||
@@ -298,23 +289,6 @@
|
||||
- [SeriesTree\_Cohorts\_Utxo\_All\_Unrealized\_Sentiment](interfaces/SeriesTree_Cohorts_Utxo_All_Unrealized_Sentiment.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_AmountRange](interfaces/SeriesTree_Cohorts_Utxo_AmountRange.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Class](interfaces/SeriesTree_Cohorts_Utxo_Class.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry](interfaces/SeriesTree_Cohorts_Utxo_Entry.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Discount](interfaces/SeriesTree_Cohorts_Utxo_Entry_Discount.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Discount\_Realized](interfaces/SeriesTree_Cohorts_Utxo_Entry_Discount_Realized.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Discount\_Realized\_Price](interfaces/SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Discount\_Realized\_Price\_StdDev](interfaces/SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Discount\_Realized\_Price\_StdDev\_1y](interfaces/SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_1y.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Discount\_Realized\_Price\_StdDev\_2y](interfaces/SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_2y.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Discount\_Realized\_Price\_StdDev\_4y](interfaces/SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_4y.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Discount\_Realized\_Price\_StdDev\_All](interfaces/SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_All.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Premium](interfaces/SeriesTree_Cohorts_Utxo_Entry_Premium.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Premium\_Realized](interfaces/SeriesTree_Cohorts_Utxo_Entry_Premium_Realized.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Premium\_Realized\_Price](interfaces/SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Premium\_Realized\_Price\_StdDev](interfaces/SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Premium\_Realized\_Price\_StdDev\_1y](interfaces/SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_1y.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Premium\_Realized\_Price\_StdDev\_2y](interfaces/SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_2y.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Premium\_Realized\_Price\_StdDev\_4y](interfaces/SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_4y.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Entry\_Premium\_Realized\_Price\_StdDev\_All](interfaces/SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_All.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Epoch](interfaces/SeriesTree_Cohorts_Utxo_Epoch.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Lth](interfaces/SeriesTree_Cohorts_Utxo_Lth.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Lth\_Realized](interfaces/SeriesTree_Cohorts_Utxo_Lth_Realized.md)
|
||||
@@ -324,6 +298,7 @@
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Lth\_Realized\_Price\_StdDev\_2y](interfaces/SeriesTree_Cohorts_Utxo_Lth_Realized_Price_StdDev_2y.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Lth\_Realized\_Price\_StdDev\_4y](interfaces/SeriesTree_Cohorts_Utxo_Lth_Realized_Price_StdDev_4y.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Lth\_Realized\_Price\_StdDev\_All](interfaces/SeriesTree_Cohorts_Utxo_Lth_Realized_Price_StdDev_All.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Lth\_Realized\_Sopr](interfaces/SeriesTree_Cohorts_Utxo_Lth_Realized_Sopr.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_Matured](interfaces/SeriesTree_Cohorts_Utxo_Matured.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_OverAge](interfaces/SeriesTree_Cohorts_Utxo_OverAge.md)
|
||||
- [SeriesTree\_Cohorts\_Utxo\_OverAmount](interfaces/SeriesTree_Cohorts_Utxo_OverAmount.md)
|
||||
|
||||
+16
-16
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2361](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2361)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2340](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2340)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2361](https://github.com/
|
||||
|
||||
> **\_0sd**: [`CentsSatsUsdPattern`](CentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2362](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2362)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2341](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2341)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2362](https://github.com/
|
||||
|
||||
> **m05sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2363](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2363)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2342](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2342)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2363](https://github.com/
|
||||
|
||||
> **m15sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2364](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2364)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2343](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2343)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2364](https://github.com/
|
||||
|
||||
> **m1sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2365](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2365)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2344](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2344)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2365](https://github.com/
|
||||
|
||||
> **m25sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2366](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2366)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2345](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2345)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2366](https://github.com/
|
||||
|
||||
> **m2sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2367](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2367)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2346](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2346)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2367](https://github.com/
|
||||
|
||||
> **m3sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2368](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2368)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2347](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2347)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2368](https://github.com/
|
||||
|
||||
> **p05sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2369](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2369)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2348](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2348)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,7 +78,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2369](https://github.com/
|
||||
|
||||
> **p15sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2370](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2370)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2349](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2349)
|
||||
|
||||
***
|
||||
|
||||
@@ -86,7 +86,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2370](https://github.com/
|
||||
|
||||
> **p1sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2371](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2371)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2350](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2350)
|
||||
|
||||
***
|
||||
|
||||
@@ -94,7 +94,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2371](https://github.com/
|
||||
|
||||
> **p25sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2372](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2372)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2351](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2351)
|
||||
|
||||
***
|
||||
|
||||
@@ -102,7 +102,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2372](https://github.com/
|
||||
|
||||
> **p2sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2373](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2373)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2352](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2352)
|
||||
|
||||
***
|
||||
|
||||
@@ -110,7 +110,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2373](https://github.com/
|
||||
|
||||
> **p3sd**: [`PriceRatioPattern`](PriceRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2374](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2374)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2353](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2353)
|
||||
|
||||
***
|
||||
|
||||
@@ -118,7 +118,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2374](https://github.com/
|
||||
|
||||
> **sd**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2375](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2375)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2354](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2354)
|
||||
|
||||
***
|
||||
|
||||
@@ -126,4 +126,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2375](https://github.com/
|
||||
|
||||
> **zscore**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2376](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2376)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2355](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2355)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_10y1m1w1y2y3m3y4y5y6m6y8yPattern2
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2421](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2421)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2400](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2400)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2421](https://github.com/
|
||||
|
||||
> **\_10y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2422](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2422)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2401](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2401)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2422](https://github.com/
|
||||
|
||||
> **\_1m**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2423](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2423)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2402](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2402)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2423](https://github.com/
|
||||
|
||||
> **\_1w**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2424](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2424)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2403](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2403)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2424](https://github.com/
|
||||
|
||||
> **\_1y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2425](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2425)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2404](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2404)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2425](https://github.com/
|
||||
|
||||
> **\_2y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2426](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2426)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2405](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2405)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2426](https://github.com/
|
||||
|
||||
> **\_3m**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2427](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2427)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2406](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2406)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2427](https://github.com/
|
||||
|
||||
> **\_3y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2428](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2428)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2407](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2407)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2428](https://github.com/
|
||||
|
||||
> **\_4y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2429](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2429)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2408](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2408)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,7 +78,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2429](https://github.com/
|
||||
|
||||
> **\_5y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2430](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2430)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2409](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2409)
|
||||
|
||||
***
|
||||
|
||||
@@ -86,7 +86,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2430](https://github.com/
|
||||
|
||||
> **\_6m**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2431](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2431)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2410](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2410)
|
||||
|
||||
***
|
||||
|
||||
@@ -94,7 +94,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2431](https://github.com/
|
||||
|
||||
> **\_6y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2432](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2432)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2411](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2411)
|
||||
|
||||
***
|
||||
|
||||
@@ -102,4 +102,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2432](https://github.com/
|
||||
|
||||
> **\_8y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2433](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2433)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2412](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2412)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_10y1m1w1y2y3m3y4y5y6m6y8yPattern3
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2460](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2460)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2439](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2439)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2460](https://github.com/
|
||||
|
||||
> **\_10y**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2461](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2461)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2440](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2440)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2461](https://github.com/
|
||||
|
||||
> **\_1m**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2462](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2462)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2441](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2441)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2462](https://github.com/
|
||||
|
||||
> **\_1w**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2463](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2463)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2442](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2442)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2463](https://github.com/
|
||||
|
||||
> **\_1y**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2464](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2464)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2443](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2443)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2464](https://github.com/
|
||||
|
||||
> **\_2y**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2465](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2465)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2444](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2444)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2465](https://github.com/
|
||||
|
||||
> **\_3m**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2466](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2466)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2445](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2445)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2466](https://github.com/
|
||||
|
||||
> **\_3y**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2467](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2467)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2446](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2446)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2467](https://github.com/
|
||||
|
||||
> **\_4y**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2468](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2468)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2447](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2447)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,7 +78,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2468](https://github.com/
|
||||
|
||||
> **\_5y**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2469](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2469)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2448](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2448)
|
||||
|
||||
***
|
||||
|
||||
@@ -86,7 +86,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2469](https://github.com/
|
||||
|
||||
> **\_6m**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2470](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2470)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2449](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2449)
|
||||
|
||||
***
|
||||
|
||||
@@ -94,7 +94,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2470](https://github.com/
|
||||
|
||||
> **\_6y**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2471](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2471)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2450](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2450)
|
||||
|
||||
***
|
||||
|
||||
@@ -102,4 +102,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2471](https://github.com/
|
||||
|
||||
> **\_8y**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2472](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2472)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2451](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2451)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_10y2y3y4y5y6y8yPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2989](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2989)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2952](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2952)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2989](https://github.com/
|
||||
|
||||
> **\_10y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2990](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2990)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2953](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2953)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2990](https://github.com/
|
||||
|
||||
> **\_2y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2991](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2991)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2954](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2954)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2991](https://github.com/
|
||||
|
||||
> **\_3y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2992](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2992)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2955](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2955)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2992](https://github.com/
|
||||
|
||||
> **\_4y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2993](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2993)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2956](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2956)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2993](https://github.com/
|
||||
|
||||
> **\_5y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2994](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2994)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2957](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2957)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2994](https://github.com/
|
||||
|
||||
> **\_6y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2995](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2995)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2958](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2958)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,4 +62,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2995](https://github.com/
|
||||
|
||||
> **\_8y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2996](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2996)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2959](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2959)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hBlockPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3401](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3401)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3353](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3353)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3401](https://github.com/
|
||||
|
||||
> **\_1m**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3402](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3402)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3354](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3354)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3402](https://github.com/
|
||||
|
||||
> **\_1w**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3403](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3403)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3355](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3355)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3403](https://github.com/
|
||||
|
||||
> **\_1y**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3404](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3404)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3356](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3356)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3404](https://github.com/
|
||||
|
||||
> **\_24h**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3405](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3405)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3357](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3357)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,4 +46,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3405](https://github.com/
|
||||
|
||||
> **block**: [`SeriesPattern18`](../type-aliases/SeriesPattern18.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3406](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3406)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3358](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3358)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hBlockPattern2
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3376](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3376)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3328](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3328)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3376](https://github.com/
|
||||
|
||||
> **\_1m**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3377](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3377)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3329](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3329)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3377](https://github.com/
|
||||
|
||||
> **\_1w**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3378](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3378)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3330](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3330)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3378](https://github.com/
|
||||
|
||||
> **\_1y**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3379](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3379)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3331](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3331)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3379](https://github.com/
|
||||
|
||||
> **\_24h**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3380](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3380)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3332](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3332)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,4 +46,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3380](https://github.com/
|
||||
|
||||
> **block**: [`SeriesPattern18`](../type-aliases/SeriesPattern18.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3381](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3381)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3333](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3333)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hBpsPercentRatioPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3018](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3018)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2981](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2981)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3018](https://github.com/
|
||||
|
||||
> **\_1m**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3019](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3019)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2982](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2982)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3019](https://github.com/
|
||||
|
||||
> **\_1w**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3020](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3020)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2983](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2983)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3020](https://github.com/
|
||||
|
||||
> **\_1y**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3021](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3021)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2984](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2984)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3021](https://github.com/
|
||||
|
||||
> **\_24h**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3022](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3022)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2985](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2985)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3022](https://github.com/
|
||||
|
||||
> **bps**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3023](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3023)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2986](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2986)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3023](https://github.com/
|
||||
|
||||
> **percent**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3024](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3024)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2987](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2987)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,4 +62,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3024](https://github.com/
|
||||
|
||||
> **ratio**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3025](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3025)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2988](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2988)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hPattern\<T\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4179](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4179)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4131](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4131)
|
||||
|
||||
## Type Parameters
|
||||
|
||||
@@ -20,7 +20,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4179](https://github.com/
|
||||
|
||||
> **\_1m**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4180](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4180)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4132](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4132)
|
||||
|
||||
***
|
||||
|
||||
@@ -28,7 +28,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4180](https://github.com/
|
||||
|
||||
> **\_1w**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4181](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4181)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4133](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4133)
|
||||
|
||||
***
|
||||
|
||||
@@ -36,7 +36,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4181](https://github.com/
|
||||
|
||||
> **\_1y**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4182](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4182)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4134](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4134)
|
||||
|
||||
***
|
||||
|
||||
@@ -44,4 +44,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4182](https://github.com/
|
||||
|
||||
> **\_24h**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4183](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4183)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4135](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4135)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hPattern2
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3710](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3710)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3662](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3662)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3710](https://github.com/
|
||||
|
||||
> **\_1m**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3711](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3711)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3663](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3663)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3711](https://github.com/
|
||||
|
||||
> **\_1w**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3712](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3712)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3664](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3664)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3712](https://github.com/
|
||||
|
||||
> **\_1y**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3713](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3713)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3665](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3665)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,4 +38,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3713](https://github.com/
|
||||
|
||||
> **\_24h**: [`BpsPercentRatioPattern`](BpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3714](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3714)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3666](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3666)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hPattern3
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3779](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3779)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3731](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3731)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3779](https://github.com/
|
||||
|
||||
> **\_1m**: [`BtcCentsSatsUsdPattern2`](BtcCentsSatsUsdPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3780](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3780)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3732](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3732)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3780](https://github.com/
|
||||
|
||||
> **\_1w**: [`BtcCentsSatsUsdPattern2`](BtcCentsSatsUsdPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3781](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3781)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3733](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3733)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3781](https://github.com/
|
||||
|
||||
> **\_1y**: [`BtcCentsSatsUsdPattern2`](BtcCentsSatsUsdPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3782](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3782)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3734](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3734)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,4 +38,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3782](https://github.com/
|
||||
|
||||
> **\_24h**: [`BtcCentsSatsUsdPattern2`](BtcCentsSatsUsdPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3783](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3783)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3735](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3735)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hPattern4
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3756](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3756)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3708](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3708)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3756](https://github.com/
|
||||
|
||||
> **\_1m**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3757](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3757)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3709](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3709)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3757](https://github.com/
|
||||
|
||||
> **\_1w**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3758](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3758)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3710](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3710)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3758](https://github.com/
|
||||
|
||||
> **\_1y**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3759](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3759)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3711](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3711)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,4 +38,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3759](https://github.com/
|
||||
|
||||
> **\_24h**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3760](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3760)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3712](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3712)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hPattern5
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3848](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3848)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3800](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3800)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3848](https://github.com/
|
||||
|
||||
> **\_1m**: [`CentsUsdPattern`](CentsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3849](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3849)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3801](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3801)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3849](https://github.com/
|
||||
|
||||
> **\_1w**: [`CentsUsdPattern`](CentsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3850](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3850)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3802](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3802)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3850](https://github.com/
|
||||
|
||||
> **\_1y**: [`CentsUsdPattern`](CentsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3851](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3851)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3803](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3803)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,4 +38,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3851](https://github.com/
|
||||
|
||||
> **\_24h**: [`CentsUsdPattern`](CentsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3852](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3852)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3804](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3804)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hPattern6
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3871](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3871)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3823](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3823)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3871](https://github.com/
|
||||
|
||||
> **\_1m**: [`CentsUsdPattern3`](CentsUsdPattern3.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3872](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3872)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3824](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3824)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3872](https://github.com/
|
||||
|
||||
> **\_1w**: [`CentsUsdPattern3`](CentsUsdPattern3.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3873](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3873)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3825](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3825)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3873](https://github.com/
|
||||
|
||||
> **\_1y**: [`CentsUsdPattern3`](CentsUsdPattern3.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3874](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3874)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3826](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3826)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,4 +38,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3874](https://github.com/
|
||||
|
||||
> **\_24h**: [`CentsUsdPattern3`](CentsUsdPattern3.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3875](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3875)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3827](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3827)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hPattern7
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3802](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3802)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3754](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3754)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3802](https://github.com/
|
||||
|
||||
> **\_1m**: [`BtcSatsPattern`](BtcSatsPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3803](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3803)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3755](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3755)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3803](https://github.com/
|
||||
|
||||
> **\_1w**: [`BtcSatsPattern`](BtcSatsPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3804](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3804)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3756](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3756)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3804](https://github.com/
|
||||
|
||||
> **\_1y**: [`BtcSatsPattern`](BtcSatsPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3805](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3805)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3757](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3757)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,4 +38,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3805](https://github.com/
|
||||
|
||||
> **\_24h**: [`BtcSatsPattern`](BtcSatsPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3806](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3806)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3758](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3758)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y24hPattern8
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3733](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3733)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3685](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3685)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3733](https://github.com/
|
||||
|
||||
> **\_1m**: [`BpsPercentRatioPattern4`](BpsPercentRatioPattern4.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3734](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3734)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3686](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3686)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3734](https://github.com/
|
||||
|
||||
> **\_1w**: [`BpsPercentRatioPattern4`](BpsPercentRatioPattern4.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3735](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3735)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3687](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3687)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3735](https://github.com/
|
||||
|
||||
> **\_1y**: [`BpsPercentRatioPattern4`](BpsPercentRatioPattern4.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3736](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3736)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3688](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3688)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,4 +38,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3736](https://github.com/
|
||||
|
||||
> **\_24h**: [`BpsPercentRatioPattern4`](BpsPercentRatioPattern4.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3737](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3737)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3689](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3689)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y2wPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3825](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3825)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3777](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3777)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3825](https://github.com/
|
||||
|
||||
> **\_1m**: [`CentsSatsUsdPattern`](CentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3826](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3826)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3778](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3778)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3826](https://github.com/
|
||||
|
||||
> **\_1w**: [`CentsSatsUsdPattern`](CentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3827](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3827)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3779](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3779)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3827](https://github.com/
|
||||
|
||||
> **\_1y**: [`CentsSatsUsdPattern`](CentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3828](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3828)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3780](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3780)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,4 +38,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3828](https://github.com/
|
||||
|
||||
> **\_2w**: [`CentsSatsUsdPattern`](CentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3829](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3829)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3781](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3781)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1m1w1y2y4yAllPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3187](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3187)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3139](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3139)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3187](https://github.com/
|
||||
|
||||
> **\_1m**: [`BpsRatioPattern2`](BpsRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3188](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3188)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3140](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3140)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3188](https://github.com/
|
||||
|
||||
> **\_1w**: [`BpsRatioPattern2`](BpsRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3189](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3189)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3141](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3141)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3189](https://github.com/
|
||||
|
||||
> **\_1y**: [`BpsRatioPattern2`](BpsRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3190](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3190)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3142](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3142)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3190](https://github.com/
|
||||
|
||||
> **\_2y**: [`BpsRatioPattern2`](BpsRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3191](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3191)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3143](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3143)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3191](https://github.com/
|
||||
|
||||
> **\_4y**: [`BpsRatioPattern2`](BpsRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3192](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3192)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3144](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3144)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,4 +54,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3192](https://github.com/
|
||||
|
||||
> **all**: [`BpsRatioPattern2`](BpsRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3193](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3193)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3145](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3145)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_1y2y4yAllPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3894](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3894)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3846](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3846)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3894](https://github.com/
|
||||
|
||||
> **\_1y**: [`_0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern`](0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3895](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3895)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3847](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3847)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3895](https://github.com/
|
||||
|
||||
> **\_2y**: [`_0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern`](0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3896](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3896)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3848](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3848)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3896](https://github.com/
|
||||
|
||||
> **\_4y**: [`_0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern`](0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3897](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3897)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3849](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3849)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,4 +38,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3897](https://github.com/
|
||||
|
||||
> **all**: [`_0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern`](0sdM0M1M1sdM2M2sdM3sdP0P1P1sdP2P2sdP3sdSdZscorePattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3898](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3898)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3850](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3850)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_24hPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:5161](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L5161)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:5094](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L5094)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,4 +14,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:5161](https://github.com/
|
||||
|
||||
> **\_24h**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:5162](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L5162)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:5095](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L5095)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: \_6bBlockTxPattern\<T\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4637](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4637)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4589](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4589)
|
||||
|
||||
## Type Parameters
|
||||
|
||||
@@ -20,7 +20,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4637](https://github.com/
|
||||
|
||||
> **\_6b**: [`MaxMedianMinPct10Pct25Pct75Pct90Pattern`](MaxMedianMinPct10Pct25Pct75Pct90Pattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4638](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4638)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4590](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4590)
|
||||
|
||||
***
|
||||
|
||||
@@ -28,7 +28,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4638](https://github.com/
|
||||
|
||||
> **block**: [`MaxMedianMinPct10Pct25Pct75Pct90Pattern`](MaxMedianMinPct10Pct25Pct75Pct90Pattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4639](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4639)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4591](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4591)
|
||||
|
||||
***
|
||||
|
||||
@@ -36,4 +36,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4639](https://github.com/
|
||||
|
||||
> **txIndex**: [`SeriesPattern19`](../type-aliases/SeriesPattern19.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4640](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4640)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4592](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4592)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AbsoluteRatePattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4659](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4659)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4611](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4611)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4659](https://github.com/
|
||||
|
||||
> **absolute**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4660](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4660)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4612](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4612)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,4 +22,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4660](https://github.com/
|
||||
|
||||
> **rate**: [`_1m1w1y24hPattern2`](1m1w1y24hPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4661](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4661)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4613](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4613)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AbsoluteRatePattern2
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4678](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4678)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4630](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4630)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4678](https://github.com/
|
||||
|
||||
> **absolute**: [`_1m1w1y24hPattern5`](1m1w1y24hPattern5.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4679](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4679)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4631](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4631)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,4 +22,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4679](https://github.com/
|
||||
|
||||
> **rate**: [`_1m1w1y24hPattern2`](1m1w1y24hPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4680](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4680)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4632](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4632)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AbsoluteRatePattern3
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4697](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4697)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4649](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4649)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4697](https://github.com/
|
||||
|
||||
> **absolute**: [`_1m1w1y24hPattern7`](1m1w1y24hPattern7.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4698](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4698)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4650](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4650)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,4 +22,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4698](https://github.com/
|
||||
|
||||
> **rate**: [`_1m1w1y24hPattern2`](1m1w1y24hPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4699](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4699)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4651](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4651)
|
||||
|
||||
+6
-6
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: ActiveBidirectionalReactivatedReceivingSendingPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3426](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3426)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3378](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3378)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3426](https://github.com/
|
||||
|
||||
> **active**: [`_1m1w1y24hBlockPattern`](1m1w1y24hBlockPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3427](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3427)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3379](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3379)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3427](https://github.com/
|
||||
|
||||
> **bidirectional**: [`_1m1w1y24hBlockPattern`](1m1w1y24hBlockPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3428](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3428)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3380](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3380)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3428](https://github.com/
|
||||
|
||||
> **reactivated**: [`_1m1w1y24hBlockPattern`](1m1w1y24hBlockPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3429](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3429)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3381](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3381)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3429](https://github.com/
|
||||
|
||||
> **receiving**: [`_1m1w1y24hBlockPattern`](1m1w1y24hBlockPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3430](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3430)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3382](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3382)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,4 +46,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3430](https://github.com/
|
||||
|
||||
> **sending**: [`_1m1w1y24hBlockPattern`](1m1w1y24hBlockPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3431](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3431)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3383](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3383)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: ActiveInputOutputSpendablePattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3047](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3047)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3010](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3010)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3047](https://github.com/
|
||||
|
||||
> **activeReusedAddrCount**: [`_1m1w1y24hBlockPattern`](1m1w1y24hBlockPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3048](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3048)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3011](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3011)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3048](https://github.com/
|
||||
|
||||
> **activeReusedAddrShare**: [`_1m1w1y24hBlockPattern2`](1m1w1y24hBlockPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3049](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3049)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3012](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3012)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3049](https://github.com/
|
||||
|
||||
> **inputFromReusedAddrCount**: [`AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern6`](AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern6.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3050](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3050)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3013](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3013)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3050](https://github.com/
|
||||
|
||||
> **inputFromReusedAddrShare**: [`AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern7`](AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern7.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3051](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3051)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3014](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3014)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3051](https://github.com/
|
||||
|
||||
> **outputToReusedAddrCount**: [`AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern6`](AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern6.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3052](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3052)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3015](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3015)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3052](https://github.com/
|
||||
|
||||
> **outputToReusedAddrShare**: [`AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern7`](AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern7.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3053](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3053)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3016](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3016)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,4 +62,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3053](https://github.com/
|
||||
|
||||
> **spendableOutputToReusedAddrShare**: [`_1m1w1y24hBpsPercentRatioPattern`](1m1w1y24hBpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3054](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3054)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3017](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3017)
|
||||
|
||||
+7
-7
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: ActivityAddrOutputsRealizedSupplyUnrealizedPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3214](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3214)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3166](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3166)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3214](https://github.com/
|
||||
|
||||
> **activity**: [`TransferPattern`](TransferPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3215](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3215)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3167](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3167)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3215](https://github.com/
|
||||
|
||||
> **addrCount**: [`BaseDeltaPattern`](BaseDeltaPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3216](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3216)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3168](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3168)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3216](https://github.com/
|
||||
|
||||
> **outputs**: [`SpendingSpentUnspentPattern`](SpendingSpentUnspentPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3217](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3217)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3169](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3169)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3217](https://github.com/
|
||||
|
||||
> **realized**: [`CapLossMvrvPriceProfitPattern`](CapLossMvrvPriceProfitPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3218](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3218)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3170](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3170)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3218](https://github.com/
|
||||
|
||||
> **supply**: [`DeltaDominanceTotalPattern`](DeltaDominanceTotalPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3219](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3219)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3171](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3171)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,4 +54,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3219](https://github.com/
|
||||
|
||||
> **unrealized**: [`NuplPattern`](NuplPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3220](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3220)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3172](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3172)
|
||||
|
||||
-65
@@ -1,65 +0,0 @@
|
||||
[**brk-client**](../README.md)
|
||||
|
||||
***
|
||||
|
||||
[brk-client](../globals.md) / ActivityCostInvestedOutputsRealizedSupplyUnrealizedPattern2
|
||||
|
||||
# Interface: ActivityCostInvestedOutputsRealizedSupplyUnrealizedPattern2
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3058](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3058)
|
||||
|
||||
## Properties
|
||||
|
||||
### activity
|
||||
|
||||
> **activity**: [`CoindaysCoinyearsDormancyTransferPattern`](CoindaysCoinyearsDormancyTransferPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3059](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3059)
|
||||
|
||||
***
|
||||
|
||||
### costBasis
|
||||
|
||||
> **costBasis**: [`InMaxMinPerSupplyPattern`](InMaxMinPerSupplyPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3060](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3060)
|
||||
|
||||
***
|
||||
|
||||
### investedCapital
|
||||
|
||||
> **investedCapital**: [`InPattern`](InPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3061](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3061)
|
||||
|
||||
***
|
||||
|
||||
### outputs
|
||||
|
||||
> **outputs**: [`SpendingSpentUnspentPattern`](SpendingSpentUnspentPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3062](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3062)
|
||||
|
||||
***
|
||||
|
||||
### realized
|
||||
|
||||
> **realized**: [`CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern2`](CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3063](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3063)
|
||||
|
||||
***
|
||||
|
||||
### supply
|
||||
|
||||
> **supply**: [`DeltaDominanceHalfInTotalPattern2`](DeltaDominanceHalfInTotalPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3064](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3064)
|
||||
|
||||
***
|
||||
|
||||
### unrealized
|
||||
|
||||
> **unrealized**: [`CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2`](CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3065](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3065)
|
||||
+6
-6
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: ActivityOutputsRealizedSupplyUnrealizedPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3451](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3451)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3403](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3403)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3451](https://github.com/
|
||||
|
||||
> **activity**: [`CoindaysTransferPattern`](CoindaysTransferPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3452](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3452)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3404](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3404)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3452](https://github.com/
|
||||
|
||||
> **outputs**: [`SpendingSpentUnspentPattern`](SpendingSpentUnspentPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3453](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3453)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3405](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3405)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3453](https://github.com/
|
||||
|
||||
> **realized**: [`CapLossMvrvNetPriceProfitSoprPattern`](CapLossMvrvNetPriceProfitSoprPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3454](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3454)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3406](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3406)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3454](https://github.com/
|
||||
|
||||
> **supply**: [`DeltaDominanceHalfInTotalPattern`](DeltaDominanceHalfInTotalPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3455](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3455)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3407](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3407)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,4 +46,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3455](https://github.com/
|
||||
|
||||
> **unrealized**: [`LossNetNuplProfitPattern`](LossNetNuplProfitPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3456](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3456)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3408](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3408)
|
||||
|
||||
+6
-6
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: ActivityOutputsRealizedSupplyUnrealizedPattern2
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3501](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3501)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3453](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3453)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3501](https://github.com/
|
||||
|
||||
> **activity**: [`TransferPattern`](TransferPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3502](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3502)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3454](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3454)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3502](https://github.com/
|
||||
|
||||
> **outputs**: [`SpendingSpentUnspentPattern`](SpendingSpentUnspentPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3503](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3503)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3455](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3455)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3503](https://github.com/
|
||||
|
||||
> **realized**: [`CapLossMvrvPriceProfitPattern`](CapLossMvrvPriceProfitPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3504](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3504)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3456](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3456)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3504](https://github.com/
|
||||
|
||||
> **supply**: [`DeltaDominanceTotalPattern`](DeltaDominanceTotalPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3505](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3505)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3457](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3457)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,4 +46,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3505](https://github.com/
|
||||
|
||||
> **unrealized**: [`NuplPattern`](NuplPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3506](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3506)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3458](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3458)
|
||||
|
||||
+6
-6
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: ActivityOutputsRealizedSupplyUnrealizedPattern3
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3476](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3476)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3428](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3428)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3476](https://github.com/
|
||||
|
||||
> **activity**: [`TransferPattern`](TransferPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3477](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3477)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3429](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3429)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3477](https://github.com/
|
||||
|
||||
> **outputs**: [`SpendingSpentUnspentPattern`](SpendingSpentUnspentPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3478](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3478)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3430](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3430)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3478](https://github.com/
|
||||
|
||||
> **realized**: [`CapLossMvrvPriceProfitPattern`](CapLossMvrvPriceProfitPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3479](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3479)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3431](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3431)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3479](https://github.com/
|
||||
|
||||
> **supply**: [`DeltaDominanceHalfInTotalPattern`](DeltaDominanceHalfInTotalPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3480](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3480)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3432](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3432)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,4 +46,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3480](https://github.com/
|
||||
|
||||
> **unrealized**: [`LossNuplProfitPattern`](LossNuplProfitPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3481](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3481)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3433](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3433)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AddrAfterTxidParam
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:14](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L14)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:14](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L14)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:14](https://github.com/bi
|
||||
|
||||
> **address**: `string`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:15](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L15)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:15](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L15)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,6 +22,6 @@ Defined in: [Developer/brk/modules/brk-client/index.js:15](https://github.com/bi
|
||||
|
||||
> **afterTxid**: `string`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:16](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L16)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:16](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L16)
|
||||
|
||||
Last txid from the previous page (return transactions strictly older than this)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AddrChainStats
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:23](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L23)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:23](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L23)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:23](https://github.com/bi
|
||||
|
||||
> **fundedTxoCount**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:24](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L24)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:24](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L24)
|
||||
|
||||
Total number of transaction outputs that funded this address
|
||||
|
||||
@@ -24,7 +24,7 @@ Total number of transaction outputs that funded this address
|
||||
|
||||
> **fundedTxoSum**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:25](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L25)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:25](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L25)
|
||||
|
||||
Total amount in satoshis received by this address across all funded outputs
|
||||
|
||||
@@ -34,7 +34,7 @@ Total amount in satoshis received by this address across all funded outputs
|
||||
|
||||
> **realizedPrice**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:30](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L30)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:30](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L30)
|
||||
|
||||
Realized price (average cost basis) in USD
|
||||
|
||||
@@ -44,7 +44,7 @@ Realized price (average cost basis) in USD
|
||||
|
||||
> **spentTxoCount**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:26](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L26)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:26](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L26)
|
||||
|
||||
Total number of transaction outputs spent from this address
|
||||
|
||||
@@ -54,7 +54,7 @@ Total number of transaction outputs spent from this address
|
||||
|
||||
> **spentTxoSum**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:27](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L27)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:27](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L27)
|
||||
|
||||
Total amount in satoshis spent from this address
|
||||
|
||||
@@ -64,7 +64,7 @@ Total amount in satoshis spent from this address
|
||||
|
||||
> **txCount**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:28](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L28)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:28](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L28)
|
||||
|
||||
Total number of confirmed transactions involving this address
|
||||
|
||||
@@ -74,6 +74,6 @@ Total number of confirmed transactions involving this address
|
||||
|
||||
> **typeIndex**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:29](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L29)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:29](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L29)
|
||||
|
||||
Index of this address within its type on the blockchain
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
[**brk-client**](../README.md)
|
||||
|
||||
***
|
||||
|
||||
[brk-client](../globals.md) / AddrHashPrefixMatches
|
||||
|
||||
# Interface: AddrHashPrefixMatches
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:33](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L33)
|
||||
|
||||
## Properties
|
||||
|
||||
### addresses
|
||||
|
||||
> **addresses**: `string`[]
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:37](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L37)
|
||||
|
||||
***
|
||||
|
||||
### addrType
|
||||
|
||||
> **addrType**: [`OutputType`](../type-aliases/OutputType.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:34](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L34)
|
||||
|
||||
***
|
||||
|
||||
### prefix
|
||||
|
||||
> **prefix**: `string`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:35](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L35)
|
||||
|
||||
***
|
||||
|
||||
### truncated
|
||||
|
||||
> **truncated**: `boolean`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:36](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L36)
|
||||
@@ -1,25 +0,0 @@
|
||||
[**brk-client**](../README.md)
|
||||
|
||||
***
|
||||
|
||||
[brk-client](../globals.md) / AddrHashPrefixParam
|
||||
|
||||
# Interface: AddrHashPrefixParam
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:40](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L40)
|
||||
|
||||
## Properties
|
||||
|
||||
### addrType
|
||||
|
||||
> **addrType**: [`OutputType`](../type-aliases/OutputType.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:41](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L41)
|
||||
|
||||
***
|
||||
|
||||
### prefix
|
||||
|
||||
> **prefix**: `string`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:42](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L42)
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AddrMempoolStats
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:49](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L49)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:37](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L37)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:49](https://github.com/bi
|
||||
|
||||
> **fundedTxoCount**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:50](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L50)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:38](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L38)
|
||||
|
||||
Number of unconfirmed transaction outputs funding this address
|
||||
|
||||
@@ -24,7 +24,7 @@ Number of unconfirmed transaction outputs funding this address
|
||||
|
||||
> **fundedTxoSum**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:51](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L51)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:39](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L39)
|
||||
|
||||
Total amount in satoshis being received in unconfirmed transactions
|
||||
|
||||
@@ -34,7 +34,7 @@ Total amount in satoshis being received in unconfirmed transactions
|
||||
|
||||
> **spentTxoCount**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:52](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L52)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:40](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L40)
|
||||
|
||||
Number of unconfirmed transaction inputs spending from this address
|
||||
|
||||
@@ -44,7 +44,7 @@ Number of unconfirmed transaction inputs spending from this address
|
||||
|
||||
> **spentTxoSum**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:53](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L53)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:41](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L41)
|
||||
|
||||
Total amount in satoshis being spent in unconfirmed transactions
|
||||
|
||||
@@ -54,6 +54,6 @@ Total amount in satoshis being spent in unconfirmed transactions
|
||||
|
||||
> **txCount**: `number`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:54](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L54)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:42](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L42)
|
||||
|
||||
Number of unconfirmed transactions involving this address
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AddrParam
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:59](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L59)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:47](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L47)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,4 +14,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:59](https://github.com/bi
|
||||
|
||||
> **address**: `string`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:60](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L60)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:48](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L48)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AddrStats
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:65](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L65)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:53](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L53)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:65](https://github.com/bi
|
||||
|
||||
> **address**: `string`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:66](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L66)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:54](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L54)
|
||||
|
||||
Bitcoin address string
|
||||
|
||||
@@ -24,7 +24,7 @@ Bitcoin address string
|
||||
|
||||
> **addrType**: [`OutputType`](../type-aliases/OutputType.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:67](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L67)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:55](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L55)
|
||||
|
||||
Address type (p2pkh, p2sh, v0_p2wpkh, v0_p2wsh, v1_p2tr, etc.)
|
||||
|
||||
@@ -34,7 +34,7 @@ Address type (p2pkh, p2sh, v0_p2wpkh, v0_p2wsh, v1_p2tr, etc.)
|
||||
|
||||
> **chainStats**: [`AddrChainStats`](AddrChainStats.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:68](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L68)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:56](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L56)
|
||||
|
||||
Statistics for confirmed transactions on the blockchain
|
||||
|
||||
@@ -44,6 +44,6 @@ Statistics for confirmed transactions on the blockchain
|
||||
|
||||
> **mempoolStats**: [`AddrMempoolStats`](AddrMempoolStats.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:69](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L69)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:57](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L57)
|
||||
|
||||
Statistics for unconfirmed transactions in the mempool
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AddrUtxoPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4716](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4716)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4668](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4668)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4716](https://github.com/
|
||||
|
||||
> **addr**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4717](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4717)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4669](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4669)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,4 +22,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4717](https://github.com/
|
||||
|
||||
> **utxo**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4718](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4718)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4670](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4670)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AddrValidation
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:74](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L74)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:62](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L62)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:74](https://github.com/bi
|
||||
|
||||
> `optional` **address?**: `string` \| `null`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:76](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L76)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:64](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L64)
|
||||
|
||||
The validated address
|
||||
|
||||
@@ -24,7 +24,7 @@ The validated address
|
||||
|
||||
> `optional` **error?**: `string` \| `null`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:83](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L83)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:71](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L71)
|
||||
|
||||
Error message for invalid addresses
|
||||
|
||||
@@ -34,7 +34,7 @@ Error message for invalid addresses
|
||||
|
||||
> `optional` **errorLocations?**: `number`[] \| `null`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:82](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L82)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:70](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L70)
|
||||
|
||||
Error locations (empty array for most errors)
|
||||
|
||||
@@ -44,7 +44,7 @@ Error locations (empty array for most errors)
|
||||
|
||||
> `optional` **isscript?**: `boolean` \| `null`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:78](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L78)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:66](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L66)
|
||||
|
||||
Whether this is a script address (P2SH)
|
||||
|
||||
@@ -54,7 +54,7 @@ Whether this is a script address (P2SH)
|
||||
|
||||
> **isvalid**: `boolean`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:75](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L75)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:63](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L63)
|
||||
|
||||
Whether the address is valid
|
||||
|
||||
@@ -64,7 +64,7 @@ Whether the address is valid
|
||||
|
||||
> `optional` **iswitness?**: `boolean` \| `null`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:79](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L79)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:67](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L67)
|
||||
|
||||
Whether this is a witness address
|
||||
|
||||
@@ -74,7 +74,7 @@ Whether this is a witness address
|
||||
|
||||
> `optional` **scriptPubKey?**: `string` \| `null`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:77](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L77)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:65](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L65)
|
||||
|
||||
The scriptPubKey in hex
|
||||
|
||||
@@ -84,7 +84,7 @@ The scriptPubKey in hex
|
||||
|
||||
> `optional` **witnessProgram?**: `string` \| `null`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:81](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L81)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:69](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L69)
|
||||
|
||||
Witness program in hex
|
||||
|
||||
@@ -94,6 +94,6 @@ Witness program in hex
|
||||
|
||||
> `optional` **witnessVersion?**: `number` \| `null`
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:80](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L80)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:68](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L68)
|
||||
|
||||
Witness version (0 for P2WPKH/P2WSH, 1 for P2TR)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AdjustedRatioValuePattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4228](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4228)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4180](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4180)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4228](https://github.com/
|
||||
|
||||
> **adjusted**: [`RatioTransferValuePattern`](RatioTransferValuePattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4229](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4229)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4181](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4181)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4229](https://github.com/
|
||||
|
||||
> **ratio**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4230](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4230)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4182](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4182)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,4 +30,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4230](https://github.com/
|
||||
|
||||
> **valueDestroyed**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4231](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4231)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4183](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4183)
|
||||
|
||||
+14
-14
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AllEmptyOpP2aP2msP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshUnknownPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2380](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2380)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2359](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2359)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2380](https://github.com/
|
||||
|
||||
> **all**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2381](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2381)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2360](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2360)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2381](https://github.com/
|
||||
|
||||
> **empty**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2382](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2382)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2361](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2361)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2382](https://github.com/
|
||||
|
||||
> **opReturn**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2383](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2383)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2362](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2362)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2383](https://github.com/
|
||||
|
||||
> **p2a**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2384](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2384)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2363](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2363)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2384](https://github.com/
|
||||
|
||||
> **p2ms**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2385](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2385)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2364](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2364)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2385](https://github.com/
|
||||
|
||||
> **p2pk33**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2386](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2386)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2365](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2365)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2386](https://github.com/
|
||||
|
||||
> **p2pk65**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2387](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2387)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2366](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2366)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2387](https://github.com/
|
||||
|
||||
> **p2pkh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2388](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2388)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2367](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2367)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,7 +78,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2388](https://github.com/
|
||||
|
||||
> **p2sh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2389](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2389)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2368](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2368)
|
||||
|
||||
***
|
||||
|
||||
@@ -86,7 +86,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2389](https://github.com/
|
||||
|
||||
> **p2tr**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2390](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2390)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2369](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2369)
|
||||
|
||||
***
|
||||
|
||||
@@ -94,7 +94,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2390](https://github.com/
|
||||
|
||||
> **p2wpkh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2391](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2391)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2370](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2370)
|
||||
|
||||
***
|
||||
|
||||
@@ -102,7 +102,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2391](https://github.com/
|
||||
|
||||
> **p2wsh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2392](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2392)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2371](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2371)
|
||||
|
||||
***
|
||||
|
||||
@@ -110,4 +110,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2392](https://github.com/
|
||||
|
||||
> **unknown**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2393](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2393)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2372](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2372)
|
||||
|
||||
+13
-13
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AllEmptyP2aP2msP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshUnknownPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2499](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2499)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2478](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2478)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2499](https://github.com/
|
||||
|
||||
> **all**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2500](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2500)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2479](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2479)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2500](https://github.com/
|
||||
|
||||
> **empty**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2501](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2501)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2480](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2480)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2501](https://github.com/
|
||||
|
||||
> **p2a**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2502](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2502)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2481](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2481)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2502](https://github.com/
|
||||
|
||||
> **p2ms**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2503](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2503)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2482](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2482)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2503](https://github.com/
|
||||
|
||||
> **p2pk33**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2504](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2504)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2483](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2483)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2504](https://github.com/
|
||||
|
||||
> **p2pk65**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2505](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2505)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2484](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2484)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2505](https://github.com/
|
||||
|
||||
> **p2pkh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2506](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2506)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2485](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2485)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2506](https://github.com/
|
||||
|
||||
> **p2sh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2507](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2507)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2486](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2486)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,7 +78,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2507](https://github.com/
|
||||
|
||||
> **p2tr**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2508](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2508)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2487](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2487)
|
||||
|
||||
***
|
||||
|
||||
@@ -86,7 +86,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2508](https://github.com/
|
||||
|
||||
> **p2wpkh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2509](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2509)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2488](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2488)
|
||||
|
||||
***
|
||||
|
||||
@@ -94,7 +94,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2509](https://github.com/
|
||||
|
||||
> **p2wsh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2510](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2510)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2489](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2489)
|
||||
|
||||
***
|
||||
|
||||
@@ -102,4 +102,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2510](https://github.com/
|
||||
|
||||
> **unknown**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2511](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2511)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2490](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2490)
|
||||
|
||||
+10
-10
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern4
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2814](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2814)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2777](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2777)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2814](https://github.com/
|
||||
|
||||
> **all**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2815](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2815)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2778](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2778)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2815](https://github.com/
|
||||
|
||||
> **p2a**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2816](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2816)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2779](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2779)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2816](https://github.com/
|
||||
|
||||
> **p2pk33**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2817](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2817)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2780](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2780)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2817](https://github.com/
|
||||
|
||||
> **p2pk65**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2818](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2818)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2781](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2781)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2818](https://github.com/
|
||||
|
||||
> **p2pkh**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2819](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2819)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2782](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2782)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2819](https://github.com/
|
||||
|
||||
> **p2sh**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2820](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2820)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2783](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2783)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2820](https://github.com/
|
||||
|
||||
> **p2tr**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2821](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2821)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2784](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2784)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2821](https://github.com/
|
||||
|
||||
> **p2wpkh**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2822](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2822)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2785](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2785)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,4 +78,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2822](https://github.com/
|
||||
|
||||
> **p2wsh**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2823](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2823)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2786](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2786)
|
||||
|
||||
+10
-10
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern5
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2781](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2781)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2744](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2744)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2781](https://github.com/
|
||||
|
||||
> **all**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2782](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2782)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2745](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2745)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2782](https://github.com/
|
||||
|
||||
> **p2a**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2783](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2783)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2746](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2746)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2783](https://github.com/
|
||||
|
||||
> **p2pk33**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2784](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2784)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2747](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2747)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2784](https://github.com/
|
||||
|
||||
> **p2pk65**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2785](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2785)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2748](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2748)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2785](https://github.com/
|
||||
|
||||
> **p2pkh**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2786](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2786)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2749](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2749)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2786](https://github.com/
|
||||
|
||||
> **p2sh**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2787](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2787)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2750](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2750)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2787](https://github.com/
|
||||
|
||||
> **p2tr**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2788](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2788)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2751](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2751)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2788](https://github.com/
|
||||
|
||||
> **p2wpkh**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2789](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2789)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2752](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2752)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,4 +78,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2789](https://github.com/
|
||||
|
||||
> **p2wsh**: [`BpsPercentRatioPattern2`](BpsPercentRatioPattern2.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2790](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2790)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2753](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2753)
|
||||
|
||||
+10
-10
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern6
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2748](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2748)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2711](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2711)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2748](https://github.com/
|
||||
|
||||
> **all**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2749](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2749)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2712](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2712)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2749](https://github.com/
|
||||
|
||||
> **p2a**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2750](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2750)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2713](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2713)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2750](https://github.com/
|
||||
|
||||
> **p2pk33**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2751](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2751)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2714](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2714)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2751](https://github.com/
|
||||
|
||||
> **p2pk65**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2752](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2752)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2715](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2715)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2752](https://github.com/
|
||||
|
||||
> **p2pkh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2753](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2753)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2716](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2716)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2753](https://github.com/
|
||||
|
||||
> **p2sh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2754](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2754)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2717](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2717)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2754](https://github.com/
|
||||
|
||||
> **p2tr**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2755](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2755)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2718](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2718)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2755](https://github.com/
|
||||
|
||||
> **p2wpkh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2756](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2756)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2719](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2719)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,4 +78,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2756](https://github.com/
|
||||
|
||||
> **p2wsh**: [`AverageBlockCumulativeSumPattern`](AverageBlockCumulativeSumPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2757](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2757)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2720](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2720)
|
||||
|
||||
+10
-10
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern7
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2847](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2847)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2810](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2810)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2847](https://github.com/
|
||||
|
||||
> **all**: [`_1m1w1y24hBpsPercentRatioPattern`](1m1w1y24hBpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2848](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2848)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2811](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2811)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2848](https://github.com/
|
||||
|
||||
> **p2a**: [`_1m1w1y24hBpsPercentRatioPattern`](1m1w1y24hBpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2849](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2849)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2812](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2812)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2849](https://github.com/
|
||||
|
||||
> **p2pk33**: [`_1m1w1y24hBpsPercentRatioPattern`](1m1w1y24hBpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2850](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2850)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2813](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2813)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2850](https://github.com/
|
||||
|
||||
> **p2pk65**: [`_1m1w1y24hBpsPercentRatioPattern`](1m1w1y24hBpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2851](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2851)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2814](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2814)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2851](https://github.com/
|
||||
|
||||
> **p2pkh**: [`_1m1w1y24hBpsPercentRatioPattern`](1m1w1y24hBpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2852](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2852)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2815](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2815)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2852](https://github.com/
|
||||
|
||||
> **p2sh**: [`_1m1w1y24hBpsPercentRatioPattern`](1m1w1y24hBpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2853](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2853)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2816](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2816)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2853](https://github.com/
|
||||
|
||||
> **p2tr**: [`_1m1w1y24hBpsPercentRatioPattern`](1m1w1y24hBpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2854](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2854)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2817](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2817)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2854](https://github.com/
|
||||
|
||||
> **p2wpkh**: [`_1m1w1y24hBpsPercentRatioPattern`](1m1w1y24hBpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2855](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2855)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2818](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2818)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,4 +78,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2855](https://github.com/
|
||||
|
||||
> **p2wsh**: [`_1m1w1y24hBpsPercentRatioPattern`](1m1w1y24hBpsPercentRatioPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2856](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2856)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2819](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2819)
|
||||
|
||||
+11
-11
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshSharePattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2699](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2699)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2662](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2662)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2699](https://github.com/
|
||||
|
||||
> **all**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2700](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2700)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2663](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2663)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2700](https://github.com/
|
||||
|
||||
> **p2a**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2701](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2701)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2664](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2664)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2701](https://github.com/
|
||||
|
||||
> **p2pk33**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2702](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2702)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2665](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2665)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2702](https://github.com/
|
||||
|
||||
> **p2pk65**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2703](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2703)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2666](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2666)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2703](https://github.com/
|
||||
|
||||
> **p2pkh**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2704](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2704)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2667](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2667)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2704](https://github.com/
|
||||
|
||||
> **p2sh**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2705](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2705)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2668](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2668)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2705](https://github.com/
|
||||
|
||||
> **p2tr**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2706](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2706)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2669](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2669)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2706](https://github.com/
|
||||
|
||||
> **p2wpkh**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2707](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2707)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2670](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2670)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,7 +78,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2707](https://github.com/
|
||||
|
||||
> **p2wsh**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2708](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2708)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2671](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2671)
|
||||
|
||||
***
|
||||
|
||||
@@ -86,4 +86,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2708](https://github.com/
|
||||
|
||||
> **share**: [`AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern5`](AllP2aP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshPattern5.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2709](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2709)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2672](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2672)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AllSthPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4754](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4754)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4706](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4706)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4754](https://github.com/
|
||||
|
||||
> **all**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4755](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4755)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4707](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4707)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,4 +22,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4755](https://github.com/
|
||||
|
||||
> **sth**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4756](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4756)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4708](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4708)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AllSthPattern2
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4735](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4735)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4687](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4687)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4735](https://github.com/
|
||||
|
||||
> **all**: [`BtcCentsDeltaSatsUsdPattern`](BtcCentsDeltaSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4736](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4736)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4688](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4688)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,4 +22,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:4736](https://github.com/
|
||||
|
||||
> **sth**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4737](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L4737)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:4689](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L4689)
|
||||
|
||||
+12
-12
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AverageBaseCumulativeMaxMedianMinPct10Pct25Pct75Pct90SumPattern\<T\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2661](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2661)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2624](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2624)
|
||||
|
||||
## Type Parameters
|
||||
|
||||
@@ -20,7 +20,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2661](https://github.com/
|
||||
|
||||
> **average**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2662](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2662)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2625](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2625)
|
||||
|
||||
***
|
||||
|
||||
@@ -28,7 +28,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2662](https://github.com/
|
||||
|
||||
> **base**: [`SeriesPattern18`](../type-aliases/SeriesPattern18.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2663](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2663)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2626](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2626)
|
||||
|
||||
***
|
||||
|
||||
@@ -36,7 +36,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2663](https://github.com/
|
||||
|
||||
> **cumulative**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2664](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2664)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2627](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2627)
|
||||
|
||||
***
|
||||
|
||||
@@ -44,7 +44,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2664](https://github.com/
|
||||
|
||||
> **max**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2665](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2665)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2628](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2628)
|
||||
|
||||
***
|
||||
|
||||
@@ -52,7 +52,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2665](https://github.com/
|
||||
|
||||
> **median**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2666](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2666)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2629](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2629)
|
||||
|
||||
***
|
||||
|
||||
@@ -60,7 +60,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2666](https://github.com/
|
||||
|
||||
> **min**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2667](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2667)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2630](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2630)
|
||||
|
||||
***
|
||||
|
||||
@@ -68,7 +68,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2667](https://github.com/
|
||||
|
||||
> **pct10**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2668](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2668)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2631](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2631)
|
||||
|
||||
***
|
||||
|
||||
@@ -76,7 +76,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2668](https://github.com/
|
||||
|
||||
> **pct25**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2669](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2669)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2632](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2632)
|
||||
|
||||
***
|
||||
|
||||
@@ -84,7 +84,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2669](https://github.com/
|
||||
|
||||
> **pct75**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2670](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2670)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2633](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2633)
|
||||
|
||||
***
|
||||
|
||||
@@ -92,7 +92,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2670](https://github.com/
|
||||
|
||||
> **pct90**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2671](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2671)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2634](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2634)
|
||||
|
||||
***
|
||||
|
||||
@@ -100,4 +100,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2671](https://github.com/
|
||||
|
||||
> **sum**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`T`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2672](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2672)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2635](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2635)
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AverageBlockCumulativeInSumPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3241](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3241)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3193](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3193)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3241](https://github.com/
|
||||
|
||||
> **average**: [`_1m1w1y24hPattern3`](1m1w1y24hPattern3.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3242](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3242)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3194](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3194)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3242](https://github.com/
|
||||
|
||||
> **block**: [`BtcCentsSatsUsdPattern3`](BtcCentsSatsUsdPattern3.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3243](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3243)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3195](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3195)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3243](https://github.com/
|
||||
|
||||
> **cumulative**: [`BtcCentsSatsUsdPattern`](BtcCentsSatsUsdPattern.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3244](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3244)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3196](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3196)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3244](https://github.com/
|
||||
|
||||
> **inLoss**: [`AverageBlockCumulativeSumPattern3`](AverageBlockCumulativeSumPattern3.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3245](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3245)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3197](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3197)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3245](https://github.com/
|
||||
|
||||
> **inProfit**: [`AverageBlockCumulativeSumPattern3`](AverageBlockCumulativeSumPattern3.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3246](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3246)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3198](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3198)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,4 +54,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:3246](https://github.com/
|
||||
|
||||
> **sum**: [`_1m1w1y24hPattern4`](1m1w1y24hPattern4.md)
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3247](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L3247)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:3199](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L3199)
|
||||
|
||||
+12
-12
@@ -6,7 +6,7 @@
|
||||
|
||||
# Interface: AverageBlockCumulativeMaxMedianMinPct10Pct25Pct75Pct90SumPattern
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2586](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2586)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2549](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2549)
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -14,7 +14,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2586](https://github.com/
|
||||
|
||||
> **average**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2587](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2587)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2550](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2550)
|
||||
|
||||
***
|
||||
|
||||
@@ -22,7 +22,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2587](https://github.com/
|
||||
|
||||
> **block**: [`SeriesPattern18`](../type-aliases/SeriesPattern18.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2588](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2588)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2551](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2551)
|
||||
|
||||
***
|
||||
|
||||
@@ -30,7 +30,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2588](https://github.com/
|
||||
|
||||
> **cumulative**: [`SeriesPattern1`](../type-aliases/SeriesPattern1.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2589](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2589)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2552](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2552)
|
||||
|
||||
***
|
||||
|
||||
@@ -38,7 +38,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2589](https://github.com/
|
||||
|
||||
> **max**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2590](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2590)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2553](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2553)
|
||||
|
||||
***
|
||||
|
||||
@@ -46,7 +46,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2590](https://github.com/
|
||||
|
||||
> **median**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2591](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2591)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2554](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2554)
|
||||
|
||||
***
|
||||
|
||||
@@ -54,7 +54,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2591](https://github.com/
|
||||
|
||||
> **min**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2592](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2592)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2555](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2555)
|
||||
|
||||
***
|
||||
|
||||
@@ -62,7 +62,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2592](https://github.com/
|
||||
|
||||
> **pct10**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2593](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2593)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2556](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2556)
|
||||
|
||||
***
|
||||
|
||||
@@ -70,7 +70,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2593](https://github.com/
|
||||
|
||||
> **pct25**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2594](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2594)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2557](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2557)
|
||||
|
||||
***
|
||||
|
||||
@@ -78,7 +78,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2594](https://github.com/
|
||||
|
||||
> **pct75**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2595](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2595)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2558](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2558)
|
||||
|
||||
***
|
||||
|
||||
@@ -86,7 +86,7 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2595](https://github.com/
|
||||
|
||||
> **pct90**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2596](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2596)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2559](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2559)
|
||||
|
||||
***
|
||||
|
||||
@@ -94,4 +94,4 @@ Defined in: [Developer/brk/modules/brk-client/index.js:2596](https://github.com/
|
||||
|
||||
> **sum**: [`_1m1w1y24hPattern`](1m1w1y24hPattern.md)\<`number`\>
|
||||
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2597](https://github.com/bitcoinresearchkit/brk/blob/7a718293c0ddbae305c8352474c81c0e99fe1200/modules/brk-client/index.js#L2597)
|
||||
Defined in: [Developer/brk/modules/brk-client/index.js:2560](https://github.com/bitcoinresearchkit/brk/blob/e23554811be77a28474c946e0b8ab586d4075ec9/modules/brk-client/index.js#L2560)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user