mirror of
https://github.com/bitcoinresearchkit/brk.git
synced 2026-06-17 02:09:44 -07:00
global: add cohorts by entry
This commit is contained in:
+516
-11
@@ -2506,6 +2506,22 @@ function create_10y1m1w1y2y3m3y4y5y6m6y8yPattern3(client, acc) {
|
||||
* @property {AdjustedRatioValuePattern} sopr
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern2
|
||||
* @property {CentsDeltaToUsdPattern} cap
|
||||
* @property {PricePattern} capitalized
|
||||
* @property {BlockCumulativeSumPattern} grossPnl
|
||||
* @property {BlockCumulativeNegativeSumPattern} loss
|
||||
* @property {SeriesPattern1<StoredF32>} mvrv
|
||||
* @property {BlockChangeCumulativeDeltaSumPattern} netPnl
|
||||
* @property {BlockCumulativeSumPattern} peakRegret
|
||||
* @property {BpsCentsPercentilesRatioSatsSmaStdUsdPattern} price
|
||||
* @property {BlockCumulativeSumPattern} profit
|
||||
* @property {_1m1w1y24hPattern<StoredF64>} profitToLossRatio
|
||||
* @property {_1m1w1y24hPattern8} sellSideRiskRatio
|
||||
* @property {RatioValuePattern2} sopr
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} EmptyOpP2aP2msP2pk33P2pk65P2pkhP2shP2trP2wpkhP2wshUnknownPattern2
|
||||
* @property {_1m1w1y24hBpsPercentRatioPattern} empty
|
||||
@@ -3017,6 +3033,17 @@ function create_1m1w1y24hBpsPercentRatioPattern(client, acc) {
|
||||
* @property {_1m1w1y24hBpsPercentRatioPattern} spendableOutputToReusedAddrShare
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} ActivityCostInvestedOutputsRealizedSupplyUnrealizedPattern2
|
||||
* @property {CoindaysCoinyearsDormancyTransferPattern} activity
|
||||
* @property {InMaxMinPerSupplyPattern} costBasis
|
||||
* @property {InPattern} investedCapital
|
||||
* @property {SpendingSpentUnspentPattern} outputs
|
||||
* @property {CapCapitalizedGrossLossMvrvNetPeakPriceProfitSellSoprPattern2} realized
|
||||
* @property {DeltaDominanceHalfInTotalPattern2} supply
|
||||
* @property {CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2} unrealized
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} CapLossMvrvNetPriceProfitSoprPattern
|
||||
* @property {CentsDeltaUsdPattern} cap
|
||||
@@ -5046,6 +5073,25 @@ function createPriceRatioPattern(client, acc, disc) {
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* @typedef {Object} RatioValuePattern2
|
||||
* @property {_1m1w1y24hPattern<StoredF64>} ratio
|
||||
* @property {AverageBlockCumulativeSumPattern<Cents>} valueDestroyed
|
||||
*/
|
||||
|
||||
/**
|
||||
* Create a RatioValuePattern2 pattern node
|
||||
* @param {BrkClient} client
|
||||
* @param {string} acc - Accumulated series name
|
||||
* @returns {RatioValuePattern2}
|
||||
*/
|
||||
function createRatioValuePattern2(client, acc) {
|
||||
return {
|
||||
ratio: create_1m1w1y24hPattern(client, _m(acc, 'sopr')),
|
||||
valueDestroyed: createAverageBlockCumulativeSumPattern(client, _m(acc, 'value_destroyed')),
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* @typedef {Object} RatioValuePattern
|
||||
* @property {_24hPattern} ratio
|
||||
@@ -6787,6 +6833,7 @@ function createTransferPattern(client, acc) {
|
||||
* @property {SeriesTree_Cohorts_Utxo_OverAge} overAge
|
||||
* @property {SeriesTree_Cohorts_Utxo_Epoch} epoch
|
||||
* @property {SeriesTree_Cohorts_Utxo_Class} class
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry} entry
|
||||
* @property {SeriesTree_Cohorts_Utxo_OverAmount} overAmount
|
||||
* @property {SeriesTree_Cohorts_Utxo_AmountRange} amountRange
|
||||
* @property {SeriesTree_Cohorts_Utxo_UnderAmount} underAmount
|
||||
@@ -7144,7 +7191,7 @@ function createTransferPattern(client, acc) {
|
||||
* @property {SeriesTree_Cohorts_Utxo_Lth_Realized_Price} price
|
||||
* @property {SeriesPattern1<StoredF32>} mvrv
|
||||
* @property {BlockChangeCumulativeDeltaSumPattern} netPnl
|
||||
* @property {SeriesTree_Cohorts_Utxo_Lth_Realized_Sopr} sopr
|
||||
* @property {RatioValuePattern2} sopr
|
||||
* @property {BlockCumulativeSumPattern} grossPnl
|
||||
* @property {_1m1w1y24hPattern8} sellSideRiskRatio
|
||||
* @property {BlockCumulativeSumPattern} peakRegret
|
||||
@@ -7248,12 +7295,6 @@ function createTransferPattern(client, acc) {
|
||||
* @property {PriceRatioPattern} m3sd
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Lth_Realized_Sopr
|
||||
* @property {AverageBlockCumulativeSumPattern<Cents>} valueDestroyed
|
||||
* @property {_1m1w1y24hPattern<StoredF64>} ratio
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_AgeRange
|
||||
* @property {ActivityOutputsRealizedSupplyUnrealizedPattern} under1h
|
||||
@@ -7354,6 +7395,258 @@ function createTransferPattern(client, acc) {
|
||||
* @property {ActivityOutputsRealizedSupplyUnrealizedPattern} _2026
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Discount} discount
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Premium} premium
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Discount
|
||||
* @property {DeltaDominanceHalfInTotalPattern2} supply
|
||||
* @property {SpendingSpentUnspentPattern} outputs
|
||||
* @property {CoindaysCoinyearsDormancyTransferPattern} activity
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Discount_Realized} realized
|
||||
* @property {InMaxMinPerSupplyPattern} costBasis
|
||||
* @property {CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2} unrealized
|
||||
* @property {InPattern} investedCapital
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Discount_Realized
|
||||
* @property {CentsDeltaToUsdPattern} cap
|
||||
* @property {BlockCumulativeSumPattern} profit
|
||||
* @property {BlockCumulativeNegativeSumPattern} loss
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price} price
|
||||
* @property {SeriesPattern1<StoredF32>} mvrv
|
||||
* @property {BlockChangeCumulativeDeltaSumPattern} netPnl
|
||||
* @property {RatioValuePattern2} sopr
|
||||
* @property {BlockCumulativeSumPattern} grossPnl
|
||||
* @property {_1m1w1y24hPattern8} sellSideRiskRatio
|
||||
* @property {BlockCumulativeSumPattern} peakRegret
|
||||
* @property {PricePattern} capitalized
|
||||
* @property {_1m1w1y24hPattern<StoredF64>} profitToLossRatio
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price
|
||||
* @property {SeriesPattern1<Dollars>} usd
|
||||
* @property {SeriesPattern1<Cents>} cents
|
||||
* @property {SeriesPattern1<SatsFract>} sats
|
||||
* @property {SeriesPattern1<BasisPoints32>} bps
|
||||
* @property {SeriesPattern1<StoredF32>} ratio
|
||||
* @property {Pct0Pct1Pct2Pct5Pct95Pct98Pct99Pattern} percentiles
|
||||
* @property {_1m1w1y2y4yAllPattern} sma
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev} stdDev
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_All} all
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_4y} _4y
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_2y} _2y
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_1y} _1y
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_All
|
||||
* @property {SeriesPattern1<StoredF32>} sd
|
||||
* @property {SeriesPattern1<StoredF32>} zscore
|
||||
* @property {CentsSatsUsdPattern} _0sd
|
||||
* @property {PriceRatioPattern} p05sd
|
||||
* @property {PriceRatioPattern} p1sd
|
||||
* @property {PriceRatioPattern} p15sd
|
||||
* @property {PriceRatioPattern} p2sd
|
||||
* @property {PriceRatioPattern} p25sd
|
||||
* @property {PriceRatioPattern} p3sd
|
||||
* @property {PriceRatioPattern} m05sd
|
||||
* @property {PriceRatioPattern} m1sd
|
||||
* @property {PriceRatioPattern} m15sd
|
||||
* @property {PriceRatioPattern} m2sd
|
||||
* @property {PriceRatioPattern} m25sd
|
||||
* @property {PriceRatioPattern} m3sd
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_4y
|
||||
* @property {SeriesPattern1<StoredF32>} sd
|
||||
* @property {SeriesPattern1<StoredF32>} zscore
|
||||
* @property {CentsSatsUsdPattern} _0sd
|
||||
* @property {PriceRatioPattern} p05sd
|
||||
* @property {PriceRatioPattern} p1sd
|
||||
* @property {PriceRatioPattern} p15sd
|
||||
* @property {PriceRatioPattern} p2sd
|
||||
* @property {PriceRatioPattern} p25sd
|
||||
* @property {PriceRatioPattern} p3sd
|
||||
* @property {PriceRatioPattern} m05sd
|
||||
* @property {PriceRatioPattern} m1sd
|
||||
* @property {PriceRatioPattern} m15sd
|
||||
* @property {PriceRatioPattern} m2sd
|
||||
* @property {PriceRatioPattern} m25sd
|
||||
* @property {PriceRatioPattern} m3sd
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_2y
|
||||
* @property {SeriesPattern1<StoredF32>} sd
|
||||
* @property {SeriesPattern1<StoredF32>} zscore
|
||||
* @property {CentsSatsUsdPattern} _0sd
|
||||
* @property {PriceRatioPattern} p05sd
|
||||
* @property {PriceRatioPattern} p1sd
|
||||
* @property {PriceRatioPattern} p15sd
|
||||
* @property {PriceRatioPattern} p2sd
|
||||
* @property {PriceRatioPattern} p25sd
|
||||
* @property {PriceRatioPattern} p3sd
|
||||
* @property {PriceRatioPattern} m05sd
|
||||
* @property {PriceRatioPattern} m1sd
|
||||
* @property {PriceRatioPattern} m15sd
|
||||
* @property {PriceRatioPattern} m2sd
|
||||
* @property {PriceRatioPattern} m25sd
|
||||
* @property {PriceRatioPattern} m3sd
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Discount_Realized_Price_StdDev_1y
|
||||
* @property {SeriesPattern1<StoredF32>} sd
|
||||
* @property {SeriesPattern1<StoredF32>} zscore
|
||||
* @property {CentsSatsUsdPattern} _0sd
|
||||
* @property {PriceRatioPattern} p05sd
|
||||
* @property {PriceRatioPattern} p1sd
|
||||
* @property {PriceRatioPattern} p15sd
|
||||
* @property {PriceRatioPattern} p2sd
|
||||
* @property {PriceRatioPattern} p25sd
|
||||
* @property {PriceRatioPattern} p3sd
|
||||
* @property {PriceRatioPattern} m05sd
|
||||
* @property {PriceRatioPattern} m1sd
|
||||
* @property {PriceRatioPattern} m15sd
|
||||
* @property {PriceRatioPattern} m2sd
|
||||
* @property {PriceRatioPattern} m25sd
|
||||
* @property {PriceRatioPattern} m3sd
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Premium
|
||||
* @property {DeltaDominanceHalfInTotalPattern2} supply
|
||||
* @property {SpendingSpentUnspentPattern} outputs
|
||||
* @property {CoindaysCoinyearsDormancyTransferPattern} activity
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Premium_Realized} realized
|
||||
* @property {InMaxMinPerSupplyPattern} costBasis
|
||||
* @property {CapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2} unrealized
|
||||
* @property {InPattern} investedCapital
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Premium_Realized
|
||||
* @property {CentsDeltaToUsdPattern} cap
|
||||
* @property {BlockCumulativeSumPattern} profit
|
||||
* @property {BlockCumulativeNegativeSumPattern} loss
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price} price
|
||||
* @property {SeriesPattern1<StoredF32>} mvrv
|
||||
* @property {BlockChangeCumulativeDeltaSumPattern} netPnl
|
||||
* @property {RatioValuePattern2} sopr
|
||||
* @property {BlockCumulativeSumPattern} grossPnl
|
||||
* @property {_1m1w1y24hPattern8} sellSideRiskRatio
|
||||
* @property {BlockCumulativeSumPattern} peakRegret
|
||||
* @property {PricePattern} capitalized
|
||||
* @property {_1m1w1y24hPattern<StoredF64>} profitToLossRatio
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price
|
||||
* @property {SeriesPattern1<Dollars>} usd
|
||||
* @property {SeriesPattern1<Cents>} cents
|
||||
* @property {SeriesPattern1<SatsFract>} sats
|
||||
* @property {SeriesPattern1<BasisPoints32>} bps
|
||||
* @property {SeriesPattern1<StoredF32>} ratio
|
||||
* @property {Pct0Pct1Pct2Pct5Pct95Pct98Pct99Pattern} percentiles
|
||||
* @property {_1m1w1y2y4yAllPattern} sma
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev} stdDev
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_All} all
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_4y} _4y
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_2y} _2y
|
||||
* @property {SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_1y} _1y
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_All
|
||||
* @property {SeriesPattern1<StoredF32>} sd
|
||||
* @property {SeriesPattern1<StoredF32>} zscore
|
||||
* @property {CentsSatsUsdPattern} _0sd
|
||||
* @property {PriceRatioPattern} p05sd
|
||||
* @property {PriceRatioPattern} p1sd
|
||||
* @property {PriceRatioPattern} p15sd
|
||||
* @property {PriceRatioPattern} p2sd
|
||||
* @property {PriceRatioPattern} p25sd
|
||||
* @property {PriceRatioPattern} p3sd
|
||||
* @property {PriceRatioPattern} m05sd
|
||||
* @property {PriceRatioPattern} m1sd
|
||||
* @property {PriceRatioPattern} m15sd
|
||||
* @property {PriceRatioPattern} m2sd
|
||||
* @property {PriceRatioPattern} m25sd
|
||||
* @property {PriceRatioPattern} m3sd
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_4y
|
||||
* @property {SeriesPattern1<StoredF32>} sd
|
||||
* @property {SeriesPattern1<StoredF32>} zscore
|
||||
* @property {CentsSatsUsdPattern} _0sd
|
||||
* @property {PriceRatioPattern} p05sd
|
||||
* @property {PriceRatioPattern} p1sd
|
||||
* @property {PriceRatioPattern} p15sd
|
||||
* @property {PriceRatioPattern} p2sd
|
||||
* @property {PriceRatioPattern} p25sd
|
||||
* @property {PriceRatioPattern} p3sd
|
||||
* @property {PriceRatioPattern} m05sd
|
||||
* @property {PriceRatioPattern} m1sd
|
||||
* @property {PriceRatioPattern} m15sd
|
||||
* @property {PriceRatioPattern} m2sd
|
||||
* @property {PriceRatioPattern} m25sd
|
||||
* @property {PriceRatioPattern} m3sd
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_2y
|
||||
* @property {SeriesPattern1<StoredF32>} sd
|
||||
* @property {SeriesPattern1<StoredF32>} zscore
|
||||
* @property {CentsSatsUsdPattern} _0sd
|
||||
* @property {PriceRatioPattern} p05sd
|
||||
* @property {PriceRatioPattern} p1sd
|
||||
* @property {PriceRatioPattern} p15sd
|
||||
* @property {PriceRatioPattern} p2sd
|
||||
* @property {PriceRatioPattern} p25sd
|
||||
* @property {PriceRatioPattern} p3sd
|
||||
* @property {PriceRatioPattern} m05sd
|
||||
* @property {PriceRatioPattern} m1sd
|
||||
* @property {PriceRatioPattern} m15sd
|
||||
* @property {PriceRatioPattern} m2sd
|
||||
* @property {PriceRatioPattern} m25sd
|
||||
* @property {PriceRatioPattern} m3sd
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_Entry_Premium_Realized_Price_StdDev_1y
|
||||
* @property {SeriesPattern1<StoredF32>} sd
|
||||
* @property {SeriesPattern1<StoredF32>} zscore
|
||||
* @property {CentsSatsUsdPattern} _0sd
|
||||
* @property {PriceRatioPattern} p05sd
|
||||
* @property {PriceRatioPattern} p1sd
|
||||
* @property {PriceRatioPattern} p15sd
|
||||
* @property {PriceRatioPattern} p2sd
|
||||
* @property {PriceRatioPattern} p25sd
|
||||
* @property {PriceRatioPattern} p3sd
|
||||
* @property {PriceRatioPattern} m05sd
|
||||
* @property {PriceRatioPattern} m1sd
|
||||
* @property {PriceRatioPattern} m15sd
|
||||
* @property {PriceRatioPattern} m2sd
|
||||
* @property {PriceRatioPattern} m25sd
|
||||
* @property {PriceRatioPattern} m3sd
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {Object} SeriesTree_Cohorts_Utxo_OverAmount
|
||||
* @property {ActivityOutputsRealizedSupplyUnrealizedPattern2} _1sat
|
||||
@@ -7919,6 +8212,19 @@ class BrkClient extends BrkClientBase {
|
||||
}
|
||||
});
|
||||
|
||||
ENTRY_NAMES = /** @type {const} */ ({
|
||||
"discount": {
|
||||
"id": "veteran",
|
||||
"short": "Veteran",
|
||||
"long": "Veteran Coins"
|
||||
},
|
||||
"premium": {
|
||||
"id": "rookie",
|
||||
"short": "Rookie",
|
||||
"long": "Rookie Coins"
|
||||
}
|
||||
});
|
||||
|
||||
SPENDABLE_TYPE_NAMES = /** @type {const} */ ({
|
||||
"p2pk65": {
|
||||
"id": "p2pk65",
|
||||
@@ -10239,10 +10545,7 @@ class BrkClient extends BrkClientBase {
|
||||
},
|
||||
mvrv: createSeriesPattern1(this, 'lth_mvrv'),
|
||||
netPnl: createBlockChangeCumulativeDeltaSumPattern(this, 'lth_net'),
|
||||
sopr: {
|
||||
valueDestroyed: createAverageBlockCumulativeSumPattern(this, 'lth_value_destroyed'),
|
||||
ratio: create_1m1w1y24hPattern(this, 'lth_sopr'),
|
||||
},
|
||||
sopr: createRatioValuePattern2(this, 'lth'),
|
||||
grossPnl: createBlockCumulativeSumPattern(this, 'lth_realized_gross_pnl'),
|
||||
sellSideRiskRatio: create_1m1w1y24hPattern8(this, 'lth_sell_side_risk_ratio'),
|
||||
peakRegret: createBlockCumulativeSumPattern(this, 'lth_realized_peak_regret'),
|
||||
@@ -10343,6 +10646,208 @@ class BrkClient extends BrkClientBase {
|
||||
_2025: createActivityOutputsRealizedSupplyUnrealizedPattern(this, 'class_2025'),
|
||||
_2026: createActivityOutputsRealizedSupplyUnrealizedPattern(this, 'class_2026'),
|
||||
},
|
||||
entry: {
|
||||
discount: {
|
||||
supply: createDeltaDominanceHalfInTotalPattern2(this, 'veteran_supply'),
|
||||
outputs: createSpendingSpentUnspentPattern(this, 'veteran'),
|
||||
activity: createCoindaysCoinyearsDormancyTransferPattern(this, 'veteran'),
|
||||
realized: {
|
||||
cap: createCentsDeltaToUsdPattern(this, 'veteran_realized_cap'),
|
||||
profit: createBlockCumulativeSumPattern(this, 'veteran_realized_profit'),
|
||||
loss: createBlockCumulativeNegativeSumPattern(this, 'veteran_realized_loss'),
|
||||
price: {
|
||||
usd: createSeriesPattern1(this, 'veteran_realized_price'),
|
||||
cents: createSeriesPattern1(this, 'veteran_realized_price_cents'),
|
||||
sats: createSeriesPattern1(this, 'veteran_realized_price_sats'),
|
||||
bps: createSeriesPattern1(this, 'veteran_realized_price_ratio_bps'),
|
||||
ratio: createSeriesPattern1(this, 'veteran_realized_price_ratio'),
|
||||
percentiles: createPct0Pct1Pct2Pct5Pct95Pct98Pct99Pattern(this, 'veteran_realized_price'),
|
||||
sma: create_1m1w1y2y4yAllPattern(this, 'veteran_realized_price_ratio_sma'),
|
||||
stdDev: {
|
||||
all: {
|
||||
sd: createSeriesPattern1(this, 'veteran_realized_price_ratio_sd'),
|
||||
zscore: createSeriesPattern1(this, 'veteran_realized_price_ratio_zscore'),
|
||||
_0sd: createCentsSatsUsdPattern(this, 'veteran_realized_price_0sd'),
|
||||
p05sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p0_5sd'),
|
||||
p1sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p1sd'),
|
||||
p15sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p1_5sd'),
|
||||
p2sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p2sd'),
|
||||
p25sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p2_5sd'),
|
||||
p3sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p3sd'),
|
||||
m05sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm0_5sd'),
|
||||
m1sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm1sd'),
|
||||
m15sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm1_5sd'),
|
||||
m2sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm2sd'),
|
||||
m25sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm2_5sd'),
|
||||
m3sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm3sd'),
|
||||
},
|
||||
_4y: {
|
||||
sd: createSeriesPattern1(this, 'veteran_realized_price_ratio_sd_4y'),
|
||||
zscore: createSeriesPattern1(this, 'veteran_realized_price_ratio_zscore_4y'),
|
||||
_0sd: createCentsSatsUsdPattern(this, 'veteran_realized_price_0sd_4y'),
|
||||
p05sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p0_5sd_4y'),
|
||||
p1sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p1sd_4y'),
|
||||
p15sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p1_5sd_4y'),
|
||||
p2sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p2sd_4y'),
|
||||
p25sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p2_5sd_4y'),
|
||||
p3sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p3sd_4y'),
|
||||
m05sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm0_5sd_4y'),
|
||||
m1sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm1sd_4y'),
|
||||
m15sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm1_5sd_4y'),
|
||||
m2sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm2sd_4y'),
|
||||
m25sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm2_5sd_4y'),
|
||||
m3sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm3sd_4y'),
|
||||
},
|
||||
_2y: {
|
||||
sd: createSeriesPattern1(this, 'veteran_realized_price_ratio_sd_2y'),
|
||||
zscore: createSeriesPattern1(this, 'veteran_realized_price_ratio_zscore_2y'),
|
||||
_0sd: createCentsSatsUsdPattern(this, 'veteran_realized_price_0sd_2y'),
|
||||
p05sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p0_5sd_2y'),
|
||||
p1sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p1sd_2y'),
|
||||
p15sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p1_5sd_2y'),
|
||||
p2sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p2sd_2y'),
|
||||
p25sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p2_5sd_2y'),
|
||||
p3sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p3sd_2y'),
|
||||
m05sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm0_5sd_2y'),
|
||||
m1sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm1sd_2y'),
|
||||
m15sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm1_5sd_2y'),
|
||||
m2sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm2sd_2y'),
|
||||
m25sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm2_5sd_2y'),
|
||||
m3sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm3sd_2y'),
|
||||
},
|
||||
_1y: {
|
||||
sd: createSeriesPattern1(this, 'veteran_realized_price_ratio_sd_1y'),
|
||||
zscore: createSeriesPattern1(this, 'veteran_realized_price_ratio_zscore_1y'),
|
||||
_0sd: createCentsSatsUsdPattern(this, 'veteran_realized_price_0sd_1y'),
|
||||
p05sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p0_5sd_1y'),
|
||||
p1sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p1sd_1y'),
|
||||
p15sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p1_5sd_1y'),
|
||||
p2sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p2sd_1y'),
|
||||
p25sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p2_5sd_1y'),
|
||||
p3sd: createPriceRatioPattern(this, 'veteran_realized_price', 'p3sd_1y'),
|
||||
m05sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm0_5sd_1y'),
|
||||
m1sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm1sd_1y'),
|
||||
m15sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm1_5sd_1y'),
|
||||
m2sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm2sd_1y'),
|
||||
m25sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm2_5sd_1y'),
|
||||
m3sd: createPriceRatioPattern(this, 'veteran_realized_price', 'm3sd_1y'),
|
||||
},
|
||||
},
|
||||
},
|
||||
mvrv: createSeriesPattern1(this, 'veteran_mvrv'),
|
||||
netPnl: createBlockChangeCumulativeDeltaSumPattern(this, 'veteran_net'),
|
||||
sopr: createRatioValuePattern2(this, 'veteran'),
|
||||
grossPnl: createBlockCumulativeSumPattern(this, 'veteran_realized_gross_pnl'),
|
||||
sellSideRiskRatio: create_1m1w1y24hPattern8(this, 'veteran_sell_side_risk_ratio'),
|
||||
peakRegret: createBlockCumulativeSumPattern(this, 'veteran_realized_peak_regret'),
|
||||
capitalized: createPricePattern(this, 'veteran_capitalized_price'),
|
||||
profitToLossRatio: create_1m1w1y24hPattern(this, 'veteran_realized_profit_to_loss_ratio'),
|
||||
},
|
||||
costBasis: createInMaxMinPerSupplyPattern(this, 'veteran'),
|
||||
unrealized: createCapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2(this, 'veteran'),
|
||||
investedCapital: createInPattern(this, 'veteran_invested_capital_in'),
|
||||
},
|
||||
premium: {
|
||||
supply: createDeltaDominanceHalfInTotalPattern2(this, 'rookie_supply'),
|
||||
outputs: createSpendingSpentUnspentPattern(this, 'rookie'),
|
||||
activity: createCoindaysCoinyearsDormancyTransferPattern(this, 'rookie'),
|
||||
realized: {
|
||||
cap: createCentsDeltaToUsdPattern(this, 'rookie_realized_cap'),
|
||||
profit: createBlockCumulativeSumPattern(this, 'rookie_realized_profit'),
|
||||
loss: createBlockCumulativeNegativeSumPattern(this, 'rookie_realized_loss'),
|
||||
price: {
|
||||
usd: createSeriesPattern1(this, 'rookie_realized_price'),
|
||||
cents: createSeriesPattern1(this, 'rookie_realized_price_cents'),
|
||||
sats: createSeriesPattern1(this, 'rookie_realized_price_sats'),
|
||||
bps: createSeriesPattern1(this, 'rookie_realized_price_ratio_bps'),
|
||||
ratio: createSeriesPattern1(this, 'rookie_realized_price_ratio'),
|
||||
percentiles: createPct0Pct1Pct2Pct5Pct95Pct98Pct99Pattern(this, 'rookie_realized_price'),
|
||||
sma: create_1m1w1y2y4yAllPattern(this, 'rookie_realized_price_ratio_sma'),
|
||||
stdDev: {
|
||||
all: {
|
||||
sd: createSeriesPattern1(this, 'rookie_realized_price_ratio_sd'),
|
||||
zscore: createSeriesPattern1(this, 'rookie_realized_price_ratio_zscore'),
|
||||
_0sd: createCentsSatsUsdPattern(this, 'rookie_realized_price_0sd'),
|
||||
p05sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p0_5sd'),
|
||||
p1sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p1sd'),
|
||||
p15sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p1_5sd'),
|
||||
p2sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p2sd'),
|
||||
p25sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p2_5sd'),
|
||||
p3sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p3sd'),
|
||||
m05sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm0_5sd'),
|
||||
m1sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm1sd'),
|
||||
m15sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm1_5sd'),
|
||||
m2sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm2sd'),
|
||||
m25sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm2_5sd'),
|
||||
m3sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm3sd'),
|
||||
},
|
||||
_4y: {
|
||||
sd: createSeriesPattern1(this, 'rookie_realized_price_ratio_sd_4y'),
|
||||
zscore: createSeriesPattern1(this, 'rookie_realized_price_ratio_zscore_4y'),
|
||||
_0sd: createCentsSatsUsdPattern(this, 'rookie_realized_price_0sd_4y'),
|
||||
p05sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p0_5sd_4y'),
|
||||
p1sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p1sd_4y'),
|
||||
p15sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p1_5sd_4y'),
|
||||
p2sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p2sd_4y'),
|
||||
p25sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p2_5sd_4y'),
|
||||
p3sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p3sd_4y'),
|
||||
m05sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm0_5sd_4y'),
|
||||
m1sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm1sd_4y'),
|
||||
m15sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm1_5sd_4y'),
|
||||
m2sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm2sd_4y'),
|
||||
m25sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm2_5sd_4y'),
|
||||
m3sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm3sd_4y'),
|
||||
},
|
||||
_2y: {
|
||||
sd: createSeriesPattern1(this, 'rookie_realized_price_ratio_sd_2y'),
|
||||
zscore: createSeriesPattern1(this, 'rookie_realized_price_ratio_zscore_2y'),
|
||||
_0sd: createCentsSatsUsdPattern(this, 'rookie_realized_price_0sd_2y'),
|
||||
p05sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p0_5sd_2y'),
|
||||
p1sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p1sd_2y'),
|
||||
p15sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p1_5sd_2y'),
|
||||
p2sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p2sd_2y'),
|
||||
p25sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p2_5sd_2y'),
|
||||
p3sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p3sd_2y'),
|
||||
m05sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm0_5sd_2y'),
|
||||
m1sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm1sd_2y'),
|
||||
m15sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm1_5sd_2y'),
|
||||
m2sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm2sd_2y'),
|
||||
m25sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm2_5sd_2y'),
|
||||
m3sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm3sd_2y'),
|
||||
},
|
||||
_1y: {
|
||||
sd: createSeriesPattern1(this, 'rookie_realized_price_ratio_sd_1y'),
|
||||
zscore: createSeriesPattern1(this, 'rookie_realized_price_ratio_zscore_1y'),
|
||||
_0sd: createCentsSatsUsdPattern(this, 'rookie_realized_price_0sd_1y'),
|
||||
p05sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p0_5sd_1y'),
|
||||
p1sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p1sd_1y'),
|
||||
p15sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p1_5sd_1y'),
|
||||
p2sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p2sd_1y'),
|
||||
p25sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p2_5sd_1y'),
|
||||
p3sd: createPriceRatioPattern(this, 'rookie_realized_price', 'p3sd_1y'),
|
||||
m05sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm0_5sd_1y'),
|
||||
m1sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm1sd_1y'),
|
||||
m15sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm1_5sd_1y'),
|
||||
m2sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm2sd_1y'),
|
||||
m25sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm2_5sd_1y'),
|
||||
m3sd: createPriceRatioPattern(this, 'rookie_realized_price', 'm3sd_1y'),
|
||||
},
|
||||
},
|
||||
},
|
||||
mvrv: createSeriesPattern1(this, 'rookie_mvrv'),
|
||||
netPnl: createBlockChangeCumulativeDeltaSumPattern(this, 'rookie_net'),
|
||||
sopr: createRatioValuePattern2(this, 'rookie'),
|
||||
grossPnl: createBlockCumulativeSumPattern(this, 'rookie_realized_gross_pnl'),
|
||||
sellSideRiskRatio: create_1m1w1y24hPattern8(this, 'rookie_sell_side_risk_ratio'),
|
||||
peakRegret: createBlockCumulativeSumPattern(this, 'rookie_realized_peak_regret'),
|
||||
capitalized: createPricePattern(this, 'rookie_capitalized_price'),
|
||||
profitToLossRatio: create_1m1w1y24hPattern(this, 'rookie_realized_profit_to_loss_ratio'),
|
||||
},
|
||||
costBasis: createInMaxMinPerSupplyPattern(this, 'rookie'),
|
||||
unrealized: createCapitalizedGrossInvestedLossNetNuplProfitSentimentPattern2(this, 'rookie'),
|
||||
investedCapital: createInPattern(this, 'rookie_invested_capital_in'),
|
||||
},
|
||||
},
|
||||
overAmount: {
|
||||
_1sat: createActivityOutputsRealizedSupplyUnrealizedPattern2(this, 'utxos_over_1sat'),
|
||||
_10sats: createActivityOutputsRealizedSupplyUnrealizedPattern2(this, 'utxos_over_10sats'),
|
||||
|
||||
Reference in New Issue
Block a user