Categories

Perceptron AI Indicator MT4
Perceptron AI is a free, instant-download MT4 indicator by Ibrahim Noor that plots a single binary line — 0 or 1 — in its own window, framed around the idea of a neural-network "perceptron." It's worth being upfront about what that means in this code before using it, since the name promises more than the…
Download the Perceptron AI Indicator MT4Perceptron AI is a free, instant-download MT4 indicator by Ibrahim Noor that plots a single binary line — 0 or 1 — in its own window, framed around the idea of a neural-network “perceptron.” It’s worth being upfront about what that means in this code before using it, since the name promises more than the formula actually delivers.
What “Perceptron” Means in This Code
A perceptron, in its simplest form, is a single artificial neuron: a weighted sum of inputs run through a step function that outputs either a 0 or a 1. That’s precisely what this indicator implements — one such neuron, with four inputs. Its inputs are the built-in Accelerator Oscillator (AC) value read at four different points: the current bar, and 7, 14, and 21 bars further back.
The Weighted Sum
Each of the four extern inputs (x1–x4) is converted into a signed weight by subtracting 100 (w = x - 100), which lets a 0–200 input range represent negative or positive weighting. With the defaults — 135, 127, 16, 93 — the actual weights work out to roughly +35, +27, -84, and -7. The code then computes x = w1*AC(0) + w2*AC(7) + w3*AC(14) + w4*AC(21), and plots 1 if that sum is positive, or 0 if it isn’t.
What’s Missing: Any Learning
There is no training loop, no error correction, and no mechanism anywhere in the code that adjusts the weights based on outcomes. The four weight inputs are static values you set once and the indicator uses forever, until you change them yourself. Despite the “AI” and “Perceptron” branding, this is a fixed linear-threshold formula applied to lagged Accelerator Oscillator readings — not a self-learning or adaptive system.
How to Read and Use It
The line sits at 1 when the weighted combination of current and lagged AC momentum is positive (a bullish-leaning reading) and drops to 0 when it’s negative (bearish-leaning). Because the Accelerator Oscillator itself is already a fairly reactive momentum-of-momentum measure, and this indicator combines four separate AC readings with a hard 0/1 step function, expect the line to flip fairly often in choppy conditions. It’s best treated as a coarse directional filter to combine with other tools, not as a stand-alone entry trigger.
Why Sample AC at 0, 7, 14, and 21 Bars Back?
Rather than reacting to a single Accelerator Oscillator reading, the formula spreads its four inputs evenly across a roughly three-week window of momentum history on a daily chart (in 7-bar steps), or a proportionally shorter window on lower timeframes. This is meant to weigh how momentum is behaving right now against how it was behaving one, two, and three “cycles” back, so a single sharp AC spike on the current bar can be outweighed by the sum of the three older readings, and vice versa. Whether that spacing is meaningful for any particular pair or timeframe is entirely dependent on the four weight inputs you choose — the code itself doesn’t validate or optimize the combination for you.
Input Parameters
- x1 (default 135) — weight input for the current bar’s Accelerator Oscillator reading (actual weight = x1 − 100 ≈ +35).
- x2 (default 127) — weight input for the AC reading 7 bars back (actual weight ≈ +27).
- x3 (default 16) — weight input for the AC reading 14 bars back (actual weight ≈ -84).
- x4 (default 93) — weight input for the AC reading 21 bars back (actual weight ≈ -7).
Raising any of these above 100 pushes its weight positive and increases how much that lagged AC reading pulls the sum toward a bullish (1) reading; lowering it below 100 does the opposite.
Repaint Behavior
Perceptron AI does not repaint on closed bars. Each bar’s output depends only on Accelerator Oscillator readings taken at that bar and further into the past (never a newer or future bar), combined with fixed weights, so once a bar closes its 0/1 value doesn’t change on later ticks. The only value that can still move is the current, still-forming bar until it closes — normal behavior shared by most indicators.
Limitations
- Despite the name, there is no adaptive or machine-learning behavior — the weights are fixed values you configure manually.
- The code recalculates the entire chart history on every tick (a loop from bar 0 to Bars, with no incremental skip), which is inefficient on long histories; the loop condition also reaches one index past the buffer’s valid range, a boundary quirk that could trigger an array-out-of-range error on stricter terminal builds.
- There are no arrows, alerts, or entry markers — just a raw 0/1 line that needs to be interpreted or combined with other tools.
- The code offers no built-in guidance for choosing x1–x4; tuning them requires manual experimentation.
- x1 (default 135) — Weight input for the current bar's Accelerator Oscillator reading (effective weight = x1 – 100).
- x2 (default 127) — Weight input for the Accelerator Oscillator reading 7 bars back (effective weight = x2 – 100).
- x3 (default 16) — Weight input for the Accelerator Oscillator reading 14 bars back (effective weight = x3 – 100).
- x4 (default 93) — Weight input for the Accelerator Oscillator reading 21 bars back (effective weight = x4 – 100).
FAQs About the MT4 Perceptron AI Indicator MT4
Is Perceptron AI actually a self-learning AI indicator?
No. Despite the name, there is no training or learning mechanism anywhere in the code. It implements a single fixed-weight perceptron formula (a weighted sum plus a step function) over four Accelerator Oscillator readings, and the weights never adjust themselves.
Does this indicator repaint?
No, not on closed bars. Each bar’s value depends only on Accelerator Oscillator readings from that bar and earlier, so a closed bar’s 0/1 value is fixed; only the current, still-forming bar can still change.
What do the x1 through x4 inputs control?
Each one sets the weight applied to the Accelerator Oscillator reading at a different lookback: x1 for the current bar, x2 for 7 bars back, x3 for 14 bars back, and x4 for 21 bars back. The code subtracts 100 from each input internally, so values above 100 act as positive weights and values below 100 act as negative weights.
Why does it use AC readings from 7, 14, and 21 bars back instead of just the current bar?
Combining the current Accelerator Oscillator reading with three lagged readings lets the formula weigh recent momentum against slightly older momentum, rather than reacting to a single bar’s AC value in isolation.
What timeframes or pairs does this suit best?
The code contains no timeframe- or symbol-specific logic, so it behaves the same everywhere it’s applied. Given how reactive the underlying Accelerator Oscillator is, it’s best used as a supplementary directional filter alongside other tools rather than a stand-alone signal on any particular timeframe.
