Skip to main content
On this page

Free MT5 Indicator Downloads: How to Check Repainting Claims

· 7 min read
Pineify Team
Pine Script and AI trading workflow research team

A label such as non-repaint does not verify an MT5 indicator. The useful question is whether a signal available at a recorded decision time stays consistent after more prices arrive and after the chart reloads, under the same inputs and historical data.

This page provides download sources and a verification procedure. It does not certify an unnamed ZigZag, Supertrend or scalping download, and it does not present an undocumented forward test as evidence.

Free MT5 Non Repaint Indicator Download: Verification Guide

Separate three kinds of chart changes​

The current bar can change normally. Its high, low and latest close evolve before the next bar begins. An indicator may display provisional values during that period and offer a separate confirmed-bar alert. That behavior is not automatically deceptive.

A past signal can appear late. A swing detector may require later bars to confirm an earlier extreme, then draw its marker on the extreme's timestamp. The marker's location is not the time when a trader could first act on it.

Previously recorded values can change after recalculation. Future-dependent logic, incomplete higher-timeframe inputs, revised history or initialization differences can cause this. MetaQuotes documents that OnCalculate may receive a reset calculation state when deeper history is loaded or gaps are filled. A closed-bar rule alone does not eliminate every cause.

What common indicator names do and do not establish​

Indicator or familyBehavior that needs checking
Standard ZigZagIts latest section can change as new prices arrive; it is not a fixed record of real-time entries
FractalsThe familiar five-bar pattern needs two later bars; record confirmation time as well as pivot time
MACD or moving averagesReading completed bars avoids current-bar fluctuation, but input history and alert logic still matter
TDI and Supertrend variantsThe name does not identify the exact formula, higher-timeframe inputs or confirmation rule
Heikin Ashi variantsThese are transformed price values; a stable synthetic candle is not an executable market price
A product advertised as no lag and no repaintRequire its exact version, source or documented behavior and a recorded test; the slogan proves neither property

The MetaQuotes ZigZag download explicitly describes changes to the latest section. It is a useful reference implementation, not a recommended non-repainting entry system. For Fractals, a central extreme requires bars on both sides. Waiting for the two following bars to finish necessarily delays confirmation.

There is no defensible family-wide table assigning zero repaint risk to every TDI, Supertrend or ZigZag implementation.

Find the exact MT5 file​

Start with the MQL5 Code Base and the author's original release page. Confirm that the download is for MetaTrader 5 and retain the page URL, author, version, date and file hash. Availability in a community library is not a performance or security certification.

An .mq5 file contains source; .ex5 is compiled executable code. Included .mqh dependencies may also be required. Source availability makes review possible, but it does not prove that every dependency is harmless or that a separate compiled download matches that source.

Avoid treating an unrelated download directory, a copied product name or a forum testimonial as verification. This page does not endorse redistributed paid files or claim that third-party sites have audited their entire catalogs.

Install and compile deliberately​

  1. In MT5, use File > Open Data Folder and locate MQL5/Indicators.
  2. Place the indicator files there, preserving any documented dependency structure. Follow the author's installation instructions for included files.
  3. Open the main .mq5 file in MetaEditor and use Compile or F7. Inspect errors and warnings. MetaEditor's compilation guide explains that successful compilation produces the .ex5 executable.
  4. Locate the indicator in Navigator, refreshing the list if needed, and attach it to a demo chart. MetaQuotes describes indicator attachment and settings.
  5. Save the exact inputs and inspect the Experts and Journal messages. Understand any requested external-library permissions before enabling them.

Restarting the terminal is not a substitute for inspecting compilation results. A successful compile establishes that an executable was produced; it does not establish non-repainting behavior.

Record signals before checking the finished chart​

Use the following log for a prospective test:

FieldWhy it matters
Broker, symbol, timeframe and time zoneIdentifies the data and bar boundaries
Indicator version, file hash and inputsPrevents comparing different implementations
Observation timestampShows when information was actually available
Marker's bar timestamp and valueSeparates a plotted pivot from its later discovery
Current-bar or confirmed-bar statusSeparates provisional changes from the promised stable signal
Alert timestamp and payloadChecks what an EA or notification recipient actually received
Value after later bars and reloadDetects revision, disappearance or changed initialization

Capture values as they arrive, then compare them after subsequent bars and a reload. Include higher-timeframe transitions if the indicator uses them. A static historical screenshot cannot show what was visible earlier. Visual testing is useful, but its model and data must support the timing claim being tested.

When reviewing source, trace buffer writes, indexing direction and the availability of every input. Do not flag every iBarShift() call as repainting: that function maps a time to a bar index. Current-bar indexing can be intentional for a provisional display. The relevant question is which information the final signal actually uses and when.

Using the result in an EA​

An EA needs a defined buffer, a missing-value convention and a decision time. It also needs to avoid acting repeatedly on the same signal. Reading a closed chart bar does not help if that buffer contains an unconfirmed higher-timeframe value or a swing that was inserted retrospectively.

Non-repainting behavior does not guarantee profitable trades or identical historical and live fills. Test the signal contract separately from spreads, order handling and execution.

The Best Pine Script Generator

Pineify can assist with preparing trading code, but generated source still needs compilation and behavioral testing in its target platform. A Pine Script workflow runs in TradingView; an MT5 indicator uses MQL5. Neither a visual editor nor an AI-generated explanation certifies that an arbitrary download will preserve its past signals.

Pineify Website
Which free MT5 download is verified here as non-repainting?
None is certified by this page. It links original sources and provides a procedure for evaluating the exact version you obtain.
Does using close prices guarantee no repainting?
No. The current close can change, higher-timeframe data may be incomplete, and later-bar confirmation can place markers in the past.
Is standard ZigZag non-repainting?
Its latest section can change as prices develop. Record when a swing becomes known rather than treating its historical location as an entry available at that time.
How long should a verification test run?
There is no universal number of weeks. Cover the events relevant to the implementation, including new bars, higher-timeframe closes, reloads and available-history changes.