# OsEngine, a Windows trading terminal that lets an AI agent drive the robot layer

> OsEngine is a C# algorithmic trading suite for exchange automation, split into a data downloader, an exchange emulator, a walk-forward optimizer and a bot station, with a built-in Anthropic Model Context Protocol server that exposes the whole terminal to chat agents. The connection list is heavily weighted toward the Russian market, and the licensing is a custom one that GitHub cannot classify.

**AlexWan/OsEngine** — Open Source algo trading platform

- Repository: https://github.com/AlexWan/OsEngine
- Website: http://o-s-a.net
- Stars: 1,039 · Forks: 445
- Language: C#
- License: NOASSERTION
- Published: 2026-10-19 · Updated: 2026-10-19 · Language: en
- Canonical page: https://hysenlabs.com/projects/alexwan-osengine

## Five programs instead of one trading terminal

OsEngine is described as a full complex of programs for automating exchange trading, and the split is the point. OsData is a downloader for historical data, pulling candles, order books and tick data from a range of sources. OsTester is an exchange emulator that tests many strategies at once against a single shared portfolio, and the documentation states it can stream several timeframes and several instruments simultaneously. OsOptimizer handles parameter selection with walk-forward phases and filters between those phases, saving reports as it goes. OsTrader, also called the bot station, is the piece that puts robots into live trading. The robot creation layer itself is modelled on Wealth-Lab script and Ninja script, and the project says plainly that it does not change that layer with each release and keeps backward compatibility in it. A fifth component sits on top of the other four: an MCP server, described in more detail below. For a reader, this arrangement means the research and the execution environment are separate programs that meet at the strategy code.

## The MCP server turns the terminal into an agent target

The newest and most unusual piece is the built-in Anthropic Model Context Protocol server. The project frames OsEngine as a terminal under AI control: an agent such as Claude, Kimi, ChatGPT or any other MCP client can pull down history, create and configure robots, launch backtests and walk-forward optimization, connect to exchanges, read the equity curve and reconcile positions against the exchange. The server is documented as exposing more than 100 tools, streaming real time events over SSE, and authorizing with an API key plus an IP whitelist. That combination is the security boundary to think about, because an agent that can create a robot and start it in trading is an agent that can place orders. The API reference for agents lives in a separate file, project/CONTEXT_MCP.md, and the repository layout keeps the reference next to the code rather than in the wiki. The upstream project is a .NET application, so the server runs inside the terminal, not as a sidecar.

## Connectors point first at the Russian market

The connection tables decide who this product is actually for. Under the heading for MOEX connections the listed names are T Bank, ALOR OPEN API, MOEX FixFast Spot, MOEX FixFast Currency, MOEX FixFast Forts, Transaq, Quik LUA, Plaza 2, Algopack Data, Finam Data, MFD Data, MOEX ISS Data and Asts Bridge. Asts Bridge is the one entry marked as not supported in the table, so a reader should check that row before planning around it. A separate international table starts with Interactive Brokers. The practical read is that the domestic Russian infrastructure is documented in detail and the international side is thinner, which is the opposite of what a reader outside that market might expect from a crypto-adjacent topic list. The project also notes that the software is listed in the Russian domestic software registry, which matters for procurement inside the country.

## Walk-forward optimization, with filters between phases

The optimizer is the part that separates this suite from a plain backtester. OsOptimizer runs walk-forward phases and applies rejection filters between them, and it saves reports. Walk-forward means the strategy is optimized on one window and then validated on the next, so a parameter set that only looks good in sample is exposed. Filters between phases decide which results from one phase are allowed to feed the next. The multi strategy mode of OsTester is the companion piece: several strategies are tested simultaneously against one portfolio, so the reader can see not only whether each strategy made money but how they interacted. Both of these run on the data OsData collected, and both produce saved output. One limitation is visible in the structure itself. The tools are desktop programs with a shared strategy layer, so the research loop is interactive rather than something you wire into a scheduled pipeline, and the documentation does not describe a headless mode.

## Two runtimes, uneven release cadence, no install instructions

The release history explains what to expect when you update. Two releases are visible: net9, tagged as the last .NET 9 build on 2026-06-13, and net_framework_last, tagged as the last .NET Framework build from May 2025, version 1.8.2.0. The last push to the repository was on 2026-10-15, so development continues even though the packaged builds are not weekly. Anyone choosing between the two runtimes should note the gap between the .NET Framework build and the .NET 9 build, since a 2025 build will not have the MCP server described above. The repository layout shows a .gitmodules file alongside doc/, project/ and a related projects/ directory, so submodules are in play. Installation is the murkiest part. The project documentation gives no package manager command and no install script; it points to its own site, o-s-a.net, a large FAQ guide of more than 500 posts, and support chat groups on Telegram and MAX. The top level of the repository is small, and the agent facing reference sits in the project/ directory:

```text
README.md
doc/
project/
related projects/
LICENSE
License_ru.pdf
```

The reference file for agents is project/CONTEXT_MCP.md, and it is the only documentation path in the repository that a new user can follow without registering anywhere.

## A licence that GitHub could not classify

The licence is not a standard open source identifier, and the project is upfront about the consequences. The repository ships both a LICENSE file and a Russian-language License_ru.pdf, and the project points to a dedicated page on its site explaining the terms, including permission to use the software for graduation thesis work in economics and programming. The file also notes that the software is included in the Russian domestic software registry. What none of this resolves is the question a commercial adopter actually has, because the wording is not summarized anywhere in the documentation available here, and the same document is what determines whether a version can be redistributed, modified or served as a hosted service. This is a case where reading the file is the only route. Do not read a permissive claim into the fact that the code is on a public repository, and do not read a restrictive one into the fact that it is used in academic settings.

## Where the suite stops, and what to use instead

Two boundaries are worth naming before anyone plans around this. The first is that this is a Windows desktop stack: the primary language is C#, the runtimes named in the releases are.NET 9 and.NET Framework, and no Linux, container or service deployment is described. If you want a trading service that runs unattended on a server, this suite is the wrong shape, and a Python research stack with a broker API client and your own scheduler would be the natural alternative. The second boundary is the script layer, and here the comparison is explicitly made by the project itself. Wealth-Lab script and Ninja script inspired the robot creation layer, and OsEngine keeps backward compatibility in it rather than redesigning it per release. The difference in approach is that OsEngine wraps the script layer in a full chain, with its own data loader, its own exchange emulator and its own optimizer, and adds an MCP server on top. Whether that chain is worth the extra surface depends entirely on whether your broker and your market are in the connector table.

## Conclusion

OsEngine suits a Windows trader who wants one program chain for data, backtesting, walk-forward optimization and live execution, and who is willing to read the custom LICENSE file before shipping anything commercial. It is the wrong choice if your broker is not on the connector list, if you need a containerised Linux service, or if you will not read the MCP authorization model before pointing an agent at a live account. Verify three things first: that your exchange appears in the connector table, which runtime you are on, since the net9 build and the net_framework_last build were cut more than a year apart, and what the MCP server exposes once a key and an IP whitelist entry are configured.

## FAQ

### What is OsEngine and what programs does it include?

It is a suite of programs for automating exchange trading, written in C#. The parts named are OsData for historical data, OsTester as an exchange emulator, OsOptimizer for walk-forward parameter selection, OsTrader as the bot station, plus a built-in MCP server.

### Can an AI agent run OsEngine through its MCP API?

The project describes a built-in Anthropic Model Context Protocol server that lets an agent such as Claude, Kimi or ChatGPT download history, create and configure robots, run backtests and walk-forward optimization, connect exchanges, view equity and reconcile positions. It documents more than 100 tools, SSE real time events, API key authorization and an IP whitelist.

### Which exchanges and brokers does OsEngine connect to?

The documented MOEX connections include T Bank, ALOR OPEN API, MOEX FixFast Spot, Currency and Forts, Transaq, Quik LUA, Plaza 2, Algopack Data, Finam Data, MFD Data, MOEX ISS Data and Asts Bridge, the last marked as not supported. An international table begins with Interactive Brokers.

### How is OsEngine licensed?

It uses a custom licence that GitHub could not classify. The repository contains a LICENSE file and a Russian-language License_ru.pdf, and the project documents the terms on its own site, including permission for use in graduation thesis work.

### Does OsEngine run on Linux or in Docker?

The project documents .NET 9 and .NET Framework builds, a Windows oriented desktop layout, and no container or server deployment. The documentation gives no install script or package manager command and instead points to o-s-a.net and the support chat groups.

## Sources

- [AlexWan/OsEngine on GitHub](https://github.com/AlexWan/OsEngine)
- [Issues](https://github.com/AlexWan/OsEngine/issues)
- [Project website](http://o-s-a.net)
- [README](https://github.com/AlexWan/OsEngine/blob/master/README.md)
- [Releases](https://github.com/AlexWan/OsEngine/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/alexwan-osengine
