Alan Ross

Alan Ross Forex

Free Forex Indicators, MetaTrader Tools and Honest Trading Guides

Manual Strategies

Buy Sell Signal Indicators: 4 Free Ones Tested, The Best Made 0.08 Pips

Key takeaways

  • I coded the four arrow logics that free buy/sell indicators actually use and ran them over 16,926 EURUSD 5-minute bars. At a two hour hold the best of them made +0.08 pips per trade and the worst lost 0.32. All four sit inside a one pip band around zero.
  • A typical 1-pip spread kills every one of them. After spread the four scores are -0.92, -1.30, -1.31 and -1.32 pips per trade. Not one arrow survived its own transaction cost.
  • Win rates were 43.8% to 46.7% — the exact range a coin flip plus fees produces. No arrow got near the 70-80% its sales page promises.
  • One thing did work, and it is the opposite of how arrows are sold: the slowest arrow on the longest hold — a 25-pip ZigZag reversal held four hours — made +4.04 pips at a 55.7% win rate. Arrows are marketed for scalping, and scalping is precisely where they died.

Search “free buy sell indicator” and you get thousands of downloads, all showing the same screenshot: a chart peppered with green up arrows at the lows and red down arrows at the highs. The screenshots are real. The arrows are real. The question nobody answers is what those arrows pay if you take every single one of them without choosing.

So I stopped downloading and started coding. Behind almost every free arrow file is one of four logics, and all four are simple enough to reproduce exactly. I ran them across 16,926 real EURUSD 5-minute bars from June 3 to August 26, 2026 — the same dataset behind my Stochastic overbought test and my ADX above 25 test, so the numbers line up with everything else I have measured.

Which four arrow indicators were tested?

EURUSD chart with buy and sell arrow signals marked on candles
  • Fractal arrows. Bill Williams fractals: a bar whose high beats the two bars either side of it gets a sell arrow, the mirror gets a buy. This is the single most common free arrow file on the market. 1,811 arrows in the sample.
  • ZigZag reversal arrows. A swing low is marked when price then rallies a fixed distance off it. Tested at 8, 15 and 25 pip thresholds. 251 arrows at the 15-pip setting.
  • Moving average cross arrows. EMA 5 crossing EMA 20, arrow on the cross bar. 1,177 arrows.
  • RSI plus Stochastic confluence arrows. Buy when RSI(14) is under 35 and Stochastic crosses up below 30; mirror for sells. 831 arrows.

Measurement was the same for all four: enter at the close of the bar where the arrow is visible to you in real time, hold a fixed number of bars, count the move in pips in the arrow’s direction. No stop, no target, no discretion. After a trade the clock skips forward by the hold, so one move is never counted twice.

That phrase — visible to you in real time — is doing heavy lifting, and it is the reason these numbers look nothing like the screenshots. Two of these four indicators cannot be traded at the bar they draw on. I gave that its own article: why arrow indicators repaint and how to check.

What did the four arrows pay at a two hour hold?

Trader reviewing signal arrows across several charts
Arrow logicSignalsWin rateAvg pipsTotal pips
ZigZag 15 pip18246.7%+0.08+15.2
RSI + Stochastic37243.8%-0.30-113.2
EMA 5/20 cross42344.4%-0.31-130.5
Fractals51744.5%-0.32-168.0

The whole field fits in a band 0.40 pips wide. That is the finding. Four completely different ideas — a price pattern, a swing tracker, a trend cross and an oscillator confluence — arrive at the same nothing. When four unrelated methods all land on zero, the honest conclusion is that the arrow is not where the edge lives.

Note the win rates too: 43.8% to 46.7%. Every free arrow product I have seen advertises 70% or better. Nothing here came within twenty points of that.

Does any of them survive the spread?

Arrow logicAvg pipsAfter 1 pip spread
ZigZag 15 pip+0.08-0.92
RSI + Stochastic-0.30-1.30
EMA 5/20 cross-0.31-1.31
Fractals-0.32-1.32

One pip is a friendly assumption on EURUSD — friendly for the London and New York hours, at least. As I found when I measured spread and swap costs on MT4, the same pair at 23:00 UTC can cost several times that. An arrow whose entire raw edge is 0.08 pips does not have a spread problem. It has an arithmetic problem.

Does the hold length change anything?

This is where the dull table gets interesting. Fractals, the most popular arrow of the four, look like this across holds:

HoldSignalsWin rateAvg pips
30 minutes1,16544.4%+0.11
1 hour81644.7%-0.06
2 hours51744.5%-0.32
4 hours29951.2%+1.80

Three flat rows, then the four hour row jumps to 51.2% and +1.80 pips. The same shape shows up in the ZigZag family, and more strongly the slower you make it:

ZigZag thresholdArrows2h avg pips4h win rate4h avg pips
8 pips785-0.0549.1%+1.55
15 pips251+0.0852.4%+1.85
25 pips93+2.1055.7%+4.04

Fewer arrows, bigger threshold, longer hold — and the numbers climb the whole way. The 25-pip ZigZag fired 93 times in three months, roughly once a day, and paid +4.04 pips per trade at 55.7% over a four hour hold. That is the only genuinely positive result in this study, and it survives a one pip spread with room to spare.

It is also the exact opposite of how arrow indicators are sold. Every product page shows a 5-minute chart with an arrow every few bars, because a dense chart looks generous. Density is what killed them. The rare arrow held for hours is what worked, and the same lesson turned up when I tested Ichimoku cloud breakouts: the hold decided everything, and the shortest hold was the worst.

Why do the screenshots look so good then?

Because two of these four arrows are drawn with information that did not exist at the time. Fractals need two bars to close after the pivot. ZigZag needs price to move a fixed distance away from the low before it will admit the low was a low. On a historical chart both are placed at the perfect bar. In real time, the fractal arrives 2.8 pips later on average, and the 15-pip ZigZag arrives 14.29 pips later.

Take the ZigZag arrows exactly as they appear on your history — placed at the pivot bar — and the same test returns 88.2% wins and +10.42 pips. That is the screenshot. Trade them live and it is 46.7% and +0.08. Nothing about the indicator changed; only the moment you were allowed to click.

What I would actually do with this

  • Do not scalp arrows. Every 30-minute and 1-hour column here is at or below zero before costs.
  • Prefer the rare arrow. The 25-pip ZigZag fired 93 times, not 1,811, and it was the only positive result.
  • Check the hold you can realistically sit through before you judge any signal. Four hours changed three of these indicators from losers to winners.
  • Assume the screenshot is hindsight until you have proven otherwise on a live chart. It usually is.
  • Size before you signal. An entry with a 46% win rate is survivable with correct risk and fatal without — see my position sizing table.

Frequently asked questions

Do free buy sell indicators work?

On this data, not as advertised. Four common free arrow logics tested over 16,926 EURUSD 5-minute bars produced win rates of 43.8% to 46.7% and per-trade results between -0.32 and +0.08 pips at a two hour hold. All four were negative after a one pip spread.

Which free arrow indicator was best?

A ZigZag reversal with a wide 25 pip threshold, held four hours: 55.7% wins and +4.04 pips per trade across 93 signals. It is also the least exciting one to look at, since it produces roughly one arrow per day instead of one per hour.

Why is my arrow indicator’s win rate so much higher on history?

Because it repaints. Arrows that need future bars to confirm sit at the perfect bar in history and arrive late in real time. I measured the exact size of that gap in why arrow indicators repaint.

Are paid arrow indicators better than free ones?

Price is not the variable that matters. What matters is whether the logic needs future bars. A paid indicator that uses fractals or ZigZag repaints exactly as much as a free one, and a free indicator built on a moving average cross does not repaint at all — as the moving average crossover test shows, its problem is a different one.

What data was this run on?

16,926 EURUSD 5-minute bars, June 3 to August 26, 2026, the same set behind my stop loss distance test and my ADX against Supertrend comparison. Every arrow logic was reimplemented in code rather than downloaded, so the rules are fully known and repeatable.

Want a clean indicator to install right now?

It is my own enhanced DeMARK Trend Line indicator for MetaTrader 4 and 5. Non repaint, clean, and free.

Download the Free DeMARK Indicator

Written by Alan Ross

Forex trader and MetaTrader indicator developer. I build and test MT4 and MT5 tools, then write the honest version of how they actually work. More about me.

Last reviewed September 2026
Alan Ross
Alan Ross

Forex educator and indicator developer. I build and trade my own MetaTrader tools, and share the ones that genuinely help.

Leave a comment

Your email address will not be published. Comments are reviewed before they appear.