XTester 0.0.88: porting strategies from other platforms to XTester

XTester 0.0.88: porting strategies from other platforms to XTester

A strategy port can compile cleanly and still trade differently. Platforms disagree on when code runs within a bar, how orders behave, and how position state is carried from one event to the next. Replacing one set of commands with another does not resolve those differences.

XTester 0.0.88 adds a converter that handles those differences explicitly. It reads the source strategy, identifies its trading rules, and creates a separate C# project. When a source feature has no direct equivalent, XTester flags the difference and lets you choose how to handle it.

How conversion works

You can provide the source as a file, folder, archive, code snippet, HTTPS link, or Git repository. XTester recognizes Pine Script, MQL4 and MQL5, Python frameworks, EasyLanguage, PowerLanguage, and C# strategies written for other environments. It can also analyze readable code that is not covered by those platform-specific converters.

XTester does not execute imported code. It first identifies entries, exits, parameters, position sizing, order handling, and state updates between events. Each finding includes the relevant file and line references.

The converter then compares those rules with the current XTester capabilities. If there is no direct match, it describes the original behavior, shows the available options, and explains what each option changes. You can accept a recommendation, choose another option, specify a different approach, or exclude that part from the conversion.

Intrabar calculations, unusual order types, external libraries, and private indicators may require a decision. If a required dependency is missing and the strategy cannot be reconstructed without it, XTester stops the conversion and explains what is missing.

After you resolve those decisions, XTester generates and compiles a C# project. If the build fails, XTester can try to repair the errors again, or you can edit the code directly. After the project builds, XTester compares it with the source rules again. That check can catch a missing exit, order rule, or state update that a compiler would accept.

Reviewing the converted project

The converted strategy is created in its own project, so it does not overwrite the project already open in XTester. The project includes the source material, conversion decisions, and report.

The report shows what was carried over unchanged, what changed because of your decisions, and what could not be ported. It does not assign a compatibility percentage. A single score would hide the actual differences and could not prove that the two environments behave identically.

The final step is a Simulator run with your own data and settings. Historical data, fees, and execution rules can differ across platforms, so the converter does not promise identical trades or returns. It generates the C# project and records the parts that still need review.

This material is for information only and is not investment advice. Backtest results do not guarantee future returns.