{"openapi":"3.0.4","info":{"title":"CreateTransactionPortfolioRequest","version":"0.0.1"},"paths":{},"components":{"schemas":{"CreateTransactionPortfolioRequest":{"required":["baseCurrency","code","displayName"],"type":"object","properties":{"displayName":{"minLength":1,"type":"string","description":"The name of the transaction portfolio."},"description":{"type":"string","description":"A description for the transaction portfolio.","nullable":true},"code":{"type":"string","description":"The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio."},"created":{"type":"string","description":"The effective datetime at which to create the transaction portfolio. No transactions can be added to the transaction portfolio before this date. Defaults to the current LUSID system datetime if not specified.","format":"date-time","nullable":true},"baseCurrency":{"type":"string","description":"The base currency of the transaction portfolio in ISO 4217 currency code format."},"corporateActionSourceId":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/ResourceId"},"accountingMethod":{"enum":["Default","AverageCost","FirstInFirstOut","LastInFirstOut","HighestCostFirst","LowestCostFirst","ProRateByUnits","ProRateByCost","ProRateByCostPortfolioCurrency","IntraDayThenFirstInFirstOut","LongTermHighestCostFirst","LongTermHighestCostFirstPortfolioCurrency","HighestCostFirstPortfolioCurrency","LowestCostFirstPortfolioCurrency","MaximumLossMinimumGain","MaximumLossMinimumGainPortfolioCurrency"],"type":"string","description":"Determines the accounting treatment given to the transaction portfolio's tax lots. Default value: AverageCost. Available values: Default, AverageCost, FirstInFirstOut, LastInFirstOut, HighestCostFirst, LowestCostFirst, ProRateByUnits, ProRateByCost, ProRateByCostPortfolioCurrency, IntraDayThenFirstInFirstOut, LongTermHighestCostFirst, LongTermHighestCostFirstPortfolioCurrency, HighestCostFirstPortfolioCurrency, LowestCostFirstPortfolioCurrency, MaximumLossMinimumGain, MaximumLossMinimumGainPortfolioCurrency."},"subHoldingKeys":{"maxItems":100,"type":"array","items":{"type":"string","description":"The key that uniquely identifies the property. It has the format {domain}/{scope}/{code}."},"description":"A set of unique transaction properties to group the transaction portfolio's holdings by, perhaps for strategy tagging. Each property must be from the 'Transaction' domain and identified by a key in the format {domain}/{scope}/{code}, for example 'Transaction/strategies/quantsignal'. See https://support.lusid.com/knowledgebase/article/KA-01879/en-us for more information.","nullable":true},"properties":{"type":"object","additionalProperties":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/Property"},"description":"A set of unique portfolio properties to add custom data to the transaction portfolio. Each property must be from the 'Portfolio' domain and identified by a key in the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'. Note these properties must be pre-defined.","nullable":true},"instrumentScopes":{"maxItems":1,"type":"array","items":{"type":"string"},"description":"The resolution strategy used to resolve instruments of transactions/holdings upserted to this portfolio.","nullable":true},"amortisationMethod":{"type":"string","description":"The amortisation method used by the portfolio for the calculation. Available values: NoAmortisation, StraightLine, EffectiveYield, StraightLineSettlementDate, EffectiveYieldSettlementDate.","nullable":true},"transactionTypeScope":{"maxLength":64,"minLength":1,"pattern":"^[a-zA-Z0-9\\-_]+$","type":"string","description":"The scope of the transaction types.","nullable":true},"cashGainLossCalculationDate":{"type":"string","description":"The option when the Cash Gain Loss to be calulated. Default value: SettlementDate. Available values: Default, SettlementDate, TransactionDate.","nullable":true},"instrumentEventConfiguration":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/InstrumentEventConfiguration"},"amortisationRuleSetId":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/ResourceId"},"taxRuleSetScope":{"maxLength":64,"minLength":1,"pattern":"^[a-zA-Z0-9\\-_]+$","type":"string","description":"The scope of the tax rule sets for this portfolio.","nullable":true},"settlementConfiguration":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/PortfolioSettlementConfiguration"}},"additionalProperties":false,"title":"CreateTransactionPortfolioRequest"}}}}