DISCLAIMER: Nothing in this article constitutes financial or trading advice. All content is educational and informational only, as outlined in each client's agreement with Vector Algorithmics. Any modification of settings or parameters is made at the client's sole discretion and responsibility.
Category: Strategy Types | Last Updated: May 2026
GQZeroLimit is a multi-entry execution strategy for NinjaTrader. Once a directional trade setup is identified, GQZeroLimit manages it end-to-end — entries, take-profits, stop-loss, and tiered breakeven rules — as a single coordinated position, with configurable controls at every stage.
This guide documents every field on the GQZeroLimit strategy properties panel, plus the NinjaTrader strategy-level parameters (Section 4) and the risk architecture and account-size guidance (Section 5). If you're here to size positions to your account or to understand the maximum loss per trade, jump straight to Section 5.
If the strategy is loaded with the default settings shipped in this file and run as-is, it operates in Pure GQ Mode (no GFPB market entries). Three GQ limit positions are armed (Pos 1, Pos 2, Pos 3 = 1 contract each; Pos 4 = 0), so a maximum of 3 contracts can fill on a single signal. The TP ladder targets 90 / 50 / 50 points from the position-average entry, exiting one contract at each level.
On MNQ ($2 / point), under default settings:
On NQ ($20 / point), multiply the figures above by 10. Detailed risk math and recommended account-size to position-count mappings are in Section 5 (Risk Architecture).
CRITICAL: Do not run GQZeroLimit alongside GFPB 2.1C on the same trading account. Both products contain an active GFPB entry layer; running them together produces doubled exposure on the same signal.
In NinjaTrader's strategy properties panel, GQZeroLimit groups its settings into the sections listed below. The numeric prefix on each section name is what the panel displays.
NOTE: Two operating modes are supported. Pure GQ Mode sets q1 = q2 = 0 in Section 1, which disables the GFPB market entries; only the GQ limit layer trades. Hybrid Mode raises q1 (and optionally q2) to a positive integer, adding GFPB market-order entries on top of the GQ limit layer.
NOTE: Inside Section 2 the strategy panel uses
-----separator rows (no labels) between the master controls, the position layer, the TP ladder, and the tiered breakeven block. The labelled sub-headers used in this guide (Master controls, Position layer, TP ladder, Tiered breakeven) are documentation labels for those separator regions and are not displayed in NinjaTrader. The only labelled sub-section that appears inside Section 2 in the panel is 2c. Global BreakEven.
The tables below list every field exposed in the strategy properties panel, in the order it appears. Display names match the panel exactly. Values shown are starting recommendations; tune to your account size and risk profile.
This is the single shared stop-loss used by every fill on the trade. All open contracts exit together when this stop is hit.
| Setting | Value / Range | Notes |
|---|---|---|
| Ratio | 1 | Stop-loss scaling ratio. Leave at 1 for standard sizing. Values > 1 widen the shared stop proportionally (e.g., 1.5 = SL 1.5× farther from entry, lower hit-rate but larger drawdown when hit). Values < 1 tighten the stop (e.g., 0.5 = SL half the distance, higher hit-rate but reduced room for normal pullback). 0 is not valid. |
| Enable Limit SL | ON | Master switch for the shared stop. Must be ON for the strategy to operate safely. If turned OFF, no shared stop-loss is placed and open positions remain exposed until a TP fills, the daily session-close exit fires, or you flatten manually — effectively unlimited risk per trade. Do not run live with this OFF. |
| Limit Points | 125 | Distance of the shared stop, in points. |
| Enable Stop Move FailSafe | ON | Safety check on stop relocation. Leave ON. If turned OFF, the strategy will not re-validate stop moves performed by the BE blocks (Section 2.d, 2c, 2d), so a malformed BE move can leave the trade without a valid stop or with a stop that has been pushed past current price. Always run with this ON. |
These fields control the optional GFPB market-order entries (q1 / q2) and a separate trailing-stop / breakeven block that applies to those entries only. In Pure GQ Mode, set q1 = q2 = 0 and ignore the trailing and BE rows below — they have no effect when no GFPB entries are firing.
| Setting | Value / Range | Notes |
|---|---|---|
| q1 | 0 | Number of contracts on the first GFPB market entry. q1 is the equivalent of TP1 on a regular GFPB 2.1 entry — set it to a positive integer to fire that GFPB market entry on top of the GQ limit layer (Hybrid Mode). Leave at 0 for Pure GQ Mode. |
| TP1 (points) | 50 | Take-profit distance for the first GFPB entry. Only used when q1 > 0. |
| q2 | 0 | Number of contracts on the second GFPB market entry. q2 is the equivalent of TP2 on a regular GFPB 2.1 entry — set it to a positive integer to fire a second GFPB market entry. Leave at 0 for Pure GQ Mode. |
| TP2 (points) | 80 | Take-profit distance for the second GFPB entry. Only used when q2 > 0. |
| Enable Trail | OFF | Master switch for the GFPB-side trailing stop. When ON, the strategy continuously updates the GFPB-side stop as price moves favorably. |
| Trailing Mode | BreakEven | Choose: BreakEven, Normal_Trailing, or Step_Trailing. — BreakEven: a single one-shot move; once price is Trail Start points in profit, the stop is moved to entry + BE Offset and stays there. — Normal_Trailing: the stop trails price continuously at Trail Distance behind the current price, updating on every favorable tick (highest call volume; use carefully on multiple accounts). — Step_Trailing: the stop trails in fixed increments — it only moves forward when price has advanced by Trailing Step beyond the previous stop level (lower call volume than Normal_Trailing). |
| Trail Mode | Points | Unit for trail values: Ticks or Points. |
| Trail Start | — | Distance from entry before the trail activates. |
| Trail Distance | — | How far behind price the trailing stop sits once active. |
| Trailing Step | — | Step size used in Step_Trailing mode. |
| BE Mode | Points | Unit for the GFPB-side BE values: Ticks or Points. |
| BE Trigger | — | Distance price must move favorably before BE activates on GFPB entries. |
| BE Offset | — | Where the GFPB stop is moved to once BE is triggered. |
NOTE: Be cautious enabling Enable Trail when running this strategy on multiple accounts simultaneously. Each trail update issues a stop-modification call to NinjaTrader; with several accounts active, the combined call rate can hit NinjaTrader's order-call limit and cause subsequent updates (or new orders) to be rejected. If you must run trail across multiple accounts, prefer BreakEven mode (single move) or Step_Trailing with a generous step, never tick-by-tick Normal_Trailing.
NOTE: The Trailing and BE fields in this section apply to the GFPB main entries only. The GQ limit layer has its own independent BE block in Section 2.
This is the core block. It controls the GQ limit-order layer, the TP ladder for those fills, and the tiered breakeven rules. In the NinjaTrader panel, the four groups below are separated by ----- rows (no headings). Only Section 2c · Global BreakEven (further down) appears as a labelled sub-section.
| Setting | Value / Range | Notes |
|---|---|---|
| Enable GQ Entries | ON | Master switch. Must be ON for any GQ limit orders to be placed. |
| Cancel After N Candles | 3 – 6 | Unfilled GQ limit orders are cancelled after this many 15-min candles. |
| Lock Fib/Pullback At Entry | OFF | Controls how the pullback reference is anchored. When OFF (default), the Fib / pullback reference is recomputed as the swing develops, so the GQ limit prices can re-anchor as new highs/lows form. When ON, the Fib / pullback reference is locked at the moment the first qualifying entry condition is met and does not move thereafter, so all four GQ limit prices stay fixed. Lock ON gives more predictable, static fill prices; Lock OFF gives the fills a chance to follow a developing swing. Leave OFF unless instructed otherwise. |
| Skip GQ Entries Within N Pts of SL (0=off) | 15 | Suppresses any GQ fill that would land closer than N points to the shared stop. 0 disables the check. |
| Enable Cancel GQ At Virtual GFPB TP | ON | When ON, unfilled GQ limit orders cancel as price approaches the GFPB virtual TP level. |
| GFPB Virtual TP Level (pts from GFPB entry) | 5 | Proximity buffer (in points) used by the cancel-near-TP rule above. |
NOTE: In the NinjaTrader panel this group is not labelled "Position layer" — it appears as a
-----separator row only. The heading is used here for documentation.
Each position tier has its own contract count (Qty) and pullback depth (Entry %). A tier with Qty = 0 is disabled. Pos 4 is off by default; activate it only if a fourth pullback layer is desired.
NOTE about Pos Entry %: The Entry % is a fixed regressive percentage measured from the entry reference point (the swing point used by the Fib / pullback engine), not a Fibonacci ratio — e.g., Pos 2 Entry % = 20 means Pos 2 is placed 20% deeper into the pullback than Pos 1, irrespective of any standard Fib level. The default values are Pos 1 = 2%, Pos 2 = 20%, Pos 3 = 30%, Pos 4 = 0% (disabled). Increasing a tier's Entry % moves that limit deeper into the pullback (lower hit-rate but better average price when filled); decreasing it moves the limit closer to the signal (higher hit-rate, less DCA benefit).
| Setting | Value / Range | Notes |
|---|---|---|
| Pos 1 Qty | 1 | Contracts on the first GQ entry. Set to 0 to disable this position. |
| Pos 1 Entry % | 2 | Pullback depth (default 2%). Lower = closer fill, higher hit rate. |
| Pos 2 Qty | 1 | Contracts on the second GQ entry. Set to 0 to disable. |
| Pos 2 Entry % | 20 | Pullback depth for Pos 2 (default 20%). |
| Pos 3 Qty | 1 | Contracts on the third GQ entry. Set to 0 to disable. |
| Pos 3 Entry % | 30 | Pullback depth for Pos 3 (default 30%). |
| Pos 4 Qty | 0 | Disabled by default. Set to a positive value if a fourth tier is desired. |
| Pos 4 Entry % | 0 | Pullback depth for Pos 4 (only used if Pos 4 Qty > 0). |
NOTE: The total number of contracts that can fill is the sum of Pos 1–4 Qty. The total of TP1 Qty + TP2 Qty + TP3 Qty must equal the maximum filled-contract count, otherwise residual contracts will not have a TP assigned.
NOTE: In the NinjaTrader panel this group is not labelled "TP ladder" — it appears as a
-----separator row only. The heading is used here for documentation. Note also that the only labelled sub-section inside Section 2 in the panel is Section 2c · Global BreakEven (below).
Take-profit distances are measured in points from the position-average price. Each TP exits the number of contracts specified by its Qty field.
| Setting | Value / Range | Notes |
|---|---|---|
| TP1 Qty | 1 | Number of contracts that will exit at the TP1 distance. |
| TP1 Points | 90 | TP1 distance in points (measured from the position-average price). |
| TP2 Qty | 1 | Number of contracts that will exit at the TP2 distance. |
| TP2 Points | 50 | TP2 distance in points. |
| TP3 Qty | 1 | Number of contracts that will exit at the TP3 distance. |
| TP3 Points | 50 | TP3 distance in points. |
NOTE: In the NinjaTrader panel this group is not labelled "Tiered breakeven" — it appears as a
-----separator row only. The heading is used here for documentation.
As price moves favorably, the shared stop can be moved in stages. Each tier has a trigger distance (how far price must move before that tier fires) and an offset (where the stop is moved to). Tiers fire in sequence; once a higher tier fires, lower tiers are ignored, and the stop only moves to more favorable positions.
| Setting | Value / Range | Notes |
|---|---|---|
| Enable GQ BE | ON | Master switch for the GQ tiered breakeven block (BE1 / BE2 / BE3). |
| BE1 Trigger (points) | 34 | Favorable distance required before BE1 fires. |
| BE1 Offset (points) | -75 | Where the stop is moved when BE1 fires. Negative values keep the stop in loss territory; positive values push it into profit. |
| BE2 Trigger (points) | 49 | Favorable distance required before BE2 fires. |
| BE2 Offset (points) | 5 | Where the stop is moved when BE2 fires. |
| BE3 Trigger (points) | 60 | Favorable distance required before BE3 fires. Set to 0 to keep BE3 inactive. |
| BE3 Offset (points) | 30 | Where the stop is moved when BE3 fires. |
NOTE: Offsets are signed. A negative BE1 offset (for example, –75) keeps the stop in loss territory but reduces the maximum loss; positive offsets move the stop into profit (free-trade territory). Setting a tier's Trigger to 0 effectively keeps that tier inactive.
A single-shot BE rule that fires on any GQ TP fill (TP1, TP2, or TP3). If enabled, this overrides nothing — it works alongside the tiered BE in the Tiered breakeven sub-section above and the TP1-fill rule in Section 2d below.
| Setting | Value / Range | Notes |
|---|---|---|
| Enable Global BE | OFF | When ON, any GQ TP fill triggers a single BE move on the remainder of the position. |
| Global BE Offset (Points from Full Position DCA Level) | 0 | Stop offset applied when Global BE fires. Negative values keep the stop in loss; positive values move it into profit. |
A single-shot BE rule that fires specifically when the first TP1 contract fills. Useful if you want a different stop-move behavior on the TP1 event versus the more general Global BE.
| Setting | Value / Range | Notes |
|---|---|---|
| Move Stop After Any TP1 Fill | OFF | When ON, the first TP1 fill moves the stop on remaining contracts. |
| TP1 Stop Offset (Points from Full Position DCA Level) | 15 | Stop offset applied when this BE rule fires. |
Top-level direction toggles and per-day filters. Each weekday has a master toggle plus separate buy and sell sub-toggles. To trade longs only on Mondays: set Monday = ON, Enabled buy Monday = ON, Enabled sell Monday = OFF.
NOTE: The weekday master toggle (Monday, Tuesday, etc.) is the deciding switch for that day. If the weekday master toggle is OFF, the strategy will not fire on that day regardless of the buy / sell sub-toggles — turning Enabled buy Monday or Enabled sell Monday ON has no effect when Monday itself is OFF. Always confirm the weekday master is ON before relying on the buy / sell sub-toggles for that day.
| Setting | Value / Range | Notes |
|---|---|---|
| Long | ON | Enable long-direction signals. |
| Short | ON | Enable short-direction signals. |
| Monday | ON | Master toggle for trading on Mondays. If OFF, no entries fire Monday regardless of buy/sell sub-toggles. |
| Enabled buy Monday | ON | Allow long entries on Mondays. Requires Monday = ON. |
| Enabled sell Monday | ON | Allow short entries on Mondays. Requires Monday = ON. |
| Tuesday | ON | Master toggle for trading on Tuesdays. |
| Enabled buy Tuesday | ON | Allow long entries on Tuesdays. Requires Tuesday = ON. |
| Enabled sell Tuesday | ON | Allow short entries on Tuesdays. Requires Tuesday = ON. |
| Wednesday | ON | Master toggle for trading on Wednesdays. |
| Enabled buy Wednesday | ON | Allow long entries on Wednesdays. Requires Wednesday = ON. |
| Enabled sell Wednesday | ON | Allow short entries on Wednesdays. Requires Wednesday = ON. |
| Thursday | ON | Master toggle for trading on Thursdays. |
| Enabled buy Thursday | ON | Allow long entries on Thursdays. Requires Thursday = ON. |
| Enabled sell Thursday | ON | Allow short entries on Thursdays. Requires Thursday = ON. |
| Friday | ON | Master toggle for trading on Fridays. |
| Enabled buy Friday | ON | Allow long entries on Fridays. Requires Friday = ON. |
| Enabled sell Friday | ON | Allow short entries on Fridays. Requires Friday = ON. |
These are the standard NinjaTrader strategy-level parameters at the bottom of the properties panel (outside of the GQZeroLimit-specific sections). They must be set as shown for the strategy to behave correctly.
| Setting | Value / Range | Notes |
|---|---|---|
| Calculate | On bar close | Required. Do not use On each tick or On price change. |
| Fill limit orders on touch | OFF | Required setting for accurate behavior of the GQ limit layer. |
| Slippage | 0 | Standard. |
| Exit on session close | ON, 30 seconds | All open positions exit ≈30 seconds before the session close. |
| Stop & target submission | Per entry execution | Required so that each fill receives its own paired bracket. |
| Entries per direction | 10 | NinjaTrader-level safety cap on the number of entries the strategy can submit per direction during the session. With the GQZeroLimit defaults (3 GQ positions, no GFPB market entries) the strategy is nowhere near this cap in normal operation. Do not lower this value — setting it below the sum of Pos 1–4 Qty (plus q1 + q2 in Hybrid Mode) will cause NinjaTrader to silently drop later entry orders, breaking the layered fill logic. Leave at 10. |
This section quantifies the risk envelope of the strategy under default settings, and gives suggested account-size to position-count mappings. Use it to size positions to your account's daily loss limit (DLL) before going live.
| Scenario | Max Loss | Notes |
|---|---|---|
| 1 position filled (Pos 1 only) | $250 | 125 pts × $2 / pt on MNQ. |
| 2 positions filled (Pos 1 + 2) | $500 | 250 pts of total exposure. |
| 3 positions filled (Pos 1 + 2 + 3) | $750 | 375 pts of total exposure. |
| BE1 active at -75 offset (3 pos) | ≈ $450 | Approximate; exact figure depends on fill prices. |
| BE2 active at +5 offset (3 pos) | Small profit | Free-trade territory once BE2 has triggered. |
| Account / Setup | DLL Headroom | Notes |
|---|---|---|
| $50K eval, $2,500 DLL, 3 positions | ≈ 3.0× | Comfortable: max-loss × 3 fits within DLL. |
| $25K eval, $1,500 DLL, 3 positions | ≈ 2.0× | Borderline. Recommended for evals only. |
| Apex PA, $1,500 DLL, 3 positions | ≈ 2.0× | Too tight for live capital — recommend running 2 positions max. |
| Apex PA, $1,500 DLL, 2 positions | ≈ 3.0× | Acceptable headroom for a PA on Apex. |
NOTE: Figures above are for MNQ ($2 / point). For NQ, multiply by 10. The right number of GQ positions for any account is the number whose maximum loss is comfortably absorbed by the account's daily loss limit (DLL); 3× headroom is a reasonable target.
Two reference configurations are provided as starting points. Both run Pure GQ Mode (Section 1: q1 = q2 = 0).
NOTE: These values are reasonable starting points and remain subject to ongoing tuning. Adjust gradually, and validate any change in simulation before deploying to a live account.
If you only need to find a setting fast, here is the panel order top-to-bottom:
For any question about specific settings, sizing, or behavior under different market conditions, open a support ticket and a team member will help.