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

How can I get the current time of the broker (server) in the format "HH:mm:ss".

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

    How can I get the current time of the broker (server) in the format "HH:mm:ss".

    How can I get the current time of the broker (server) in the format "HH:mm:ss". When I get Time[0].ToString("HH:mm:ss") even using Calculate.OnEachTick, I only get hours and minutes, without seconds.

    #2
    Hello Goolden,

    Thank you for your post.

    What time frame are you running your script on, generally?

    For example, let's say I have an ES 12-19 15 minute chart, and I put this in On Bar Update:

    Print(Time[0].ToString("HH:mm:ss.FFF"));

    Assuming there's no secondary series or bars in progress checks, even if you set the script to calculate on each tick, this will just repeatedly print the closing time of the bar. This isn't the current time - Time[0] will always give you the closing time of the current bar, so even running on each tick that's not going to change.

    If you want to print what time each tick comes in you've got some options.

    System.DateTime.Now.TimeOfDay will print you the hours, minutes, seconds, and milliseconds.

    If you're interested in knowing when each tick came in, you can add a single tick data series in State == State.Configure and then print the time only when that series is being processed:

    Code:
                else if (State == State.Configure)
                {
                    AddDataSeries(BarsPeriodType.Tick,1);
                }
            }
    
            protected override void OnBarUpdate()
            {
                if(BarsInProgress ==1)
                {
                    Print(Time[0].ToString("HH:mm:ss.FFF")); // example result: 08:10:22.025; these results may vary depending on your data provider and how/if they timestamp the data.
                }
    
                Print(System.DateTime.Now.TimeOfDay); // example result: 08:10:22.1080620
            }
    Whether or not your provider timestamps the data on their end is listed in our help guide here:



    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 arvidvanstaey, Today, 02:19 PM
    4 responses
    11 views
    0 likes
    Last Post arvidvanstaey  
    Started by samish18, 04-17-2024, 08:57 AM
    16 responses
    61 views
    0 likes
    Last Post samish18  
    Started by jordanq2, Today, 03:10 PM
    2 responses
    9 views
    0 likes
    Last Post jordanq2  
    Started by traderqz, Today, 12:06 AM
    10 responses
    18 views
    0 likes
    Last Post traderqz  
    Started by algospoke, 04-17-2024, 06:40 PM
    5 responses
    48 views
    0 likes
    Last Post NinjaTrader_Jesse  
    Working...
    X