Announcement

Collapse
No announcement yet.

Trouble getting 1-second historical bars

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

  • Trouble getting 1-second historical bars

    I’m having trouble with getting one-second historical bars. Here is my call to eSignal API:

    Ticker.get_RequestHistory( "ES #F", "1S", barType.btBARS, 10, -1, -1)

    I’m only interested in the latest 10 bars (10 seconds), but eSignal is returning thousands of bars: it appears to be returning all 1-second bars from midnight up to the present second. This is more than I want or need, and places a burden on my app. I tried altering the start and end time parameters in the function call, but it appears to have no effect. I’m running eSignal Version 7.5

    Any help would be appreciated.

    -Mikey

  • #2
    axiswest1,

    from what I gather seconds count as tick data and can only be downloaded in whole days.

    Paul

    Comment


    • #3
      Hi Mikey,

      We can reproduce this here and are investigating it as a possible bug. In the meantime, you can limit the results you get back by sending specific time parameters with your request. Start and end times are computed as:

      (number of hours * 60) + minutes

      For example, if start_time = 570 and end_time = 571, the request scans for data between 9:30AM and 9:31AM each day that applies to the request. You could then implement a loop and stop processing at 10 bars.

      Comment


      • #4
        I stand corrected.

        Paul

        Comment


        • #5
          Starr,

          Thanks for the explanation.

          As mentioned in my original post, I tried altering my start and end times, but it appears as if the API ignores these input parameters.

          I just tried the following call:

          Ticker.get_RequestHistory( "ES #F", "1S", barType.btBARS, 10, 570, 571)

          This gave me back 8435 bars. This executed at 9:56:51 AM Mountain Time. It took 10 seconds before OnBarsReceived was triggered: this is the amount of time it takes for the data to travel from the eSignal servers to my local DataManager. When I read the bar data out from the DataManager using Ticker.get_GetBar, I could do as you suggest, and only read the bars I want. However, this will not help with how long it takes for the full set of data to travel from the server to the DataManager at the time of the initial API call.

          Please test the start and end time functionality: it doesn’t seem to work for me at all. I tried the following call for retrieving 1-minute bars (i.e., not tick-based bars):

          Ticker.get_RequestHistory( "ES #F", "1", barType.btBARS, 10, 570, 580)

          This gave me back 10 bars, but it gave me the MOST RECENT 10 bars. Namely, I executed the call at 10:17 AM Mountain Time, and it gave me back bars from 10:08 AM to 10:17 AM. It appears as though the start and end time parameters have no effect whatsoever.

          As mentioned, I’m running eSignal Version 7.5. If this is my problem, please let me know. Otherwise it might be a bug on the server side.

          Mikey

          Comment


          • #6
            Hmmm...limiting the times for the request works fine with our VB sample. What development environment are you using?

            Comment


            • #7
              C#.NET using Visual Studio 2003 and .NET Framework 1.1

              -Mikey

              Comment

              Working...
              X