FXCM trading, from one binary
FX + CFDs. Backtest a strategy against stored FXCM data, run it on paper, then mount the same engine live — the code that trades is the code the backtest ran. FXCM mounts paper by default: credentials arm it, and a per-venue ceiling in your policy file caps it.
feature-gated Built and tested, and reachable only from a build that opts in — a default build carries no arm for this venue at all and falls through to paper.
What the FXCM bridge does
Execution
Behind the fxcm feature · refuses live unless the vendor ForexConnect SDK is linked
Reconciliation
Periodic interval · the path that recovers fills across a restart
Market data
—
No SDK, no live mount — the refusal is compiled in, not a config option.
Order types and flags
What the FXCM bridge can send. These are the venue's own capabilities as the platform records them — where a venue cannot do something, the table says so instead of pretending otherwise.
| Order kinds | market · limit |
|---|---|
| Triggers | none |
| Amend a resting order | not supported by this venue |
| Post-only | not supported |
| Reduce-only | not supported |
| Multi-leg / combo | not supported |
| Batch submit | no native batch endpoint — orders are sent one at a time |
| Order attribution | no attribution mechanism |
Time in force
How each time-in-force resolves on FXCM. A coercion is stated rather than hidden: asking for one and silently getting another is the kind of divergence that shows up as a surprise fill.
| Requested | What happens | On the wire |
|---|---|---|
| GTC | never emitted on this venue | — |
| IOC | never emitted on this venue | — |
| FOK | never emitted on this venue | — |
| GTD | never emitted on this venue | — |
| DAY | never emitted on this venue | — |
Margin, data and modelled cost
| Margin modes |
cross
default: cross
|
|---|---|
| Switching mode | not applicable — this venue offers one mode |
| Live market data | no live feed wired for this venue |
| Historical backfill | no direct backfill from this venue |
| Modelled commission | no commission modelled |
⚠ The commission row is the backtest model — what the simulator charges on a fill for this venue, from the schedule the platform ships. It is not a quote of FXCM's live pricing, it models commission only, and spread, slippage and perpetual funding are separate paths. Check the venue's own current terms before sizing anything on it.
Nothing arms FXCM by accident
Absent credentials are the gate
No FXCM keys in your local credential store, and the venue mounts paper. That is the mechanism, not a setting you have to remember to leave alone.
A ceiling that can only refuse
A per-venue entry in your policy file caps what FXCM may do. It can lower a venue to paper; it can never promote one. A box with no such table mounts every venue on paper.
Keys stay on your machine
One file in your own project folder. No cloud, no account. Keys reach child processes through the environment rather than the command line, and are redacted from logs.
Agent writes are previewed
If you drive FXCM from an agent, every order-writing call previews first and executes only against a token that preview issued. How that works.
Generated from the platform's own per-venue capability tables — this page cannot claim more than the code does. A venue cannot appear here without passing the execution and market-data conformance harnesses, and adding a venue fails those tables' tests until every one of them classifies it. Snapshot exported 2026-09-06.
Backtest FXCM. Then mount it.
Free. Source-available under FSL-1.1; every release becomes Apache-2.0 two years on.
Trading involves substantial risk of loss and is not suitable for every investor. Nothing on this page is investment, financial or trading advice. Vike is not affiliated with, endorsed by or acting as an agent of FXCM; the name is used only to identify the venue this software connects to. Venue availability, pricing and capabilities change — this page states what the shipped software wires today, not a promise about any venue's own service. Orders sent from your accounts remain your responsibility.