Filters
Filters are the conditions that decide when the bot may act. Each slot pairs an indicator with a criterion and a threshold, on the timeframe you choose.
How a filter is built
Pick an Indicator, a Criteria, and either a numeric Threshold or a second Compare Indicator. The filter runs on its own TimeFrame, so a higher-timeframe trend filter can gate a lower-timeframe entry. Each slot can also override the indicator's parameters just for that filter.
Criteria
Against a threshold
| GreaterGreater | The indicator value is above the threshold.Requires a condition to already hold — it checks a state, not the moment it changes. Example: Greater 70 on RSI is true on every bar the RSI sits above 70, so a bot can keep trading only while momentum stays strong. |
| LessLess | The indicator value is below the threshold.The mirror of Greater: true while the value stays under the level. Example: Less 30 on RSI holds through an oversold stretch — useful as an 'only buy when cheap' gate. |
| EqualEqual | The indicator value matches the threshold within a small tolerance.Exact equality is rare in floating-point data, so it matches within a small tolerance band around the level. Example: ADX Equal 25 fires when trend strength is right at the 25 boundary, give or take a hair. |
| Not EqualNotEqual | The indicator value differs from the threshold.True whenever the value is off the level by more than that tolerance — effectively 'anything but this level'. Example: use it to skip a bar only when an indicator sits exactly at a neutral reading like 50. |
| BetweenBetween | The value sits inside a low–high band.Needs two bounds and is true only inside them — good for 'sweet spot' filters. Example: RSI Between 40 and 60 keeps a bot active only in the calm middle, away from both extremes. |
| OutsideOutside | The value sits outside a low–high band.The inverse of Between: true when the value is beyond either bound. Example: RSI Outside 30–70 fires in both overbought and oversold territory, catching extremes on either side. |
| Percentage ChangePercentageChange | The percent change over the lookback exceeds the threshold.Compares now vs a bar N back and fires when the % move exceeds your threshold — a momentum-burst filter. Example: Percentage Change 5% over 10 bars flags a fast 5% rally or drop while ignoring slow drift. |
| Change RateChangeRate | The rate of change per bar exceeds the threshold.Like Percentage Change but per bar — it measures the speed of the move, not the total. Example: a high Change Rate warns that price is accelerating, even before the cumulative move looks big. |
| All-Time HighAllTimeHigh | The value is at its highest across the lookback window.True when the value tops every reading in the lookback window — a breakout / strength gate. Example: price All-Time High over 100 bars confirms a fresh 100-bar high before a trend-follow entry. |
Crossing a threshold
| Cross UpCrossUp | The indicator crosses above the threshold on this bar.Fires on the single bar where the value moves from below the level to above it — the event, not the state. Example: MACD Cross Up 0 marks the exact bar momentum flips positive, so you enter once instead of on every bar above zero. |
| Cross DownCrossDown | The indicator crosses below the threshold on this bar.The mirror of Cross Up: the bar the value drops from above to below the level. Example: RSI Cross Down 70 catches the moment an overbought reading starts to roll over, a classic exit trigger. |
| Cross Up (with margin)CrossUpWithMargin | Crosses above the threshold and clears it by a set margin — filters out fake crosses.Same as Cross Up but the value must clear the level by a set margin, so a tiny wobble right at the line doesn't count. Example: Cross Up 0 with a 2-point margin ignores noise that pokes just barely above zero and snaps back. |
| Cross Down (with margin)CrossDownWithMargin | Crosses below the threshold and clears it by a set margin.The down-cross version of the margin filter — it confirms the break lower is decisive. Example: Cross Down 70 with a margin waits until RSI is clearly back under 70, not just grazing it, before firing. |
Against a second indicator
| Greater than indicatorGreaterThanIndicator | The indicator is above the second (compare) indicator.Compares two indicators instead of a fixed number, so the level adapts to the market. Example: price Greater than a 200-period MA is the classic 'above the moving average = uptrend' filter. |
| Less than indicatorLessThanIndicator | The indicator is below the second (compare) indicator.The mirror of the above: the first line stays under the second. Example: price Less than its moving average is a downtrend / weakness gate that keeps a bot out of longs. |
| Cross up indicatorCrossUpIndicator | The indicator crosses above the second (compare) indicator.The event where the first line crosses above the second — the entry moment, not the ongoing state. Example: a fast MA Cross up a slow MA is the textbook golden-cross trigger. |
| Cross down indicatorCrossDownIndicator | The indicator crosses below the second (compare) indicator.The mirror — the fast line crossing below the slow (a death cross). Example: the MACD line Cross down its signal line flags momentum rolling over, a common exit trigger. |
Slope & turns
| Increasing slopeIncreasingSlope | The indicator has been rising across the lookback window.Looks back over a window and passes only if the indicator rose overall — a sustained-uptrend gate, not a one-bar tick. Example: require RSI Increasing slope so you only trade while momentum is genuinely building. |
| Decreasing slopeDecreasingSlope | The indicator has been falling across the lookback window.The mirror: passes only if the indicator fell overall across the window. Example: skip longs while an oscillator has a Decreasing slope, so you don't buy into weakening momentum. |
| Slope upSlopeUp | The indicator's slope is positive right now.Checks the slope right now (this bar vs last), so it reacts faster than the windowed version but is noisier. Example: Slope up on a moving average confirms the very latest tick is upward. |
| Slope downSlopeDown | The indicator's slope is negative right now.The instantaneous down version — the latest bar is lower than the one before. Example: Slope down as an exit cue gets you out the moment a rising indicator starts ticking lower. |
| Turned up recentlyTurnedUpRecently | Made a local low within the lookback and turned up — an early upward turn.Catches an early bottom: the indicator made a local low in the window and has just started rising. Example: Turned up recently on a stochastic gets you in near the turn instead of waiting for a full cross. |
| Turned down recentlyTurnedDownRecently | Made a local high within the lookback and turned down — an early downward turn.The mirror: a local high in the window has just started falling — an early top. Example: Turned down recently on RSI flags a fade before a full overbought cross confirms it. |
| TurnedTurned | The indicator changed direction on this bar (up-to-down or down-to-up).Fires on the exact bar direction flips either way — up-to-down or down-to-up. Example: use Turned on a smoothed line to act on any pivot without specifying which direction in advance. |
| Consecutive higherConsecutiveHigher | N bars in a row each higher than the last.Requires N bars each higher than the one before — a strict, staircase-style uptrend. Example: Consecutive higher 3 needs three rising bars in a row, filtering out choppy noise. |
| Consecutive lowerConsecutiveLower | N bars in a row each lower than the last.The mirror: N bars each lower than the previous — a strict downtrend. Example: Consecutive lower 3 confirms three falling bars in a row before a short, avoiding single-bar dips. |
Bands
| Inside bandsInsideBands | The value is within its bands (e.g. inside the Bollinger channel).True while the value stays within its own bands. Example: price Inside the Bollinger bands means the market is calm / mean-reverting — good for range strategies, and a warning against breakout entries. |
| Outside bandsOutsideBands | The value broke outside its bands — a volatility breakout.True when the value pierces a band — a volatility breakout. Example: price closing Outside the upper band signals an impulsive move worth trend-following (or fading, if you expect a snap-back to the mean). |
Trend & volatility
| Trend directionTrendDirection | The indicator agrees with the trade's required trend direction.Passes only when the indicator agrees with the trade's own direction (long vs short), so one filter works for both. Example: on a long it requires an uptrend read; on a short, a downtrend — automatically. |
| Multi-timeframe alignMultiTimeFrameAlign | The indicator points the same way across several timeframes.Checks the same indicator on several timeframes and passes only if they all point the same way. Example: RSI bullish on M15, H1 and H4 together is a far stronger signal than on one timeframe alone. |
| Multi-timeframe trend alignMultiTimeFrameTrendAlign | The trend is aligned across several timeframes.Like the above but for overall trend rather than one indicator's reading. Example: require the trend up on H1 and H4 before taking an M15 long, so you always trade with the bigger tide. |
| ConsolidatingConsolidating | The market is flat / ranging with little movement.True when the market is flat / ranging with little movement. Example: use Consolidating to pause a breakout bot during dead, directionless periods and avoid churn — or to trigger range strategies. |
| Volatility expansionVolatilityExpansion | Volatility is rising (ranges widening).Ranges are widening — a move is underway. Example: Volatility expansion right after a quiet stretch confirms a breakout has real energy behind it, not just a false poke. |
| Volatility contractionVolatilityContraction | Volatility is falling (ranges narrowing) — often precedes a breakout.Ranges are narrowing — the calm that often precedes a breakout. Example: Volatility contraction (a 'squeeze') is a classic setup to arm a breakout entry before the expansion fires. |
Divergence
| DivergenceDivergence | Any divergence between price and the indicator.The generic catch-all: any price/indicator disagreement, bullish or bearish. Example: use plain Divergence when you just want an early reversal warning without specifying the exact type. |
| Regular bullish divergenceRegularBullishDivergence | Price makes a lower low while the indicator makes a higher low — a reversal-up signal.Price lower low, indicator higher low — selling is losing steam near the bottom, a reversal-up cue. Example: RSI making a higher low while price dips lower often precedes a bounce. |
| Regular bearish divergenceRegularBearishDivergence | Price makes a higher high while the indicator makes a lower high — a reversal-down signal.Price higher high, indicator lower high — buying is fading near the top, a reversal-down cue. Example: price prints a fresh high but MACD a weaker high, warning the rally is tiring. |
| Positive divergencePositiveDivergence | A bullish price/indicator divergence (generic).A generic bullish divergence when you don't need to distinguish regular from hidden. Example: pick Positive divergence for a simple 'momentum turning up' gate. |
| Negative divergenceNegativeDivergence | A bearish price/indicator divergence (generic).The generic bearish counterpart — Positive divergence's mirror, a 'momentum turning down' gate. Example: use it when the exact regular/hidden distinction doesn't matter to your rule. |
| Triple divergenceTripleDivergence | Divergence confirmed across three successive swings — a stronger signal.Divergence confirmed across three successive swings, not two — rarer but far more reliable. Example: Triple divergence filters out the many two-swing divergences that fail to reverse. |
| Double bottomDoubleBottom | Two matching lows form a reversal-up pattern.Two matching lows (a 'W') form a reversal-up pattern. Example: a Double bottom near a support level is a high-confidence long setup once the middle peak breaks. |
| Double topDoubleTop | Two matching highs form a reversal-down pattern.Two matching highs (an 'M') form a reversal-down pattern. Example: a Double top under resistance is a high-confidence short setup once the middle trough gives way. |
Price structure & levels
| Trendline breakoutTrendlineBreakout | Price breaks through a detected trendline.Price breaks through an automatically detected trendline — a momentum entry. Example: a break above a descending trendline signals a possible trend change from down to up. |
| Trendline rejectionTrendlineRejection | Price tests a trendline and rejects off it.Price tests a trendline and bounces off it instead of breaking through — a with-trend entry. Example: a rejection off a rising support trendline is a classic 'buy the dip' in an uptrend. |
| Support breakdownSupportBreakdown | Price breaks below a support level.Price closes below a support level — often a short trigger or a stop-out warning. Example: a Support breakdown after a long range confirms sellers finally took control. |
| Resistance breakoutResistanceBreakout | Price breaks above a resistance level.Price closes above a resistance level — a long / breakout trigger. Example: a Resistance breakout on rising volume is the textbook breakout entry. |
| Near support levelNearSupportLevel | Price is close to a support level.Price is close to (not through) a support level — a proximity gate for reversal setups. Example: only arm a long when price is Near a support level, where a bounce is likely. |
| Near resistance levelNearResistanceLevel | Price is close to a resistance level.Price is close to a resistance level — where a move often stalls. Example: Near a resistance level is where you'd take profit on a long, or scout a short expecting a rejection. |
Filter slots
- Entry filters (F_1…F_5)
Up to five conditions that must all pass before the bot opens a position. Empty slots are ignored.
- Martingale filters (1./2. M_F.)
Extra conditions checked before adding to a losing position on a martingale rung.
- Trailing filters (1./2. TS_F.)
Conditions that gate when the trailing stop is allowed to tighten.