Portfolio

Multi-timeframe oscillator bot

A completeness check on the higher-timeframe candle before any decision, plus synchronisation logs tracing the moment data refreshed.

MT5 Professional trader Milad Heydari FX trader

Project specifications

Project specifications

Market
EURUSD
TF
M15
Platform
MT5
Client type
Professional trader
Delivery window
6 weeks
Stack
MQL5, multi-timeframe data, synchronisation logs
Strategy
Three-timeframe confirmation
Modules
Timeframe synchronisation
Testing
Cross-timeframe data lag test

Who this was for

Milad Heydari

Role
FX trader
City
Tabriz
Project reference
TBT-1406-23
Trade flow

The client's idea

Milad Heydari works EURUSD on M15; the opening brief was: My three-timeframe indicator should trade only when all three point the same way.

Initial challenge

Higher-timeframe data arrives later; without synchronisation the bot decided on an incomplete candle.

Solution

A completeness check on the higher-timeframe candle before any decision, plus synchronisation logs tracing the moment data refreshed.

Why this design

The candle-completeness check is a hard gate in code, not a note in a manual. It matches how EURUSD is actually traded and can be tested against the data already available.

Safeguards and risk control

The expert never reads future bars, and it stops opening positions when the connection drops.

Our next-step proposal

The next step is a chart dashboard showing the live signal and the filters that rejected a trade.

Portfolio

Measured results

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

  • 99.9 % Runtime stability in test
  • 11 Configurable inputs
  • 640 Trades reviewed
  • 7.8 % Max drawdown in test

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 client's indicator signal and pinning down exactly when it fires on EURUSD.

    Day 1–3

  2. Written specification

    Completed

    Defining sizing from stop distance and the conditions under which no trade is taken.

    Day 4–11

  3. Implementation

    Completed

    Wiring the signal to the execution layer without touching the indicator's own formula.

    Day 12–27

  4. Testing and validation

    Completed

    Comparing the trades taken against the indicator's historical signals on EURUSD.

    Day 28–37

  5. Handover and support

    Completed

    Handing over the indicator and the expert together, with an install guide.

    Day 38–41