AlphaForge – System Context (C1)
Source: Notion | Last edited: 2025-11-21 | ID: 2b22d2dc-3ef...
Narrative
Section titled “Narrative”AlphaForge sits between quant researchers & AI agents on one side, and execution venues & data providers on the other.
Input Side
Section titled “Input Side”From quant researchers and AI agents
They submit:
- Strategy DSL specifications
- Experiment configurations
- Deployment / promotion requests
- e.g. “promote this config to live trading” From data providers
Data providers (exchanges, index vendors, on-chain sources) feed:
- Raw market data
- Pre-aggregated OHLCV
- On-chain events and metrics
Inside AlphaForge
Section titled “Inside AlphaForge”- The DSL and Compiler translate high-level strategy descriptions into executable DAGs.
- The Orchestrator manages backtests, simulations, paper trading, and live strategies.
- The Data and Feature Service provides consistent historical and live data views to all runs.
- The Execution Gateway connects to external execution engines and venues in a pluggable way.
Output Side
Section titled “Output Side”To execution venues
- Execution venues receive orders and manage positions. To humans & agents
Researchers, PMs, and AI agents consume:
-
Performance metrics and curves
-
Factor exposures and diagnostics
-
Logs, artifacts, and experiment metadata via:
-
APIs
-
Dashboards
-
Notebooks
System Context Diagram (Mermaid C4)
Section titled “System Context Diagram (Mermaid C4)”In Notion, add a Code block, set the language to mermaid, and paste the following:
C4Contexttitle AlphaForge / QuantOS – System Context
Person(researcher, "Quant Researcher", "Designs and tests strategies using the AlphaForge DSL.")Person(ai_agent, "AI Research Agent", "Automates experiment generation and analysis.")Person(pm, "Portfolio Manager", "Reviews performance, risk, and approves deployment.")Person(devops, "DevOps / SRE", "Operates the AlphaForge platform.")
System_Boundary(af, "AlphaForge / QuantOS") { System(af_core, "AlphaForge Core", "DSL compiler, orchestrator, data and execution services.")}
System_Ext(data_providers, "Market and On-Chain Data Providers", "Exchanges, data vendors, index providers.")System_Ext(exchanges, "Trading Venues and Brokers", "Crypto exchanges, prime brokers, execution engines.")System_Ext(storage, "External Storage and Object Store", "Long-term storage for raw and derived data.")System_Ext(analytics, "Analytics and BI Tools", "Dashboards, notebooks, and reporting tools.")
Rel(researcher, af_core, "Submits strategies and experiments via DSL or API")Rel(ai_agent, af_core, "Calls APIs to create and manage experiments")Rel(pm, af_core, "Queries performance and risk metrics")Rel(devops, af_core, "Deploys, monitors, and scales the platform")
Rel(data_providers, af_core, "Pushes or streams market and on-chain data")Rel(af_core, exchanges, "Sends orders, receives fills and positions")Rel(af_core, storage, "Reads and writes raw and cold data")Rel(af_core, analytics, "Exposes metrics, logs, and result datasets")Key Context Decisions
Section titled “Key Context Decisions”1. AlphaForge is a platform, not a single app
Section titled “1. AlphaForge is a platform, not a single app”- It is multi-tenant and multi-user.
- It exposes a stable DSL and API surface for both humans and agents.
2. Execution engines are external and pluggable
Section titled “2. Execution engines are external and pluggable”- AlphaForge does not assume a specific engine.
- It connects to one or more engines via the Execution Gateway
- e.g. Nautilus, custom engines.
3. Data providers are heterogeneous
Section titled “3. Data providers are heterogeneous”- Exchanges, index vendors, and on-chain sources are heterogeneous.
- They are normalized through the Data and Feature Service.
4. Results are for humans and machines
Section titled “4. Results are for humans and machines”- Outputs are designed for human consumption:
- Dashboards
- Notebooks
- And also for AI agents:
- Structured APIs
- Vector space over strategies and experiments