What Hunt Cherry does
Hunt Cherry is the reversal-candle member of The Hunt family. It waits for a bar that takes out the previous bar’s extreme and the lowest low (or highest high) of the last few bars, then closes back past its own midpoint, while Grant’s AO shows the trend is still in play.
Reversal Candle Pattern
Bull Cherry: low below the previous low and at the lowest of the last 3 bars, close above the bar midpoint. Bear Cherry is the mirror image.
Grant’s AO Zone Gate
A Bull Cherry needs an active Grant’s AO long zone; a Bear Cherry needs an active short zone. The AO zones are built into the indicator.
Trend & Volatility Filters
Close must be on the trend side of the Purple Magic line (SMMA 34, shift 21) and Gator Lips (SMMA 5, shift 3). Oversized bars are skipped.
How to trade Hunt Cherry
Attach and Activate
Attach Hunt Cherry to your chart and enter your Serial Key in InpSerialKey.
Keep the Trend Filters On
Leave the Purple Magic and Gator filters enabled (the defaults) so markers only print on the trend side of both lines.
Wait for the Bar to Close
A Bull Cherry (DodgerBlue) prints at the bar low and a Bear Cherry (Crimson) at the bar high once the bar has closed. Alerts fire on a live bar close only.
Apply Your Own Entry and Risk Plan
Hunt Cherry is an entry alert, not an order manager. Use the marked bar with your own entry trigger, stop placement and position sizing.
Prompts, not trade instructions. A SETUP READY prompt tells you to review the structure on a closed candle. It is never a command to enter blindly.
Setups and chart grammar
Hunt Cherry evaluates each closed bar against one pattern and three gates.
| Setup | Context | What the indicator sees | Goal |
|---|---|---|---|
| Bull Cherry | Grant’s AO long zone active | Low below the previous low and at the lowest of the last 3 bars, close above the bar midpoint, close above Purple Magic and Gator Lips | Flag a pullback low that has been rejected in the trend direction |
| Bear Cherry | Grant’s AO short zone active | High above the previous high and at the highest of the last 3 bars, close below the bar midpoint, close below Purple Magic and Gator Lips | Flag a pullback high that has been rejected in the trend direction |
| Volatility Ceiling | Any bar | Range above 10 pips on M1, or above 3.0 × ATR(60) on higher timeframes | Skip the bar: no marker prints on oversized candles |
Rejected low in an active Grant’s AO long zone.
Rejected high in an active Grant’s AO short zone.
Close on the wrong side of Purple Magic or Gator Lips.
Bar range above the M1 pip cap or the ATR(60) ratio.
The Reversal Candle Invariant
All conditions are tested on the closed bar. Bar 0 never carries a marker, and alerts fire only on a live bar close — never on attach or a history reload.
mid = (high + low) / 2 Bull: close > mid AND low < low[1] AND low <= lowest(low, 3) AND AO long zone Bear: close < mid AND high > high[1] AND high >= highest(high, 3) AND AO short zone Size: M1 range <= 10 pips | >M1 range <= 3.0 * ATR(60)

Settings
| Input | Type | Default | What it does |
|---|---|---|---|
| InpSerialKey | string | "" | DLMS serial key licence activation. |
| InpMaxPipsM1 | double | 10.0 | Maximum bar range on M1, in pips. |
| InpMaxATRRatio | double | 3.0 | Maximum bar range as a multiple of ATR(60) above M1. |
| InpNumberOfBars | int | 3 | Lookback for the lowest low / highest high test. |
| InpArrowSymbol | int | 161 | Wingdings marker code (161 = Cherry/Star). |
| InpArrowOffsetPips | int | 3 | Marker offset from the bar, in pips. |
| InpFilterPurple | bool | true | Filter by the Purple Magic line. |
| InpFilterGator | bool | true | Filter by Gator Lips. |
| InpFilterChannel | bool | false | Filter by channel envelopes. |
| InpPurplePeriod / InpPurpleShift | int | 34 / 21 | Purple Magic SMMA period and shift. |
| InpGatorPeriod / InpGatorShift | int | 5 / 3 | Gator Lips SMMA period and shift. |
| InpChannelPeriod / InpChannelDeviation | int / double | 60 / 0.1 | Envelope period and deviation (%) for the channel filter. |
| Input | Type | Default | What it does |
|---|---|---|---|
| InpSerialKey | string | "" | DLMS serial key licence activation. |
| InpMaxPipsM1 | double | 10.0 | Maximum bar range on M1, in pips. |
| InpMaxATRRatio | double | 3.0 | Maximum bar range as a multiple of ATR(60) above M1. |
| InpNumberOfBars | int | 3 | Lookback for the lowest low / highest high test. |
| InpArrowSymbol | int | 161 | Wingdings marker code (161 = Cherry/Star). |
| InpFilterPurple | bool | true | Filter by the Purple Magic line (SMMA 34, shift 21). |
| InpFilterGator | bool | true | Filter by Gator Lips. |
| InpFilterChannel | bool | false | Filter by channel envelopes. |
| InpGatorPeriod / InpGatorShift | double | 5.0 / 3.0 | Gator Lips SMMA period and shift. |
| InpChannelPeriod / InpChannelDeviation | int / double | 60 / 0.1 | Envelope period and deviation (%) for the channel filter. |
Use it in your EA
On MetaTrader you can read the levels and setup state from an Expert Advisor with iCustom().
// MQL5 — read Hunt Cherry markers on the last closed bar
int h = iCustom(_Symbol, _Period, "AIMSHuntCherry");
double bull[1], bear[1];
CopyBuffer(h, 0, 1, 1, bull); // Buffer 0: Bull Cherry price
CopyBuffer(h, 1, 1, 1, bear); // Buffer 1: Bear Cherry price
bool isBull = bull[0] != EMPTY_VALUE;| Buffer | Name | Value |
|---|---|---|
| 0 | Bull Cherry | Bar low when a Bull Cherry prints (EMPTY_VALUE otherwise) |
| 1 | Bear Cherry | Bar high when a Bear Cherry prints (EMPTY_VALUE otherwise) |
Frequently asked questions
Both use the same Grant’s AO zones, trend filters and volatility ceiling. Hunt Dot marks inside bars (compression). Hunt Cherry marks reversal candles that sweep the recent low or high and close back past their midpoint.


