BarnBridge · Schema
SmartAlphaPool
A BarnBridge SMART Alpha price-volatility management pool.
DeFiRisk TokenizationYieldBlockchainEthereumSMART YieldStructured ProductsTranches
Properties
| Name | Type | Description |
|---|---|---|
| poolName | string | |
| poolAddress | string | |
| poolToken | object | |
| juniorTokenAddress | string | |
| seniorTokenAddress | string | |
| oracleAddress | string | |
| oracleAssetSymbol | string | |
| seniorRateModelAddress | string | |
| accountingModelAddress | string | |
| epoch1Start | integer | Unix timestamp of the start of epoch 1. |
| epochDuration | integer | Duration of each epoch in seconds. |
| state | object | |
| tvl | object | |
| userHasActivePosition | booleannull | Whether the queried user has an active position; null if no user address was provided. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/barnbridge/main/json-schema/smart-alpha-pool.json",
"title": "SmartAlphaPool",
"description": "A BarnBridge SMART Alpha price-volatility management pool.",
"type": "object",
"properties": {
"poolName": {
"type": "string",
"example": "WBTC-USD"
},
"poolAddress": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$"
},
"poolToken": {
"$ref": "#/$defs/Token"
},
"juniorTokenAddress": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$"
},
"seniorTokenAddress": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$"
},
"oracleAddress": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$"
},
"oracleAssetSymbol": {
"type": "string",
"example": "BTC/USD"
},
"seniorRateModelAddress": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$"
},
"accountingModelAddress": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$"
},
"epoch1Start": {
"type": "integer",
"description": "Unix timestamp of the start of epoch 1."
},
"epochDuration": {
"type": "integer",
"description": "Duration of each epoch in seconds."
},
"state": {
"$ref": "#/$defs/PoolState"
},
"tvl": {
"$ref": "#/$defs/PoolTVL"
},
"userHasActivePosition": {
"type": ["boolean", "null"],
"description": "Whether the queried user has an active position; null if no user address was provided."
}
},
"required": ["poolName", "poolAddress", "poolToken", "state", "tvl"],
"$defs": {
"Token": {
"type": "object",
"properties": {
"address": { "type": "string" },
"symbol": { "type": "string" },
"decimals": { "type": "integer" }
}
},
"PoolState": {
"type": "object",
"properties": {
"epoch": { "type": "integer" },
"seniorLiquidity": { "type": "string" },
"juniorLiquidity": { "type": "string" },
"upsideExposureRate": { "type": "string" },
"downsideProtectionRate": { "type": "string" }
}
},
"PoolTVL": {
"type": "object",
"properties": {
"epochJuniorTVL": { "type": "number" },
"epochSeniorTVL": { "type": "number" },
"juniorEntryQueueTVL": { "type": "number" },
"seniorEntryQueueTVL": { "type": "number" },
"juniorExitQueueTVL": { "type": "number" },
"seniorExitQueueTVL": { "type": "number" },
"juniorExitedTVL": { "type": "number" },
"seniorExitedTVL": { "type": "number" }
}
}
}
}