Skip to content

Your allocation logic.
A platform to keep it working.

Models

From a fixed allocation to a composed systematic strategy: give each model a consistent foundation for its code, inputs, research and ongoing operation.

Interactive example · sample data

Model definition

Diversified core

Allocate 40% to U.S. equities, 20% to international equities, 30% to U.S. bonds, and 10% to gold.

The same four assets, expressed directly or through equity and defensive child models. Switching changes this preview only.

allocation.py · illustrative excerpt
# Allocation excerpt · not a complete strategy script
UNIVERSE = ["VTI", "VXUS", "BND", "GLD"]
TARGETS = {
    "VTI": 0.40,   # U.S. equities
    "VXUS": 0.20,  # International equities
    "BND": 0.30,   # U.S. bonds
    "GLD": 0.10,   # Gold
}
# Review the complete script, inputs and run
# before using an allocation.

Explore locally. Nothing here creates a model, executes a run, or places a trade.

Build your own model

Choose how you build.

Describe the logic

Explain your universe, allocation rules and constraints in natural language. Review the generated Python and build result before relying on them.

Supply your code

Bring Python that meets the model contract. Validate its inputs and dependencies, then build and inspect it within the same lifecycle.

Work with an agent

Connect an MCP client or use the API and CLI. Your agent can discover assets, create models and inspect stored results through supported interfaces.

Composition + optimizers

Make good research reusable.

Combine child models into a parent allocation. Store custom optimizer code and reference it consistently across models. Inspect both the underlying assets and the logic that combines them.

Composition has depth and runtime limits. Changes to a dependency can change later results; inspect referenced code and rebuild or refresh deliberately.

Model composition · illustrative view
Diversified core

Two child models. One allocation.

Equity sleeve

60%

VTI + VXUS

Defensive sleeve

40%

BND + GLD

Bring your own optimizer

Store its source. Reference it across models. Review dependencies when it changes.

Stored research · illustrative view

Follow the work.

Build → Run → Allocation
01

Source

Script + hash

See the logic that ran.

02

Inputs

Parameters + dependencies

Understand the choices behind it.

03

Execution

Run + data as of

Check completion and freshness.

04

Result

Allocations + return series

Compare and inspect the output.

Stored work

Understand the result.
Then improve it.

Read the script, inspect inputs, compare stored runs and examine model backtests. Builds and script hashes help connect an output to the logic that produced it.

Backtests remain hypothetical. Data dates provide context, not immutable snapshots of every dependency or historical data revision.

Maintained allocations

Continue beyond the first build.

Enable a schedule to refresh the model on supported trading days. Inspect the latest successful allocation and its data date. Retrieve outputs through the platform interfaces or download a broker-format file on Business.

Schedules respect readiness, available data and spending caps. Exports do not place trades or confirm an asset’s acceptance at a broker.

Allocation operations · illustrative view

Research that keeps working.

Schedule

Enabled trading-day refresh

Subject to readiness, data availability and your spending cap.

Latest successful run

Allocation available

Inspect the run date and data as of before using its weights.

To your next step

API outputReturn seriesBroker CSV · Business

A consistent foundation. Room for your strategy.

Inputs
Declared parameters with types and defaults
Research
Model backtests, metrics, charts and run comparisons
Execution
Isolated compute with enforced resource and time limits
Evolution
Stored builds, scripts, runs and explicit promotion
Access
Web, MCP, REST API and CLI
Build your allocation modelExplore the model API