Skip to main content
POST
Construct a portfolio with score-tilt weighting

Authorizations

Authorization
string
header
required

Enter 'Bearer' followed by a space and then your JWT or API Key. Example: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... or Bearer YOUR_API_KEY_HERE

Path Parameters

strategyId
string
required

UUID of the user strategy

Query Parameters

minMarketCap
number<double>
default:1000000000

Minimum market capitalization for inclusion.

signalType
enum<string>
default:convictionScore

Signal metric used to score companies.

Available options:
linguisticBeta,
marketBuzz,
convictionScore
tiltExponent
number<double>
default:1

Controls how strongly signal scores affect weights. Set to 0 for equal weight, 1 for weight proportional to score, and higher values to concentrate more weight on the top scores.

Required range: 0 <= x <= 10
maxWeight
number<double>
default:0.2

Maximum weight allowed for any single holding.

Required range: 0 < x <= 1
minWeight
number<double>
default:0.005

Minimum weight for any single holding.

Required range: 0 <= x <= 1
riskAdjustment
number<double>
default:0

How much to diversify away from the score-tilt weights. Set to 0 to keep pure score-tilt weights with no risk adjustment, or up to 1 to reduce concentration in correlated stocks. Values above 0 incur extra latency because price history is needed to estimate covariance.

Required range: 0 <= x <= 1
riskFreeRate
number<double>
default:0.03

Annual risk-free rate used for Sharpe ratio calculation.

topN
integer

Number of top companies by signal score to include. When omitted, all qualifying companies are included.

Required range: x >= 2

Body

application/json
companyIds
string[]

Company IDs to consider before the other filters are applied.

Response

The constructed portfolio.

metadata
object
required
portfolio
object[]
required