Why is IB's time 5 seconds behind the official time?

Discussion in 'Interactive Brokers' started by Big Game Hunter, Apr 29, 2008.

  1. You get what you deserve for hunting big game ... Poachers not liked over here.
     
    #51     Jun 1, 2008
  2. 377OHMS

    377OHMS

    Hmm. Here is a Matlab routine I wrote to pull time off the cesium beam standard at the Naval Observatory:

    function java_time

    % make the swing class names available as Matlab functions
    import javax.swing.*;

    % make the java.awt class names available as Matlab functions
    import java.awt.*;

    % create a java swing window with title
    frame = JFrame('US Naval Observatory Time');
    frame.setSize(350,78)

    % put the swing window in the center of the screen
    xsize = 350;
    ysize = 78;
    screen_size = get(0,'ScreenSize');
    x_position = screen_size(3)/2 - xsize/2;
    y_position = screen_size(4)/2 - ysize/2;

    % create label and text fields
    lfld = JLabel('Current Time');
    tfld = JTextField(9);

    % create layout
    time_panel = JPanel(BoxLayout.Y_AXIS);

    % add layout to java swing window
    time_panel.add(lfld);
    time_panel.add(tfld);

    % finalize the frame contents and position
    frame.getContentPane.add(time_panel);
    frame.setLocation(Point(x_position, y_position));

    % define a Java button
    Stop_Button = JButton('Stop');

    % add the button to the panel
    time_panel.add(Stop_Button);

    % prepare a handle structure of the window components
    handles.frame = frame;
    handles.Stop_Button = Stop_Button;

    % listen for action on the button
    set(Stop_Button, 'ActionPerformedCallback',{@StopCallback, handles});

    % show the frame
    frame.show

    % initialize break flag
    set(frame,'UserData',0);

    % Continuous time loop
    i=1;
    while i==1;

    % trigger on break flag to end program
    j = get(frame,'UserData');
    if j == 1
    break
    end

    % define the URL for US Naval Observatory Time page
    url =java.net.URL('http://tycho.usno.navy.mil/cgi-bin/timer.pl');

    % initiate a try/catch structure to trap errors when java.io times out
    try

    % read the URL
    link = openStream(url);
    parse = java.io.InputStreamReader(link);
    snip = java.io.BufferedReader(parse);

    % Read lines of html and parse the time string
    for k = 1:100
    snort(k) = readLine(snip);
    pflag = findstr(snort(k),'UTC');
    pfish = isempty(pflag);
    if pfish == 0;
    tdatl = char(snort(k));
    tdat = tdatl(pflag-9 : pflag+2);
    end
    end

    % clear the text field
    set(tfld,'Text','');

    % put the time string into the text field
    set(tfld,'Text', tdat);

    % let the user know if the page is unavailable (java io timed out)
    catch
    set(tfld,'Text','Unavailable');
    end

    % update about every 1 second
    pause(0.9)

    % end of main function
    end


    % callback funtion for button
    function StopCallback(hObject, eventdata, handles)

    % disable the button
    handles.Stop_Button.setEnabled(false);

    % show the frame with the disabled button for a second
    handles.frame.show;
    pause(1);

    % close the frame
    handles.frame.dispose;

    % set the break flag and return to the main function
    set(handles.frame,'UserData',1);
    return

    % end of code
     
    #52     Jun 1, 2008
  3. I thought that this thread was a joke until I clocked IB today. It was always about 5 seconds behind the official time. They have to have some type of edge with the clock 5 seconds behind like this??? I dunno.
     
    #53     Aug 14, 2008
  4. LOL.

    I read this thread and thought wtf ... oh no.

    So I checked and IB's time was 20 seconds out from my pc. Bloody Hell. They must be ripping me off.

    So I forced my pc to resynch with that atomic clock ... and ... damn it ... my pc was wrong and ib, bless their cotton socks, was ... RIGHT :)
     
    #54     Aug 15, 2008
  5. Im trading the ES now on IB and the damned thing is 5 seconds behind. Does IB have some computers that are taking advantage of poor me?
     
    #55     Aug 18, 2008
  6. def

    def Sponsor

    I'm not sure what server you are on but my TWS is tick for tick in sync with
    http://tycho.usno.navy.mil/simpletime.html

    Note: i've logged into both the US and HK servers via different TWS accounts and both are PERFECTLY in synch.

    While your comment may be sarcastic, I do think it's important to point out that, even if the clock is off by hours, when you hit transmit, orders are sent directly and immediately to the exchange. Server time is irrelevant in regards to the speed of order transmission.
     
    #56     Aug 18, 2008

  7. If your systems are so weak and have such a lame edge that 5 seconds affects them? Back to the drawing board.

    You strike me as a system trader who is not getting the same forward results as you have backtested (probably with too much optimization) so now you are looking for someone to blame.

    Either that or you are a fussy, ranting loon. :p
     
    #57     Aug 18, 2008
  8. RedDuke

    RedDuke

    I am not sure about this 5 seconds time delay, but there is not price quote delay, which is most important. Price quotes and DOM are spot on when compared to x_trader. I also ran some other tests and the data is absolutely fine. I am talking about DAX futures only.
     
    #58     Aug 18, 2008
  9. IB does do some tricks. like when I get a position, I always noticed the ask/bid abnormancy, one side is frozen, why? they want to scare me, put me in a rash, so I get out, after I did it, then everything looks normal, then I want to get in again, then the ask/bid becomes abornomal again!

    the lag is real since I often noticed, my execution confirmatiuon is already in, but the price is not freshed, I do not know why, so I opened another account with another broker, so I used another firms' chart/data feeding to solve IB's tricking or their technical problems, that works pretty well, that is a good way to gurantee data accuracy and timeliness, also can put your broker under a microscope ince case they did some under-tabel thing, you can show them your proof, submitted your complain directly to Marketwatch dog/SEC and they will be punished and you will be protected!
     
    #59     Aug 18, 2008
  10. comrade, 5seconds is a pretty long time. if news breakouts, the market may take only 1 seconds to roof or one second to the ground.

    another disadvantage is obvious: for example, five seconds ago, the market was quted like that: ask 4.8 bid 4.78, since you are behind 5 seconds, you think this is the current market, and you want to buy it, you entered 4.8, but oddly the market did not take it, then the qoute freshed to ask 4.85 bid 4.83, then you changed your bid to 4.83, gosh, still did not get filled since you are behind 5 seconds, actually the market is at ask 4.95 bid 4.93, ... so how can you buy the market at fair price? you end up chase the market until some point the market is started to reverse, after your chase the market to ask 5.09 bid 5.07, the market is actually at ask 4.97 bid 5.0, and you entered buy order at 5.07, oddly you get filled at 5.01! you may think you get good fill, oops, the market is heading ask 4.85 bid 4.83.... what a losing game!

    that is why they want 5 seconds delay for you!



     
    #60     Aug 18, 2008