Read time … min

AI-native runtime for FXCM trading strategies

Author FXCM REST and ForexConnect SDK strategies in Cursor, Claude Code or any AI IDE. Deploy from GitHub into a managed cloud runtime with first-class MCP control, logs and region selection.

By the TradingHost engineering team

Section 01 · At a glance

At a glance

Broker
FXCM (Forex Capital Markets)
Broker type
Forex and CFD broker, restructured globally after 2017 US exit
Asset class
Forex, indices CFDs, commodities CFDs, metals, crypto CFDs (entity-dependent)
Supported products
40+ spot FX currency pairs, major indices CFDs, metals (XAU/USD, XAG/USD), energies, and crypto CFDs on selected entities. US clients are not accepted.
Runtime model
Containerised strategy runtime
Deployment source
GitHub
Languages
Any language that runs in a container
Common integrations
FXCM REST API, FIX 4.4, ForexConnect SDK (Java, .NET, Python, C++), fxcmpy Python wrapper, NautilusTrader (legacy adapter), custom connectors
AI workflow integration
MCP control surface for Cursor, Claude Code, GitHub Copilot and CLI agents
TradingHost role
Runtime, deployment, logs, health checks, region selection, MCP control
FXCM role
Broker account, API access, market access, execution venue
Regulators
Forex Capital Markets Limited (FCA firm reference 217689, UK); FXCM Australia Pty Ltd (ASIC AFSL 309763); FXCM South Africa (Pty) Ltd (FSCA); FXCM offshore entities (FSA Seychelles, etc., legacy). FXCM is not registered with the CFTC or NFA and does not accept US retail clients.
Retail leverage caps
UK (FCA, ESMA-aligned) and EU: 30:1 on major FX, 20:1 on non-major FX and gold, 10:1 on non-gold commodities and non-major indices, 5:1 on stocks, 2:1 on crypto CFDs. Australia (ASIC): mirrors ESMA caps. South Africa (FSCA): higher leverage permitted per FSCA rules. Offshore entities may permit higher.
Parent disclosure
Following a January 2015 Swiss-franc-related emergency, Leucadia National (now Jefferies Financial Group, NYSE: JEF) extended a $300M rescue loan to FXCM. Jefferies later acquired the remaining FXCM stake; FXCM is part of the Jefferies / Global Brokerage holding structure.
US history
On 6 February 2017 the CFTC issued an order requiring FXCM to withdraw from US retail FX and to pay a $7 million civil monetary penalty. FXCM transferred its US customer accounts to GAIN Capital (now part of StoneX, operating FOREX.com). FXCM does not accept US retail clients today.
Affiliation
TradingHost is independent and is not affiliated with FXCM, Forex Capital Markets, Global Brokerage Inc. or Jefferies Financial Group

Section 02 · What FXCM offers

What FXCM offers

FXCM offers spot FX, indices and commodities CFDs and (per entity) crypto CFDs against FXCM accounts in the UK, Australia, South Africa and offshore entities through the FXCM REST API, FIX 4.4 and the ForexConnect SDK (Java, .NET, Python, C++). US retail clients are not accepted. Endpoint specifics and the full instrument list live in the FXCM API documentation.

Markets and strategy patterns

  • fxcmpy Python wrapper strategies on 40+ FX pairs
  • ForexConnect SDK Java strategies
  • ForexConnect SDK .NET strategies
  • ForexConnect SDK C++ low-latency strategies
  • FIX 4.4 institutional execution
  • Major indices and metals CFD strategies (non-US)
  • Trading Station Web API strategies

API surface

Product surfaces
40+ spot FX currency pairs, major indices CFDs, metals (XAU/USD, XAG/USD), energies and (per entity) crypto CFDs. US retail clients are not accepted; product availability outside the US is entity-dependent.
Connection methods
FXCM REST API; FIX 4.4 (Quote + Trade sessions); ForexConnect SDK in Java, .NET, Python and C++ (a higher-level wrapper around FXCMRest and the legacy FXCM Order2Go transport). The fxcmpy Python community wrapper is widely used.
Authentication
FXCM REST: token-based authentication (account API key issued from the FXCM client portal). FIX: SenderCompID and Password issued by FXCM after onboarding; live FIX is enabled on request. Live REST API keys for production are issued after an email request to api@fxcm.com; demo API keys are available without that step.

Section 03 · Build with AI

Build your FXCM strategy with AI

Pick an integration method, fork a TradingHost framework starter, and author your strategy in an AI IDE. FXCM REST and the ForexConnect SDK are the most common TradingHost-compatible paths; FIX 4.4 is available for institutional-style execution. Share CFDs are not part of FXCM's standard offering.

  • FXCM REST API

    HTTP REST surface for orders, accounts, market data and trade history.

  • fxcmpy (Python wrapper)

    Maintained community Python wrapper around the FXCM REST API. Convenient ergonomics for Python algo developers.

  • ForexConnect SDK

    First-party SDK in Java, .NET, Python and C++ wrapping FXCM's native order transport. Lower-latency than raw REST in many cases.

  • FIX 4.4 or custom connector

    FXCM FIX 4.4 session, or your own integration on top of the REST API or ForexConnect SDK.

Framework support for FXCM products

FXCM REST, fxcmpy, ForexConnect SDK and FIX 4.4 all span FXCM's FX, indices and commodities surface. Share CFDs are not part of FXCM's offering. Crypto CFDs depend on the FXCM entity.

FrameworkFXIndicesCommoditiesCFDCrypto CFDs
FXCM RESTSupportedSupportedSupportedNot documented as supportedPartially supported
fxcmpy (Python)SupportedSupportedSupportedNot documented as supportedPartially supported
ForexConnect SDKSupportedSupportedSupportedNot documented as supportedPartially supported
FIX 4.4SupportedSupportedSupportedNot documented as supportedPartially supported

✓ confirmed support per FXCM documentation. "no" indicates not in FXCM's standard product offering. "entity-dependent" means availability depends on the FXCM entity.

TradingHost does not force a framework. It runs your project.

Author with AI

The framework starters above pair naturally with AI IDEs. The TradingHost MCP control surface closes the loop: AI tools can inspect deployments, review logs and manage the runtime alongside you, never the trade execution path.

Section 04 · Run on TradingHost

Run your code on TradingHost

FXCM provides the broker account, REST API and ForexConnect SDK. TradingHost provides the production environment where your FXCM-connected strategy runs.

Instead of running strategy code on a laptop, desktop machine, generic VPS or manually configured server, you deploy from GitHub into a TradingHost-managed container runtime.

You

  • Your repo contains your code.
  • Your deployment defines how it runs.
  • Your strategy connects to FXCM via REST, FIX or ForexConnect SDK.

TradingHost

  • Keeps the runtime online.
  • Surfaces logs and health checks.
  • Region selection.
  • Controlled deployment surface.

Deployment flow

  1. STEP 01

    Connect GitHub

    Authorise TradingHost to access your GitHub account.

  2. STEP 02

    Link a repo or start from a framework

    Point TradingHost at your existing strategy repo, or fork a TradingHost FXCM REST, fxcmpy or ForexConnect SDK starter.

  3. STEP 03

    Deploy into a TradingHost container

    Pick a region (EU for Forex Capital Markets Limited UK / FCA and EU traffic, or the FXCM Australia entity), supply the environment values your strategy needs (FXCM REST API token, account selector, or ForexConnect SDK credentials), and deploy. TradingHost builds your container from the repo and runs your strategy on managed Kubernetes infrastructure.

  4. STEP 04

    Monitor logs and health

    Watch live logs, health and runtime state from the TradingHost dashboard. The same surface is reachable through MCP from any AI IDE, so Cursor, Claude Code or a CLI agent can read deployment state and manage the runtime alongside you.

  5. STEP 05

    Update and redeploy

    Push changes to your GitHub main branch and TradingHost redeploys automatically.

Section 05 · Operational notes

Operational notes for FXCM

Things that bite you when you actually run an FXCM strategy in a containerised cloud runtime. Every claim is paraphrased from FXCM, CFTC press releases or the relevant regulator; the deployment-side guidance is from running these strategies on TradingHost.

  1. 01 · US history

    CFTC banned FXCM from US retail FX in February 2017; book transferred to GAIN Capital

    On 6 February 2017 the CFTC issued an order requiring FXCM to withdraw from US retail FX and to pay a $7 million civil monetary penalty after finding FXCM had concealed its relationship with a market maker. FXCM's US customer accounts were transferred to GAIN Capital (now part of StoneX, operating FOREX.com). FXCM does not accept US retail clients today. Strategies for US retail traders must use a CFTC-registered broker like OANDA Corporation or FOREX.com.

  2. 02 · Live REST enablement

    Live REST API keys are issued after an email to api@fxcm.com

    FXCM provides REST API access on demo accounts by default (useful for development against the same API surface). For a live account, the user must email api@fxcm.com referencing their account number to enable REST access. This onboarding latency is FXCM-specific. Demo and live API keys are not interchangeable; treat them as separate TradingHost Secrets entries.

  3. 03 · SDK choice

    fxcmpy is the easy path; ForexConnect SDK is the lower-latency path

    The fxcmpy Python wrapper is a maintained community library around the FXCM REST API. For higher-throughput or lower-latency strategies, FXCM's first-party ForexConnect SDK (Java, .NET, Python, C++) wraps a more direct FXCM transport. Most retail algo strategies use fxcmpy; latency-sensitive workloads use ForexConnect. Both surfaces are TradingHost-runnable.

  4. 04 · Parent disclosure

    Jefferies / Global Brokerage holding structure

    Following a January 2015 Swiss-franc-related solvency event, Leucadia National (now Jefferies Financial Group, NYSE: JEF) extended a $300M rescue loan to FXCM and subsequently became the controlling parent. FXCM operates today within the Jefferies / Global Brokerage holding structure. Note this in counterparty risk analysis; FXCM is not a standalone entity in the legal sense.

  5. 05 · Multi-entity

    Leverage and product availability depend on the FXCM entity

    Forex Capital Markets Limited (FCA 217689, UK), FXCM Australia Pty Ltd (ASIC AFSL 309763), FXCM South Africa (Pty) Ltd (FSCA) and offshore FXCM entities operate separately. UK / EU and AU entities apply ESMA-aligned 30:1 majors caps. South Africa and offshore entities may permit higher leverage. The API surface is the same across entities, but a strategy that hard-codes leverage cannot assume the entity.

  6. 06 · Trade reporting

    EMIR, MiFID II and ASIC reporting is FXCM's responsibility

    Forex Capital Markets Limited reports under FCA / MiFID II / EMIR rules. FXCM Australia Pty Ltd reports under ASIC derivative trade-reporting rules. FXCM South Africa reports under FSCA rules. TradingHost does not perform regulatory trade reporting on your behalf. The strategy code you run on TradingHost is your own algorithmic activity; reporting attaches to the FXCM entity holding the account.

Section 06 · Built for

Built for

TradingHost FXCM runtimes are best suited to:

  • Developers building strategies in AI IDEs (Cursor, Claude Code)
  • fxcmpy Python developers
  • ForexConnect SDK Java, .NET and C++ developers
  • Quant FX systematic traders outside the US
  • Teams moving from MetaTrader and VPS hosting to containerised deployment

Connecting GitHub and creating your first strategy is free.

Section 08 · FAQ

FAQ

No. TradingHost is independent and is not affiliated with FXCM, Forex Capital Markets, Global Brokerage Inc. or Jefferies Financial Group.

No. TradingHost is not a broker and is not a registered investment firm. TradingHost is a cloud runtime that runs your strategy code. The broker relationship, the account, the leverage, the execution and the regulatory protections all live with the FXCM entity that holds your account.

No. Your strategy code connects to FXCM REST, FIX or ForexConnect SDK and sends instructions according to your own logic. TradingHost provides the runtime where that code runs.

No. FXCM REST, FIX and ForexConnect SDK access is provided by FXCM. Live REST keys are issued after an email to api@fxcm.com referencing the account.

No. The CFTC issued an order in February 2017 requiring FXCM to withdraw from US retail FX. FXCM is not CFTC-registered today and does not accept US retail clients. The FXCM US customer book transferred to GAIN Capital, which operates FOREX.com today (now part of StoneX). For US retail strategies, see the OANDA or FOREX.com pages.

Yes, globally. FXCM continues to operate under FCA, ASIC, FSCA and offshore entities outside the US. The CFTC order banned FXCM specifically from US retail FX; it did not affect operations under other regulators. Following a January 2015 Swiss-franc-related event, Leucadia (now Jefferies Financial Group) extended a $300M rescue loan and subsequently became the controlling parent.

Yes. The fxcmpy community Python wrapper is widely used, and the ForexConnect SDK has a Python binding. Both run on TradingHost.

Yes. TradingHost supports any language that can run inside a container. ForexConnect SDK has first-party Java, .NET, Python and C++ bindings. FXCM REST is HTTP, so any HTTP client works. FXCM FIX 4.4 is standard FIX, so any FIX engine works.

Open an FXCM account (non-US entity). Email api@fxcm.com to enable REST on the live account, or use a demo account where REST is enabled by default. Fork a TradingHost fxcmpy or ForexConnect SDK starter, or connect your own GitHub strategy repo. Linking a GitHub repo and creating a strategy is free; runtime plans are listed on the pricing page.

Yes. Leverage is set by the FXCM entity. Forex Capital Markets Limited (FCA) and FXCM Australia Pty Ltd (ASIC) apply ESMA-aligned caps (30:1 majors). FXCM South Africa (FSCA) and offshore entities may permit higher leverage. The API surface is the same across entities.

In your GitHub-controlled secrets workflow. TradingHost reads the FXCM REST token, FIX SenderCompID/Password or ForexConnect credentials at runtime through GitHub repository secrets.

Yes. TradingHost supports MCP-based control for AI IDEs including Cursor, Claude Code, GitHub Copilot and CLI-based AI agents. MCP is a control and observability surface, not the trade execution path.

No. EMIR and MiFID II trade reporting is the broker's responsibility. Forex Capital Markets Limited reports under FCA / MiFID II / EMIR rules. FXCM Australia reports under ASIC derivative trade-reporting rules. FXCM South Africa reports under FSCA rules. TradingHost runs your code; the FXCM entity handles regulatory reporting.

No. TradingHost is focused on production runtime and deployment. Backtesting belongs in your research stack, in a framework like NautilusTrader, or in AlgoBuilder. FXCM offers historical data via its data export endpoints for backtest use.