A chart can look continuous even when its underlying price history contains holes. Missing candles may arise from interrupted downloads, incomplete broker archives, symbol changes, or trading sessions that never generated a quote. Distinguishing a genuine market closure from absent data matters because indicators and automated strategies interpret the bars they receive, not the bars that should have existed.
In metatrader 4, the most reliable inspection begins with timestamps rather than the visual spacing of candles. Five data problems deserve separate checks before historical signals are used to justify a live CFD position.
Unexpected Timestamp Jumps Can Hide Lost Trading Sessions
Open the relevant timeframe and use the crosshair or Data Window to inspect adjacent candle times. On a five-minute chart, a jump from 10:15 to 10:30 during an otherwise active session warrants investigation. The absence of a candle does not automatically prove corruption: some instruments have scheduled breaks, and some feeds omit intervals with no ticks.
Compare the gap with the broker’s published trading hours and another available timeframe. A missing interval during a liquid session is more suspicious than an identical gap at a market close. A strategy that counts bars instead of elapsed minutes may unknowingly stretch its lookback period.
Incomplete Downloads Can Produce Misleading Indicator Warmups
Historical data may stop earlier than expected because the terminal has not loaded enough records or its chart-history settings limit available bars. Scrolling backward, pressing Home, and examining History Center can help reveal whether the requested period is present. Downloaded data should be checked against the actual broker feed before it is used for execution research.
A moving average calculated from an insufficient opening history can begin with distorted values. Confirm that enough earlier candles exist to initialize the indicator, rather than treating the first visible signal as fully established.
Missing Bars Can Turn a Valid Stop Test Into a False Backtest
Imagine a hypothetical natural-gas CFD strategy using 15-minute candles. It buys 100 units at $3.20 and has a protective stop at $3.12. During a volatile session, the actual broker feed records a 14:15 candle with a low of $3.09, followed by a 14:30 candle closing at $3.24. If the 14:15 bar is absent from imported history, a candle-based backtest might show the position surviving and later gaining $4. The omitted low means the stop should have been triggered, subject to the execution assumptions of the test, for a loss of at least $8 before costs.
The missing candle does not merely change an indicator reading; it removes an adverse price event. Compare suspect intervals with an independent archive and inspect the testing model’s tick assumptions before accepting reported drawdown.
Broker Server Time Can Make Complete Histories Look Broken
A dataset copied between terminals may use different server time zones or daylight-saving conventions. Daily candles can start at different hours, creating apparent gaps or extra short sessions even when both feeds contain legitimate quotes.
For metatrader 4 research, reconcile timestamps in a common time zone before merging histories or comparing indicators. The safer-looking chart may simply have a different daily cutoff, not better data quality. Inspect the broker’s server clock and session schedule before labeling a mismatch as missing history.
Repaired History Can Change Signals Without Changing the Strategy
Backfilling absent bars changes candle sequences, indicator calculations, and sometimes the historical entry price used by a test. Previously generated performance reports can therefore become incomparable with newly calculated results. Save the original dataset, record the affected dates, and rerun tests after repairs rather than silently replacing files.
Before opening a CFD based on a historical signal, audit the intended symbol and timeframe for unexplained timestamp jumps, verify session hours and indicator warmup coverage, and confirm that any repaired interval has been retested with the broker’s executable-price assumptions.
