Portfolio

MT4 input panel and set-file rebuild

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

MT4 Existing EA owner Farshid Asadi Owner of several legacy experts

Project specifications

Project specifications

Market
EURUSD
TF
H1
Platform
MT4
Client type
Existing EA owner
Delivery window
6 weeks
Stack
MQL4, the legacy environment, set files
Strategy
Parameter panel rebuild + set-file cleanup
Modules
Settings save and restore
Testing
Tested against four legacy experts

Who this was for

Farshid Asadi

Role
Owner of several legacy experts
City
Ahvaz
Project reference
TBT-1405-16
Trade flow

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.

Initial challenge

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

Solution

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

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.

Safeguards and risk control

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

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

Portfolio

How the delivery ran

Every project moves through these five phases, with the window for each agreed in the specification.

  1. Discovery and problem framing

    Completed

    Reading the existing code or the client's requirement and fixing the scope of the change on EURUSD.

    Day 1–2

  2. Written specification

    Completed

    Writing the function contract, file layout and naming rules before any code.

    Day 3–9

  3. Implementation

    Completed

    Implementing in MQL with separated layers and no logic duplicated across files.

    Day 10–23

  4. Testing and validation

    Completed

    Compiling without warnings, unit-testing the functions and running historical EURUSD data.

    Day 24–31

  5. Handover and support

    Completed

    Handover of an organised, commented source that is ready for the next change.

    Day 32–35