Announcement

Collapse

Looking for a User App or Add-On built by the NinjaTrader community?

Visit NinjaTrader EcoSystem and our free User App Share!

Have a question for the NinjaScript developer community? Open a new thread in our NinjaScript File Sharing Discussion Forum!
See more
See less

Partner 728x90

Collapse

Tick ​​to tick problem

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Tick ​​to tick problem

    Is there a way to know how many ticks happened in a one minute bar?

    #2
    Hello 7robert,

    Thank you for your reply.

    There's a few different approaches you could take to get the number of ticks in a 1 minute bar. The simplest would likely be to run the script OnEachTick, and increment a counter on each iteration through On Bar Update, resetting the counter on the first tick of the next bar, however, this would only function in real time, unless you enable Tick Replay on the chart. Here's a basic example:

    Code:
    namespace NinjaTrader.NinjaScript.Indicators
    {
    public class CountTicksInMinuteBarExample : Indicator
    {
    private int Counter;
    private int PriorCount;
    protected override void OnStateChange()
    {
    if (State == State.SetDefaults)
    {
    Description = @"Enter the description for your new custom Indicator here.";
    Name = "CountTicksInMinuteBarExample";
    Calculate = Calculate.OnEachTick;
    IsOverlay = true;
    DisplayInDataBox = true;
    DrawOnPricePanel = true;
    DrawHorizontalGridLines = true;
    DrawVerticalGridLines = true;
    PaintPriceMarkers = true;
    ScaleJustification = NinjaTrader.Gui.Chart.ScaleJustification.Right;
    //Disable this property if your indicator requires custom values that cumulate with each new market data event.
    //See Help Guide for additional information.
    IsSuspendedWhileInactive = true;
    Counter = 0;
    PriorCount = 0;
    }
    else if (State == State.Configure)
    {
    }
    }
    
    protected override void OnBarUpdate()
    {
    
    if(!Bars.IsTickReplay)
    {
    Draw.TextFixed(this, "MyTextFixed", "This indicator requires tick replay to function. Please turn this on for the chart.", TextPosition.BottomLeft);
    return;
    }
    
    if (IsFirstTickOfBar)
    {
    PriorCount = Counter;
    Counter = 1;
    if(CurrentBar != 0)
    {
    Draw.Text(this, "myText"+ CurrentBar, PriorCount + " Ticks", 1, High[1] + (2 * TickSize), Brushes.White);
    }
    }
    else
    {
    Counter++;
    }
    }
    }
    }
    Please let us know if we may be of further assistance to you.
    Kate W.NinjaTrader Customer Service

    Comment

    Latest Posts

    Collapse

    Topics Statistics Last Post
    Started by Mindset, 05-06-2023, 09:03 PM
    10 responses
    261 views
    0 likes
    Last Post NinjaTrader_BrandonH  
    Started by michi08, 10-05-2018, 09:31 AM
    5 responses
    741 views
    0 likes
    Last Post NinjaTrader_ChelseaB  
    Started by The_Sec, Today, 02:29 PM
    0 responses
    2 views
    0 likes
    Last Post The_Sec
    by The_Sec
     
    Started by tsantospinto, 04-12-2024, 07:04 PM
    4 responses
    62 views
    0 likes
    Last Post aligator  
    Started by sightcareclickhere, Today, 01:55 PM
    0 responses
    1 view
    0 likes
    Last Post sightcareclickhere  
    Working...
    X