Lux Proposals
← All proposals
LP-0008Finaloptionsfuturesfxbondsmargin

LP-008: Multi-Asset Trading Types

Abstract

This specification defines the unified type system used across all Lux trading modules. A single set of Go types in broker/pkg/types and TypeScript types in exchange/pkgs/options/src/types.ts ensures consistent representation of instruments across equities, options, futures, FX, and fixed income.

Instrument Classes

| Class | Module | Provider(s) |
|-------|--------|-------------|
| Equity | broker | Alpaca, IBKR, Apex |
| Option | broker | Alpaca, IBKR, Apex (4-leg max) |
| Future | futures | Apex Futures, IBKR |
| FX Pair | forex | CurrencyCloud, LMAX, Circle, OpenPayd |
| Bond | broker | IBKR |
| Digital Asset | exchange | On-chain (AMM/CLOB) |

Options

Strategy Templates (13 built-in)

| Strategy | Legs | Description |
|----------|------|-------------|
| Long Call / Long Put | 1 | Directional |
| Covered Call / Protective Put | 2 | Hedged |
| Bull Call Spread / Bear Put Spread | 2 | Vertical |
| Straddle / Strangle | 2 | Volatility |
| Iron Condor | 4 | Range-bound |
| Iron Butterfly | 4 | Pinning |
| Calendar Spread | 2 | Time decay (per-leg expiration) |
| Diagonal Spread | 2 | Combined |
| Collar | 3 | Protection |

Approval Levels

| Level | Allowed Strategies |
|-------|-------------------|
| 1 | Covered calls, cash-secured puts |
| 2 | Level 1 + long calls/puts, debit spreads |
| 3 | Level 2 + credit spreads, iron condors |
| 4 | Level 3 + naked options, ratio spreads |

Margin

Type Alignment (Go ↔ TypeScript)

All Go types in broker/pkg/types/types.go have 1:1 TypeScript equivalents in exchange/pkgs/options/src/types.ts:

References

Lux Research Papers

Hanzo Research Papers

External Standards