Dark Theme
Light Theme
Welcome to NexusFi: the best trading community on the planet, with over 200,000 members Sign Up Now for Free
Genuine reviews from real traders, not fake reviews from stealth vendors
Quality education from leading professional traders
We are a friendly, helpful, and positive community
We do not tolerate rude behavior, trolling, or vendors advertising in posts
We are here to help, just let us know what you need
You'll need to
register in order to view the content of the threads and start contributing to our community.
It's free for basic access, or support us by becoming an Elite Member -- discounts are available after registering.
-- Big Mike, Site Administrator
(If you already have an account, login at the top of the page)
Updated March 11, 2026
Top Posters
looks_one
mk77ch
with 71 posts (321 thanks)
looks_two
trymph
with 32 posts (29 thanks)
looks_3
zt379
with 22 posts (16 thanks)
looks_4
brettji
with 20 posts (17 thanks)
Best Posters
looks_one
mk77ch
with 4.5 thanks per post
looks_two
trymph
with 0.9 thanks per post
looks_3
brettji
with 0.9 thanks per post
looks_4
zt379
with 0.7 thanks per post
trending_up
594,076 views
thumb_up
496 thanks given
group
175 followers
forum
350 posts
attach_file
140 attachments
September 3rd, 2024, 08:58 PM
los angeles
Experience: Master
Platform: NinjaTrader
Broker: Rithmic
Trading: Futures
Frequency: Daily
Posts: 9 since Jun 2023
Thanks Given: 5
Thanks Received: 3
Added this to colorize the tape strip on extreme / min/max delta
HTML Code:
double percentage_max = (currBarItem.dtc / currBarItem.dth) * 100;
double percentage_min = (currBarItem.dtc / currBarItem.dtl) * 100;
double percent = 95;
bool extremeNegativeDelta = percentage_min > percent;
bool extremePositiveDelta = percentage_max > percent;
if(currBarItem.dtc > 0.0)
{
askBrush.Opacity = opacity;
RenderTarget.FillRectangle(rect, extremePositiveDelta ? maxDeltaAskBrush : askBrush);
}
else if(currBarItem.dtc < 0.0)
{
bidBrush.Opacity = opacity;
RenderTarget.FillRectangle(rect, extremeNegativeDelta ? maxDeltaBidBrush : bidBrush);
}
else
{
ntlBrush.Opacity = opacity;
RenderTarget.FillRectangle(rect, ntlBrush);
}
September 4th, 2024, 01:10 PM
Seattle, WA
Platform: NinjaTrader8
Trading: Futures
Frequency: Daily
Duration: Minutes
Posts: 73 since May 2024
Thanks Given: 15
Thanks Received: 50
morpheus0
Added this to colorize the tape strip on extreme / min/max delta
HTML Code:
double percentage_max = (currBarItem.dtc / currBarItem.dth) * 100;
double percentage_min = (currBarItem.dtc / currBarItem.dtl) * 100;
double percent = 95;
bool extremeNegativeDelta = percentage_min > percent;
bool extremePositiveDelta = percentage_max > percent;
if(currBarItem.dtc > 0.0)
{
askBrush.Opacity = opacity;
RenderTarget.FillRectangle(rect, extremePositiveDelta ? maxDeltaAskBrush : askBrush);
}
else if(currBarItem.dtc < 0.0)
{
bidBrush.Opacity = opacity;
RenderTarget.FillRectangle(rect, extremeNegativeDelta ? maxDeltaBidBrush : bidBrush);
}
else
{
ntlBrush.Opacity = opacity;
RenderTarget.FillRectangle(rect, ntlBrush);
}
I can do a little with TOS scripting, but Ninja I suck at. I'm not sure how to even add this to the build I have but will try. 👍
September 4th, 2024, 06:21 PM
los angeles
Experience: Master
Platform: NinjaTrader
Broker: Rithmic
Trading: Futures
Frequency: Daily
Posts: 9 since Jun 2023
Thanks Given: 5
Thanks Received: 3
RobWa
I can do a little with TOS scripting, but Ninja
I suck at. I'm not sure how to even add this to the build I have but will try. 👍
HTML Code:
[XmlIgnore]
public Brush maxDeltaBidColor
{ get; set; }
[Browsable(false)]
public string maxDeltaBidColorSerializable
{
get { return Serialize.BrushToString(maxDeltaBidColor); }
set { maxDeltaBidColor = Serialize.StringToBrush(value); }
}
[XmlIgnore]
public Brush maxDeltaAskColor
{ get; set; }
[Browsable(false)]
public string maxDeltaAskColorSerializable
{
get { return Serialize.BrushToString(maxDeltaAskColor); }
set { maxDeltaAskColor = Serialize.StringToBrush(value); }
}
You need to add two new colors and brushes. Open up the script in ninja editor and compile it.
In the original script look for where the brushes and colors are set.
HTML Code:
maxDeltaBidColor = Brushes.Magenta;
maxDeltaAskColor = Brushes.DodgerBlue;
September 5th, 2024, 09:20 PM
ITAJAI SC/BRAZIL
Experience: Intermediate
Platform: NinjaTrader
Broker: Clear Corretora
Trading: DOLFUT, WINFUT
Posts: 341 since Jun 2014
Thanks Given: 1,356
Thanks Received: 229
morpheus0
HTML Code:
public ConcurrentDictionary<double, RowItem> aggregateByTicks( NinjaScriptBase ninja, int size ) {
ConcurrentDictionary<double, RowItem> aggregatedRowItems = new ConcurrentDictionary<double, RowItem> ();
double rowCount = this.rowItems.Count / size;
RowItem currentItem = null;
List< KeyValuePair<double, RowItem> > currentBatch = new List< KeyValuePair<double, RowItem> >();
var sorted = this.rowItems.OrderByDescending( x => x.Key );
var i=0;
var count = sorted.Count();
var itemsProcessed = 0;
foreach(KeyValuePair<double, RowItem> ri in sorted)
{
++i;
currentBatch.Add( ri );
if( currentBatch.Count == size || i == count ) {
double closeAvg = ninja.Instrument.MasterInstrument.RoundToTickSize( currentBatch.Average( x=> x.Key ) );
double ask = currentBatch.Sum( x=> x.Value.ask ) ;
double bid = currentBatch.Sum( x=> x.Value.bid ) ;
double vol = currentBatch.Sum( x=> x.Value.vol );
currentBatch.OrderBy(x => x.Key);
itemsProcessed += currentBatch.Count;
currentBatch.Clear();
aggregatedRowItems.GetOrAdd( closeAvg, new RowItem(vol, ask, bid ) );
}
}
return aggregatedRowItems;
}
Here's some code to aggregate ticks - useful for NQ/YM -- a setting of 4 ticks per close should perform decently. Makes it so the text size doesnt get so small on these instruments.
I would like to give it a shot.. but where should I paste this snipet? Between lines X and Y maybe?
Thanks!
September 5th, 2024, 10:42 PM
los angeles
Experience: Master
Platform: NinjaTrader
Broker: Rithmic
Trading: Futures
Frequency: Daily
Posts: 9 since Jun 2023
Thanks Given: 5
Thanks Received: 3
MrTrader
I would like to give it a shot.. but where should I paste this snipet? Between lines X and Y maybe?
Thanks!
In BarData.cs you need to add the function aggregateByTicks;
I put it under line 200 addVol
THAN:
in FootPrintV2.cs:
private void drawFootPrint(ChartControl chartControl, ChartScale chartScale)
Around line 4012 ish where the main foreach is done replace it with this:
HTML Code:
var items = ticksPerRow > 1 ? currBarItem.aggregateByTicks(this, ticksPerRow) : currBarItem.rowItems;
foreach(KeyValuePair<double, NinjaTrader.NinjaScript.Indicators.Infinity.BarData.RowItem> ri in items)
{
September 21st, 2024, 05:39 PM
Los Angeles
Experience: Beginner
Platform: TradingView
Trading: MNQ + MES
Posts: 4 since Feb 2021
Thanks Given: 3
Thanks Received: 1
Does anyone know why the per bar volume and per bar delta values of FootPrint V2 match the values of a volumetric chart of the same bar interval if the bars are time-based (minute/second), but on range/tick/volume bars both volume and delta differ?
It's also a reported issue on Ninja's own example of using a 1 tick data series in "BuySellVolumeOneTick"
September 25th, 2024, 02:10 PM
Seattle, WA
Platform: NinjaTrader8
Trading: Futures
Frequency: Daily
Duration: Minutes
Posts: 73 since May 2024
Thanks Given: 15
Thanks Received: 50
I'm digging a little more into this indicator and notice the settings for a candle outline. It looks like you can turn on an option to outline the candle with a color when it closes with a positive or negative delta. So, you can have a green candle with a red outline if it finishes up, but has a negative delta. Any chance that this information could be added to the bardata.cs at a simple 1 or -1 the help with an auto trading strategy? I just subscribed to Quagensia's no code strategy builder and I think I'd be able to use this to enter trades.
Capture7
November 23rd, 2024, 12:03 AM
Denver Colorado
Experience: Intermediate
Platform: NT8
Trading: Futures
Posts: 3 since Dec 2022
Thanks Given: 0
Thanks Received: 0
Hi there,
So, I'm a bit perplexed. I downloaded the indicator and when I load the FPv2 and BarData on my chart I get nothing but plain chart. I've never had this issue come up with any other indicator. Has anyone else experienced this or know of a fix?
November 23rd, 2024, 01:30 AM
Chicago US
Experience: Intermediate
Platform: NinjaTrader
Trading: CL GC
Posts: 31 since May 2016
Thanks Given: 6
Thanks Received: 16
It could be that you have not tick replay activated.
November 23rd, 2024, 03:17 PM
Denver Colorado
Experience: Intermediate
Platform: NT8
Trading: Futures
Posts: 3 since Dec 2022
Thanks Given: 0
Thanks Received: 0
Belltalks
It could be that you have not tick replay activated.
I do have tick replay checked.
Last Updated on March 11, 2026