I am looking to confirm Tickblaze’s true tick-event callback for Strategies . I am currently doing intra-bar updates to Trailing stop loss. This is on a 5min chart, so I don't want to way to update until bar close, and prefer tick based updates.. Need confirmation on how to do that and examples would be helpful.
Thank you.
Indicator C# Scripts
confirm Tickblaze’s true tick-event callback for Strategies for intrabar updates
Can an indicator be setup to access multi-symbol indicator patterns?
I have an indicator I want to convert that relies on pulling underlying stock symbols that are part of an index to trade the index. So, the chart would be, say NQ, but I want to assess based on the top 10-15 stocks that make up NQ as the biggest influences.
I am working on converting an open source ninjascript indicator, and the strategy I wrote based on it. I would really like to get this implemented in Tickblaze, but have not found any examples of multi-symbol coding.
New Versions of Tickblaze Free Community Indicators
We have published new versions of all the free Community indicators from Tickblaze.
This was needed due to a change in the the Tickblaze platform as of build # 2.0.0.97-RC.1081 which was release March 30 ,2026. These new versions should work now.
Each individual post was updated with the new version of the indicator code.
However, for your convenience, here are individual links to each one of those posts (just open the link, and download the new zip file, then import into Tickblaze):
ATRForecaster:
AtrTrailingStops:
BarCloseMarker:
BigRoundNumbers:
FairValueGaps:
GapFinder:
HtfAverages:
LeadersAndLaggers:
MtfFilter:
Session Indicator:
SwingStructure:
VMLean:
Zero repainting TB_PriceAction
TB_PriceAction
Platform: Tickblaze 2 · Type: Overlay Indicator · Language: C# / .NET 10
What it does
TB_PriceAction automatically labels every confirmed swing high and swing low on your price chart with a market structure tag. At a glance you can see whether the market is building higher highs and higher lows (uptrend), lower highs and lower lows (downtrend), or forming a potential reversal via double tops and double bottoms.
Six labels:
Label
Full name
Meaning
HH
Higher High
Swing high above the previous swing high — bullish
LH
Lower High
Swing high below the previous swing high — bearish
DT
Double Top
Two consecutive swing highs at the same price level — potential reversal
HL
Higher Low
Swing low above the previous swing low — bullish
LL
Lower Low
Swing low below the previous swing low — bearish
DB
Double Bottom
Two consecutive swing lows at the same price level — potential reversal
Parameters
Hover over any parameter in the settings panel to see a full description — every field has an inline tooltip built in.
Parameter
Default
Description
Strength
3
How many bars to the left and right the swing bar must dominate. Strength = 3 means the bar must be the extreme of 7 consecutive bars. Higher = fewer, more significant swings.
Text Offset (ticks)
3
Vertical gap between the label and the swing price. Increase if labels overlap with wicks.
DTB Strength (%)
15
Tolerance for Double Top / Double Bottom, as a percentage of ATR(14). Two highs within 15% of ATR of each other → labelled DT, not HH/LH.
Font
Arial 12
Font for all chart labels.
HH / HL Color
Green
Color for bullish structure labels.
LH / LL Color
Red
Color for bearish structure labels.
DT / DB Color
Yellow
Color for double top / double bottom labels.
Technical highlights
✦ Zero repainting Swing confirmation is shifted back Strength + 1 bars from the current bar. The algorithm only examines fully closed, historically frozen bars — never the forming candle. Once a label appears on the chart it will never move or disappear. This makes the indicator safe for strategy backtesting and live alert triggers.
✦ ATR-adaptive Double Top / Bottom detection Most indicators define a fixed tick tolerance for equality checks ("within 5 ticks = double top"). TB_PriceAction uses ATR(14) × DTBStrength% instead. On a volatile daily chart ATR may be 50 ticks; on a quiet 1-minute chart it may be 3. The same percentage threshold adapts automatically to both — no manual re-tuning when you switch timeframes or instruments.
✦ Optimised rendering Labels are computed once in Calculate() and stored in two internal lists — one for highs, one for lows. The OnRender() method does nothing but iterate those lists and skip anything outside the visible window. No search loops, no recalculation on every frame. Scrolling and zooming remain instant even on charts with thousands of bars.
✦ Clean state on reload All internal collections are fully cleared in Initialize(). If you change Strength, colors, or timeframe while the chart is live, the indicator resets instantly with no leftover labels, no duplicates, and no memory accumulation.
✦ Precise warmup The calculation starts after exactly ATR period (14) + Strength + 1 bars — the minimum mathematically required to have a valid ATR reading and a confirmed first swing. Not a single bar is wasted.
Strategy integration
TB_PriceAction exposes four hidden plots that any Tickblaze strategy can read directly:
HighType[i] → 1 = HH, -1 = LH, 2 = DT, 0 = no swing high this bar
LowType[i] → 1 = HL, -1 = LL, 2 = DB, 0 = no swing low this bar
SwingHighPrice[i] → price of the confirmed swing high (NaN if none)
SwingLowPrice[i] → price of the confirmed swing low (NaN if none)
Signals fire on the confirmation bar — the bar where the swing becomes mathematically certain, Strength + 1 bars after the actual swing peak/trough. This matches the no-repaint guarantee: by the time the strategy sees a non-zero value, all bars used to confirm it are already closed.
Example strategy usage:
var pa = Indicators.Get<TB_PriceAction>();
if ((int)pa.HighType[index] == -1) // Lower High just confirmed → bearish shift
if ((int)pa.LowType[index] == 1) // Higher Low just confirmed → bullish continuation
Works on any timeframe and instrument
Because the Double Top/Bottom tolerance scales with ATR, and because Strength is adjustable, TB_PriceAction requires no re-configuration between instruments or timeframes. A single set of defaults works sensibly on tick charts, Renko, 1-minute, and daily bars alike.
now with signals, non‑repainting Squeeze Momentum Indicator V2
new version!
What's included:
Two indicators in one package:
SqueezeMomentumIndicator V2 — subpanel histogram with squeeze dots
SMI Squeeze Signals — companion overlay for the price chart
What was improved in this version:
No-repaint signals — all signal logic reads only closed bars (
[index-1],[index-2]). Signals are stable from bar open and never move.Fixed false signals — neutral squeeze state (transitional) is now excluded from trigger logic. Only a true squeeze release fires a signal.
Real-time arrows — signals now render correctly on the live forming bar, not just on historical bars.
Subpanel arrows — entry and exit arrows anchored by pixel offset from the zero line, always visible regardless of histogram scale.
Price chart overlay —
SMI Squeeze Signalsis fully self-contained (no dependency on the subpanel indicator). Add it directly to the price chart, set the same BB/KC parameters, done.BuilderSignal plot — hidden series (
+1long entry,-1short entry,+2long exit,-2short exit) that strategies can read directly.
Open source. Use at your own risk.
I’ve built a non‑repainting Squeeze Momentum Indicator V2 for Tickblaze, based on John Carter’s TTM Squeeze (translated from LazyBear’s PineScript).!
It combines inline Bollinger Bands and Keltner Channels to detect squeeze states (+1 squeeze ON, 0 neutral, -1 squeeze OFF) and then applies an optimized O(1) linear regression on price/midpoint deltas to measure momentum.
All squeeze logic, running sums and regression state are stored per bar and only reference the previous bar, so both the squeeze dots and the momentum histogram are deterministic and do not repaint.
V2 adds a clear third “neutral / noSqz” dot color, a four‑color histogram showing accelerating vs decelerating bullish/bearish momentum, plus a hidden BuilderSignal series for strategies. BuilderSignal emits +1 / -1 when a squeeze fires with positive/negative momentum, and +2 / -2 on the first momentum peak/trough, making it easy to automate precise entries and exits around squeeze releases.
Enjoy!
non‑repainting AntoQQE Classic
I just updated indicators please download new version
Hey guys, I’ve ported the original AntoQQE Classic from NinjaTrader to Tickblaze as a fully non‑repainting QQE trend indicator. It uses a Wilder RSI, double‑smoothed ATR bands and a dynamic trailing stop (QQE Line) that flips between long and short bands to track trend direction.
All calculations are done per bar using stored series and only read from the previous closed bar, so the line, histogram and signals never repaint when you reload data or scroll the chart. The indicator outputs +1 / -1 / 0 signals for strategies (trend flip long, flip short, no signal) and can optionally draw long/short dots on the chart for easy visual confirmation.
You can tune RSI period, smoothing factor, QQE factor and threshold levels to control how sensitive the trend and histogram are to price swings.
Enjoy!
Mouse events, WPF buttons
Hi!
Anyone who knows about Mouse-Events for use in indikators for Tickblaze? I´m using C#.
Cannot find info on that in github or elsewhere.
Also I´m used to use own WPF buttons in Ninjascript. Cannot find any info how to do it in Tickblaze?
Thanks!
// Sami
More Strategy building
Not really, still learning. I built the macd crossover strategy from the github source files. Just as I did for the MACrossover. It performs identically to the installed macd crossover on the platform. Backtested with identical numbers.
My next goal is to use the Kinetic indicator I posted here in a crossover strategy.
Does anyone have a clue to offer as to how to use a custom indicator that is installed on the platform but not a stock tickblaze indicator, in a custom strategy. I know that I could just hard code it into the strategy but I would like to use a more elegant method.
Another way to say it, how do I make a custom indicator in one file visible to a strategy in a separate file.