I should add that I have Realtime chart refresh interval(sec) set to 3.
--- In [email protected], "ozzyapeman" <zoopf...@...> wrote: > > A couple of more questions, as I am still running into some issues: > > 1. In Tools --> Preferences --> Intraday, I used to have "time of last tick > inside bar" checked off. I have now unchecked that and instead checked "START > time of interval". Question is: will this retroactively correct all past bars > in the database to reflect the new settings? Or will only new bars coming > into the database reflect the new time stamp settings? > > > 2. I have my System Time properly calibrated so that it matches Market Time > in TWS to within a fraction of a second. Yet my AB chart sometimes shows a > new bar starting within 2-5 seconds after HH:MM:00 Market Time, and yet other > times it shows a new bar starting as late as 20-30 seconds after HH:MM:00 > Market Time. It's a mixed bag, and alternates every now and then without > apparent cause. And this affects trade timing as well. > So how do I get the chart (and trades) to properly synch up with Market > Time? What am I still missing? > > > > > --- In [email protected], "ozzyapeman" <zoopfree@> wrote: > > > > Thanks for all the feedback, guys. It's been very helpful! > > > > > > --- In [email protected], "Barry Scarborough" <razzbarry@> wrote: > > > > > > This is a little simpler than the similar approach I mentioned a few > > > posts earlier. In my trading program I have an initialization function > > > and I set the lastValue of timeNum in the static var to the current bar > > > on the first pass through the code. That way NewBar will not be true on > > > the first scan through the code and that prevents it from being true mid > > > bar, which it will in the way Tomasz and I proposed. It will wait until > > > the next bar after AB starts. That may or may not matter to you. > > > > > > Barry > > > > > > --- In [email protected], "Tomasz Janeczko" <groups@> wrote: > > > > > > > > There is much easier and reliable method: > > > > > > > > dt = LastValue( DateTime() ); > > > > > > > > if( StaticVarGet( "lastdt" ) != dt ) > > > > { > > > > _TRACE("New bar"); > > > > StaticVarSet("lastdt", dt ); > > > > } > > > > > > > > (Note that it works only if Tools->Preferences->Intraday is set > > > > to show START or END time of interval). > > > > > > > > Best regards, > > > > Tomasz Janeczko > > > > amibroker.com > > > > ----- Original Message ----- > > > > From: "Yofa" <jtoth100@> > > > > To: <[email protected]> > > > > Sent: Tuesday, March 17, 2009 1:03 PM > > > > Subject: Re: [amibroker] Re: Testing for new bar using string > > > > manipulation and quotation time > > > > > > > > > > > > > Hi, > > > > > > > > > > barTime % 100 == 0 will not work reliably! If there is no new tick or > > > > > no CPU > > > > > time to do refresh it will skipp new bars a few times! > > > > > This is a common problem. Look for similar posts here. You will fined > > > > > code > > > > > samples. > > > > > > > > > > Y > > > > > -------------------------------------------------- > > > > > From: "Mike" <sfclimbers@> > > > > > Sent: Tuesday, March 17, 2009 4:04 AM > > > > > To: <[email protected]> > > > > > Subject: [amibroker] Re: Testing for new bar using string > > > > > manipulation and > > > > > quotation time > > > > > > > > > >> If you have any concerns about rounding, you could use AlmostEqual > > > > >> instead > > > > >> of "==". > > > > >> > > > > >> http://www.amibroker.com/guide/afl/afl_view.php?id=301 > > > > >> > > > > >> Mike > > > > >> > > > > >> --- In [email protected], "ozzyapeman" <zoopfree@> wrote: > > > > >>> > > > > >>> Thanks a bunch, Mike. Modulo's so much simpler! > > > > >>> > > > > >>> > > > > >>> --- In [email protected], "Mike" <sfclimbers@> wrote: > > > > >>> > > > > > >>> > Again, assuming that your approach is sound, better still would > > > > >>> > be to > > > > >>> > use the modulo operator. > > > > >>> > > > > > >>> > barTime = 103731; > > > > >>> > > > > > >>> > if (barTime % 100 == 0) > > > > >>> > _TRACE( "New bar found" ); > > > > >>> > > > > > >>> > Mike > > > > >>> > > > > > >>> > --- In [email protected], "Mike" <sfclimbers@> wrote: > > > > >>> > > > > > > >>> > > Without commenting on the validity of the approach (I am not a > > > > >>> > > real > > > > >>> > > time trader), I can suggest that your problem is coming from a > > > > >>> > > formatting incompatibility. > > > > >>> > > > > > > >>> > > Add a format clause indicating zero decimal places and it will > > > > >>> > > work > > > > >>> > > fine. > > > > >>> > > > > > > >>> > > Note too that your switching back to a number again is > > > > >>> > > redundant and > > > > >>> > > even error prone since "==" is not necessarily exact when > > > > >>> > > dealing > > > > >>> > > with floats. Just use the string manipulation directly. > > > > >>> > > > > > > >>> > > barTime = 103731; > > > > >>> > > barTimeStr = NumToStr( barTime, 6.0 ); > > > > >>> > > > > > > >>> > > if ( StrRight( barTimeStr, 2 ) == "00" ) > > > > >>> > > _TRACE ( "New bar found" ); > > > > >>> > > > > > > >>> > > Mike > > > > >>> > > > > > > >>> > > --- In [email protected], "ozzyapeman" <zoopfree@> > > > > >>> > > wrote: > > > > >>> > > > > > > > >>> > > > Hello, hoping someone can help out with this string > > > > >>> > > > conversion > > > > >>> > > > problem. > > > > >>> > > > > > > > >>> > > > In live trading, I am pulling quotation time using TimeNum(), > > > > >>> > > > and > > > > >>> > > > want > > > > >>> > > > to test for the start of a new bar. So my thinking is to > > > > >>> > > > simply > > > > >>> > > > convert > > > > >>> > > > the time to a number, extract the last two characters, > > > > >>> > > > convert back > > > > >>> > > > to a > > > > >>> > > > number and see if it equals 0. If so, that means the last two > > > > >>> > > > digits in > > > > >>> > > > the quotation time are "00" and hence we are at the start of > > > > >>> > > > a new > > > > >>> > > > bar. > > > > >>> > > > > > > > >>> > > > However, the sample code below is always thinking we have a > > > > >>> > > > new bar > > > > >>> > > > whether the time is, for e.g. : > > > > >>> > > > > > > > >>> > > > 10:37:31 or > > > > >>> > > > 10:37:00 > > > > >>> > > > > > > > >>> > > > Obviously, only the second time should trip the 'new bar' > > > > >>> > > > print. > > > > >>> > > > But > > > > >>> > > > instead, both do: > > > > >>> > > > > > > > >>> > > > > > > > >>> > > > barTime = 103731; // we would normally use TimeNum() > > > > >>> > > > here, > > > > >>> > > > but > > > > >>> > > > using a number for example > > > > >>> > > > > > > > >>> > > > barTimeStr = NumToStr(barTime); > > > > >>> > > > > > > > >>> > > > NewBarSeconds = StrToNum ( StrRight(barTimeStr, 2) ); > > > > >>> > > > > > > > >>> > > > printf("NewBarSeconds = " + NewBarSeconds); > > > > >>> > > > > > > > >>> > > > if (NewBarSeconds == 0) > > > > >>> > > > > > > > >>> > > > printf(" We have a new bar"); > > > > >>> > > > > > > > >>> > > > > > > >>> > > > > > >>> > > > > >> > > > > >> > > > > >> > > > > >> > > > > >> ------------------------------------ > > > > >> > > > > >> **** IMPORTANT PLEASE READ **** > > > > >> This group is for the discussion between users only. > > > > >> This is *NOT* technical support channel. > > > > >> > > > > >> TO GET TECHNICAL SUPPORT send an e-mail directly to > > > > >> SUPPORT {at} amibroker.com > > > > >> > > > > >> TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at > > > > >> http://www.amibroker.com/feedback/ > > > > >> (submissions sent via other channels won't be considered) > > > > >> > > > > >> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG: > > > > >> http://www.amibroker.com/devlog/ > > > > >> > > > > >> Yahoo! Groups Links > > > > >> > > > > >> > > > > >> > > > > >> > > > > > > > > > > > > > > > ------------------------------------ > > > > > > > > > > **** IMPORTANT PLEASE READ **** > > > > > This group is for the discussion between users only. > > > > > This is *NOT* technical support channel. > > > > > > > > > > TO GET TECHNICAL SUPPORT send an e-mail directly to > > > > > SUPPORT {at} amibroker.com > > > > > > > > > > TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at > > > > > http://www.amibroker.com/feedback/ > > > > > (submissions sent via other channels won't be considered) > > > > > > > > > > For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG: > > > > > http://www.amibroker.com/devlog/ > > > > > > > > > > Yahoo! Groups Links > > > > > > > > > > > > > > > > > > > > > > > > >
