Skip to main content
This guide builds a quarterly quality-growth Tilt from catalog discovery through backtesting. It uses one Tilt throughout so that each response supplies the IDs and revision needed by the next request. Set the base URL and API key used by the examples:

Step 1: Discover fields and a universe

Construction expressions use exact catalog field names. Search the catalog before writing a rule:
Use the returned name in an expression. Inspect an exact field to check its units, coverage, null rate, and distribution before choosing a threshold:
Universe preset IDs are discovered rather than fixed in the API schema:
Choose the id that describes the intended candidate universe. A named index is not a universe preset; use an expression such as index("S&P 500") > 0 in the filter when index membership is part of the methodology. Search catalog reference →

Step 2: Create the Tilt project

Create an unevaluated draft. This establishes the Tilt project and its first version but does not produce constituents yet.
The response contains two identities:
  • version_group_sqid identifies the Tilt project across its versions.
  • uuid identifies this particular draft or published version.
  • revision is the optimistic-concurrency token for the next edit.
Save the returned UUID for the remaining requests:
Create a Tilt reference →

Step 3: Resolve any ticker overrides

Skip this step when the methodology has no forced inclusions or exclusions. Overrides require exact tilt_asset_id values, not ticker symbols:
A symbol can identify more than one listing. Compare the returned name, exchange, and security type before selecting the intended tilt_asset_id. Resolve ticker listings reference →

Step 4: Save and evaluate the methodology

Apply construction rules to the draft. This operation saves the effective methodology and its complete weighted constituent snapshot together. If validation or evaluation fails, it saves neither.
The response includes the effective rules and an evaluation summary. Keep its tilt_uuid and revision: applying changes to a published Tilt can create a new draft UUID, so the response is authoritative for subsequent requests.
rebalancing_period is part of the saved methodology. It accepts MONTHLY, QUARTERLY, SEMI_ANNUALLY, or ANNUALLY. The backtest endpoint follows this value; it does not accept a separate cadence override.
Apply construction reference →

Step 5: Read the evaluated constituents

Read the complete stored result after a successful apply:
weight is a portfolio fraction, so 0.54 means 54%. This endpoint returns the saved evaluation; reading it does not rerun the rules with newer data. Constituents reference →

Step 6: Backtest the saved methodology

Choose the analysis window with dates. Add a benchmark when you need relative performance and risk statistics:
This quarterly Tilt is reconstituted quarterly throughout the requested date range because its saved rules.rebalancing_period is QUARTERLY. To test a monthly methodology, save a version with MONTHLY and backtest the UUID returned by that apply operation. A run-time cadence override would test rules that are not the saved methodology, so the endpoint does not allow one. The response contains the Tilt return series and scheduled membership changes. When benchmark is supplied, it also contains the benchmark series, period returns, relative return when the coverage windows match, and risk statistics. Rebalance events describe scheduled additions and removals; they are not a transaction ledger or complete corporate-action history. Backtest reference →

Update and rerun

Read the latest Tilt before editing, then send its revision as base_revision. Omitted construction fields keep their saved values. For example, this changes only the cadence and reevaluates the Tilt:
Use the new tilt_uuid and revision from the response for the next constituent read or backtest.