feat(portfolio): visualize asset allocation
This commit is contained in:
Vendored
+26
@@ -379,6 +379,31 @@ export interface components {
|
||||
ticker: string | null;
|
||||
logoName: string | null;
|
||||
};
|
||||
PortfolioStructureCategoryDto: {
|
||||
/** @enum {string} */
|
||||
type: "STOCK" | "BOND" | "OTHER" | "CASH";
|
||||
/** @description Exact known value as a decimal string. */
|
||||
value: string;
|
||||
/** @description Percentage including cash, rounded to six decimal places. Null for incomplete, negative or zero-total compositions. */
|
||||
sharePercent: string | null;
|
||||
};
|
||||
PortfolioStructureCurrencyDto: {
|
||||
currency: string;
|
||||
totalValue: string;
|
||||
/** @description Any negative constituent, even if netted positive. */
|
||||
hasNegativeValues: boolean;
|
||||
categories: components["schemas"]["PortfolioStructureCategoryDto"][];
|
||||
};
|
||||
PortfolioUnvaluedCategoryDto: {
|
||||
/** @enum {string} */
|
||||
type: "STOCK" | "BOND" | "OTHER";
|
||||
count: number;
|
||||
};
|
||||
PortfolioStructureDto: {
|
||||
currencies: components["schemas"]["PortfolioStructureCurrencyDto"][];
|
||||
/** @description Positions without current value and known valuation currency. Shares are unavailable across all currencies when nonempty. */
|
||||
unvaluedCategories: components["schemas"]["PortfolioUnvaluedCategoryDto"][];
|
||||
};
|
||||
PortfolioDto: {
|
||||
/** Format: date-time */
|
||||
lastSuccessfulAt: string;
|
||||
@@ -386,6 +411,7 @@ export interface components {
|
||||
totalsByCurrency: components["schemas"]["MoneyDto"][];
|
||||
positions: components["schemas"]["PortfolioPositionDto"][];
|
||||
cashBalances: components["schemas"]["MoneyDto"][];
|
||||
structure: components["schemas"]["PortfolioStructureDto"];
|
||||
};
|
||||
UpcomingEventDto: {
|
||||
account?: components["schemas"]["AccountReferenceDto"];
|
||||
|
||||
@@ -2062,6 +2062,104 @@
|
||||
"logoName"
|
||||
]
|
||||
},
|
||||
"PortfolioStructureCategoryDto": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"STOCK",
|
||||
"BOND",
|
||||
"OTHER",
|
||||
"CASH"
|
||||
]
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"description": "Exact known value as a decimal string."
|
||||
},
|
||||
"sharePercent": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "Percentage including cash, rounded to six decimal places. Null for incomplete, negative or zero-total compositions."
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"type",
|
||||
"value",
|
||||
"sharePercent"
|
||||
]
|
||||
},
|
||||
"PortfolioStructureCurrencyDto": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"currency": {
|
||||
"type": "string"
|
||||
},
|
||||
"totalValue": {
|
||||
"type": "string"
|
||||
},
|
||||
"hasNegativeValues": {
|
||||
"type": "boolean",
|
||||
"description": "Any negative constituent, even if netted positive."
|
||||
},
|
||||
"categories": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/components/schemas/PortfolioStructureCategoryDto"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"currency",
|
||||
"totalValue",
|
||||
"hasNegativeValues",
|
||||
"categories"
|
||||
]
|
||||
},
|
||||
"PortfolioUnvaluedCategoryDto": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"STOCK",
|
||||
"BOND",
|
||||
"OTHER"
|
||||
]
|
||||
},
|
||||
"count": {
|
||||
"type": "number",
|
||||
"minimum": 1
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"type",
|
||||
"count"
|
||||
]
|
||||
},
|
||||
"PortfolioStructureDto": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"currencies": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/components/schemas/PortfolioStructureCurrencyDto"
|
||||
}
|
||||
},
|
||||
"unvaluedCategories": {
|
||||
"description": "Positions without current value and known valuation currency. Shares are unavailable across all currencies when nonempty.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/components/schemas/PortfolioUnvaluedCategoryDto"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"currencies",
|
||||
"unvaluedCategories"
|
||||
]
|
||||
},
|
||||
"PortfolioDto": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -2089,6 +2187,9 @@
|
||||
"items": {
|
||||
"$ref": "#/components/schemas/MoneyDto"
|
||||
}
|
||||
},
|
||||
"structure": {
|
||||
"$ref": "#/components/schemas/PortfolioStructureDto"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
@@ -2096,7 +2197,8 @@
|
||||
"isStale",
|
||||
"totalsByCurrency",
|
||||
"positions",
|
||||
"cashBalances"
|
||||
"cashBalances",
|
||||
"structure"
|
||||
]
|
||||
},
|
||||
"UpcomingEventDto": {
|
||||
|
||||
Reference in New Issue
Block a user