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

BarTimer

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

    BarTimer

    How do I change the position of this indicator to the top left of top right and bottom right

    Code:
    // Plot the time remaining message to the lower right hand corner of the chart
    if (Bars.Period.Id == PeriodType.Minute || Bars.Period.Id == PeriodType.Second)
    {
    if (DisplayTime())
    {
    if (timer != null && !timer.Enabled)
    timer.Enabled = true;
    TimeSpan barTimeLeft = Bars.GetTime(Bars.Count - 1).Subtract(Now);
    string timeLeft = (barTimeLeft.Ticks < 0 ? "00:00:00" : barTimeLeft.Hours.ToString("00") + ":" + barTimeLeft.Minutes.ToString("00") + ":" + barTimeLeft.Seconds.ToString("00"));
    graphics.DrawString("Time remaining = " + timeLeft, ChartControl.Font, textBrush, bounds.X + bounds.Width - textWidth, bounds.Y + bounds.Height - textHeight, stringFormat);
    }
    else
    graphics.DrawString(errorDisabled, ChartControl.Font, textBrush, bounds.X + bounds.Width - noConTextWidth, bounds.Y + bounds.Height - noConTextHeight, stringFormat);
    }
    else
    {
    graphics.DrawString(errorIntraday, ChartControl.Font, textBrush, bounds.X + bounds.Width - noTickTextWidth, bounds.Y + bounds.Height - noTickTextHeight, stringFormat);
    if (timer != null)
    timer.Enabled = false;
    }
    }
    #endregion
    }
    }
    Thanks
    Attached Files

    #2
    Hello geotabs,

    Thanks for your post.

    You would need to change theX and Y values in this graphics.Drawstring():

    graphics.DrawString("Time remaining = " + timeLeft, ChartControl.Font, textBrush, bounds.X + bounds.Width - textWidth, bounds.Y + bounds.Height - textHeight, stringFormat); }

    For reference, X 0 and Y 0 are the top left corner. Width is the width of the chart. Height is the height of the chart. As you know it currently prints in the bottom right so that it why the chart width and chart height are added to the X0 y0 position.

    Using bounds.X, bounds.Y + textHeight would put it at the top left

    Using bounds.X, bounds.Y + bounds.Height - textHeight, would put it at the bottom left (you would have to adjust up for the Ninjatrader copyright)

    using bounds.X+ bounds.Width - textWidth, bounds.Y would put it at the top right.

    I would suggest you make a copy of the BarTimer indicator and save it with a unique name and then make these mods to the copy, never the original.
    Paul H.NinjaTrader Customer Service

    Comment

    Latest Posts

    Collapse

    Topics Statistics Last Post
    Started by fx.practic, 10-15-2013, 12:53 AM
    5 responses
    5,406 views
    0 likes
    Last Post Bidder
    by Bidder
     
    Started by Shai Samuel, 07-02-2022, 02:46 PM
    4 responses
    98 views
    0 likes
    Last Post Bidder
    by Bidder
     
    Started by DJ888, Yesterday, 10:57 PM
    0 responses
    8 views
    0 likes
    Last Post DJ888
    by DJ888
     
    Started by MacDad, 02-25-2024, 11:48 PM
    7 responses
    160 views
    0 likes
    Last Post loganjarosz123  
    Started by Belfortbucks, Yesterday, 09:29 PM
    0 responses
    9 views
    0 likes
    Last Post Belfortbucks  
    Working...
    X