Case studies

Case study: MT4 input panel and set-file rebuild

The old settings panel had become incompatible with newer terminal builds, and unnamed set files made correct configuration guesswork.

  • EURUSDMarket
  • H1TF
  • MT4Platform
  • 6 weeksDelivery window
  • 5Deliverables
Backtest and forward test method

The client's idea

Farshid Asadi works EURUSD on H1; the opening brief was: My experts' settings panel broke, and I want the set files organised too.

Project and starting point

The old settings panel had become incompatible with newer terminal builds, and unnamed set files made correct configuration guesswork.

Solution architecture

The input panel was rebuilt with save/restore, set files got a consistent naming scheme, and every expert kept its previous behaviour.

All four experts share one naming pattern so support work no longer needs guessing. It matches how EURUSD is actually traded and can be tested against the data already available.

Why this design

All four experts share one naming pattern so support work no longer needs guessing. It matches how EURUSD is actually traded and can be tested against the data already available.

Implemented capabilities

Modules and components built: Settings save and restore.

Delivered output:
MT4 input panel and set-file rebuild — EURUSD (H1)
Specification document and the rule-to-code mapping table
Full MQL4 source, commented
Test report: Tested against four legacy experts
Parameter document and install guide (6 weeks)

Safeguards and risk control

New code lives in pure functions without hidden global state, and order-execution errors are caught and logged.

Backtest and forward test method

Test method: Tested against four legacy experts.

Testing runs in three stages: a backtest on historical data, limited optimisation inside the contract's scope, and a forward run with the parameters frozen.

Tools and stack: MQL4, the legacy environment, set files.

Every figure from this project is published together with its measurement conditions: the data window, the tick model, the spread, the commission and the build of the executable. Without them a number cannot be compared with anything.

Publishable results

Reconfiguring every expert fell from hours to minutes, and set-file mix-ups disappeared from the reports.

Limitations and cautions

New code lives in pure functions without hidden global state, and order-execution errors are caught and logged.

Every test result depends on the quality of the historical data, the broker's spread and market conditions, and none of it is a promise about the future. Through a severe price gap or a broker disconnection a stop loss cannot be guaranteed, so behaviour in those conditions must be reviewed separately.

Our next-step proposal

The next step is automated tests over the calculation functions and documentation of the internal API.

Portfolio

Measured results

These are the figures the test produced — not a promise about future performance.

  • 11 Defects fixed
  • 0 Regressions caught
  • 34 Configurable inputs
  • 6 scenarios Scenario test coverage