provision

This guide shows you how to provision a Datafye Trading Environment on your local machine using Docker containers.

Prerequisites

Before you begin, ensure:

  • The Datafye CLI is installed (see Installation)

  • Docker Desktop is installed and running on your machine

  • You have created the required descriptor files (see Deployment Descriptors)

  • You have broker credentials for paper trading (live trading requires Datafye Managed deployment)

Provision Command

Use the following command to provision a local Trading Environment:

datafye trading local provision [options]

Parameters

Descriptor Parameters

You must provide descriptor files using one of the following approaches:

Option 1: Combined descriptor file

Parameter
Description

--descriptor <path>

Path to a combined descriptor file containing data, broker (and optionally algo) configuration

Option 2: Separate descriptor files

Parameter
Description

--data-descriptor <path>

Path to data descriptor file (required)

--broker-descriptor <path>

Path to broker descriptor file (required)

--algo-descriptor <path>

Path to algo descriptor file (optional - only for Full Stack scenario)

Run datafye help trading local provision to see the complete parameter list and usage.

Trading Scenarios

Local Trading Environment deployments support two scenarios:

Data Cloud + Broker

Provisions Data Cloud and Broker Connector, allowing you to use your own algo containers.

Required descriptors:

  • Data descriptor

  • Broker descriptor (must specify mode: paper for local deployments)

Example:

Full Stack

Provisions Data Cloud, Algo Container runtime, Broker Connector, and MCP Server.

Required descriptors:

  • Data descriptor

  • Algo descriptor

  • Broker descriptor (must specify mode: paper for local deployments)

Example:

Or using a combined descriptor:

Provisioning Process

During provisioning, the CLI will:

  1. Validate descriptors - Check schema, semantics, and dependencies

  2. Verify paper trading mode - Ensure broker descriptor specifies mode: paper

  3. Pull Docker images - Download required container images

  4. Create Docker network - Set up isolated network for services

  5. Start services - Deploy Data Cloud, Broker Connector (and Algo Container/MCP if Full Stack)

  6. Configure connectivity - Connect to data providers and broker using your credentials

  7. Run health checks - Verify all services are running correctly

  8. Display access information - Show URLs and connection details

After Provisioning

Once provisioning completes successfully, you'll see output with:

  • API base URLs for accessing Datafye services

  • WebSocket endpoints for real-time data streams and execution updates

  • Broker Connector endpoints for order management

  • MCP server endpoint (Full Stack only)

  • Health check commands to validate connectivity

Accessing Your Deployment

The local deployment will be accessible at:

  • Data Cloud REST API: http://localhost:8080/datafye-api/v1/

  • Data Cloud WebSocket: ws://localhost:8080/datafye-ws

  • Broker Connector REST API: http://localhost:8081/broker-api/v1/

  • Broker Connector WebSocket: ws://localhost:8081/broker-ws

  • MCP Server (Full Stack only): http://localhost:3000

Validate Connectivity

Test your deployment with:

Next Steps

After provisioning:

Troubleshooting

Docker Not Running

If you see an error about Docker not being available:

  1. Ensure Docker Desktop is installed

  2. Start Docker Desktop

  3. Wait for Docker to fully start (check the system tray/menu bar icon)

  4. Retry the provision command

Port Conflicts

If ports are already in use:

  1. Stop any services using the conflicting ports (typically 8080, 8081, 3000)

  2. Or deprovision any existing local deployment first: datafye trading local deprovision

  3. Retry the provision command

Insufficient Resources

If provisioning fails due to resource constraints:

  1. Ensure Docker has adequate resources allocated:

    • Minimum 8GB RAM

    • Minimum 20GB disk space

  2. Close unnecessary applications

  3. In Docker Desktop preferences, increase allocated resources if needed

Descriptor Validation Errors

If descriptor validation fails:

  1. Review the error message for specific field issues

  2. Check descriptor format matches the schema (see Deployment Descriptors)

  3. Verify broker descriptor specifies mode: paper (live trading not allowed on local)

  4. Ensure credentials are provided via environment variables if using ${VAR} syntax

Broker Connection Errors

If broker connections fail:

  1. Verify your broker credentials are correct (paper trading API keys)

  2. Check environment variables are set if using variable substitution

  3. Ensure your broker account is active and has paper trading enabled

  4. Review broker service status (some brokers may have API outages)

  5. Verify broker descriptor specifies correct provider (e.g., alpaca, ibkr)

Live Trading Mode Error

If you see an error about live trading not being supported:

  1. Check your broker descriptor has mode: paper (not mode: live)

  2. Local deployments can only use paper trading

  3. For live trading, contact Datafye Ops to provision a Datafye Managed deployment


Last updated: 2025-10-22

Last updated