Type: Feature
Priority: P1 (High)
Labels: feature, backend, frontend, trading, structured-products
Epic: #XXX (Epic: Complete Remaining Features)
Estimated Effort: 3 weeks
Description
Implement a generic Structured Investment Products (SIP) engine for equity-linked notes, barrier options, and other structured financial products. Note: Securitization pools are fully implemented separately.
Current State:
- ✅ SecuritizationToken.sol contract exists (ERC-721 for tranches)
- ✅ SecuritizationNotarization.sol contract exists
- ✅ SecuritizationService fully implemented
- ✅ StructuredProductsTab.tsx fully implemented (for securitization pools: ABS, CLO, MBS, equity bundles, commodity bundles)
- ❌ StructuredProductTemplate model missing (for equity-linked notes, barrier options)
- ❌ StructuredProductInstance model missing
- ❌ ProductSubscription model missing
- ❌ StructuredProductsService missing (generic SIP pricing/issuance, not securitization)
Target State:
- Generic SIP templates (equity-linked notes, barrier options, buffer notes)
- Product instance issuance
- Investor subscriptions
- Pricing engine (Black-Scholes, Monte Carlo)
- Alpaca replication
- Blockchain tracking
Related Plan
dev/EPIC_IMPLEMENTATION_PLAN.md - Priority 4
Sub-Tasks
Database Models
Backend Services
Frontend
API Endpoints
Acceptance Criteria
- ✅ Structurers can create SIP templates
- ✅ Products can be issued to investors
- ✅ Pricing engine calculates fair value
- ✅ Products replicated via Alpaca trades
- ✅ Subscriptions tracked and managed
- ✅ Real-time valuation available
- ✅ Blockchain tracking for product instances
Dependencies
- Alpaca Trading API (✅ Already implemented)
- Securitization system (for optional blockchain tracking)
- Pricing libraries (Black-Scholes, Monte Carlo)
Testing
Created: 2026-01-26
Status: Open
Type: Feature
Priority: P1 (High)
Labels:
feature,backend,frontend,trading,structured-productsEpic: #XXX (Epic: Complete Remaining Features)
Estimated Effort: 3 weeks
Description
Implement a generic Structured Investment Products (SIP) engine for equity-linked notes, barrier options, and other structured financial products. Note: Securitization pools are fully implemented separately.
Current State:
Target State:
Related Plan
dev/EPIC_IMPLEMENTATION_PLAN.md- Priority 4Sub-Tasks
Database Models
Create StructuredProductTemplate Model (
app/db/models.py)name,product_type(String): equity_linked_note, barrier_option, buffer_noteunderlying_symbol(String)payoff_formula(JSONB): Payoff definitionmaturity_days(Integer)principal,fees(Numeric)created_by(Integer, FK to users.id)is_active(Boolean)Create StructuredProductInstance Model
template_id(Integer, FK)issuer_user_id(Integer, FK)total_notional(Numeric)issue_date,maturity_date(Date)status(String): active, matured, cancelledreplication_trades(JSONB): Alpaca order IDscurrent_value(Numeric)Create ProductSubscription Model
instance_id(Integer, FK)investor_user_id(Integer, FK)subscription_amount(Numeric)subscription_date(Date)status(String): pending, active, matured, cancelledCreate Alembic Migration
Backend Services
Create StructuredProductsService (
app/services/structured_products_service.py)create_template()- Create product templateissue_product()- Issue product instanceprice_product()- Calculate product pricing (Black-Scholes, Monte Carlo)replicate_via_alpaca()- Create Alpaca trades for replicationsubscribe()- Investor subscriptioncalculate_current_value()- Real-time valuationEnhance SecuritizationService (optional integration)
Frontend
Update StructuredProductsTab (
client/src/components/trading/StructuredProductsTab.tsx)Create ProductTemplateForm (
client/src/components/trading/ProductTemplateForm.tsx)Create ProductInstanceView (
client/src/components/trading/ProductInstanceView.tsx)Create ProductSubscriptionForm (
client/src/components/trading/ProductSubscriptionForm.tsx)API Endpoints
app/api/structured_products_routes.py)POST /api/structured-products/templates- Create templateGET /api/structured-products/templates- List templatesPOST /api/structured-products/instances- Issue productGET /api/structured-products/instances- List instancesPOST /api/structured-products/instances/{id}/subscribe- SubscribeGET /api/structured-products/instances/{id}/pricing- Get pricingAcceptance Criteria
Dependencies
Testing
Created: 2026-01-26
Status: Open