[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [amibroker] Re: I'm having a very hard time doing something that I think should be simple


  • To: Conrad Joach <amibroker@xxxxxxxxxxxxxxx>
  • Subject: Re: [amibroker] Re: I'm having a very hard time doing something that I think should be simple
  • From: Herman <psytek@xxxxxxxx>
  • Date: Fri, 27 Mar 2009 06:33:39 -0400

PureBytes Links

Trading Reference Links

Title: Re: [amibroker] Re: I'm having a very hard time doing something that I think should be simple

Dear Conrad, with all the answers, attention, and noise the the problem is that you haven't defined what you are trying to accomplish. Unless you make a plan you you will just get more frustrated by the day :-) 


In any form of real-time trading you want as many executions as possible; this is what makes your trading system responsive to and quick-acting. So the Amibroker characteristic you observed is ESSENTIAL in all real time trading. Your problem is that you don't know how to take advantage of it. There are plenty of articles and post on timing, for example see http://www.amibroker.org/userkb/category/real-time-afl-applications/real-time-afl-programming/


All of my own programs have section of code that execute at different times, some on each quote, some at minute boundaries, some each 5 minutes, some based on elapsed time from some event, etc. This is essential in real time trading.


Tell us what you need, not what you observe. 


Good luck,

herman






 



Thursday, March 26, 2009, 11:50:52 PM, you wrote:


> By the way I tried calling Status("redrawaction") and it returned 0 every

> time in the trace window, over and over, which means the action is not a timer action.


> That however doesn't mean it's not a timer action from an external plugin,

> just that it isn't a timer action from the AFL timer function. So that proves nothing probably.


> As of now it really seems like your theory is true, but if so how come nobody

> ever noticed this? Is everyone importing static data? People who are using

> live feeds, have you never noticed your functions are being called over and over intra-second?


> --- In amibroker@xxxxxxxxxxxxxxx, "brian_z111" <brian_z111@xxx> wrote:


>> Hi Conrad,


>> I don't know the answer but I have been following along and I can hazard a guess:


>> - when a plugin is actioned it auto enables timed refresh (otherwise the charts would not refresh while we are away from the desk?


>> http://www.amibroker.com/guide/afl/afl_view.php?id=320


>> - refreshes would continue, tick or no tick, until the plug is pulled on the plugin?


>> - going to daily bar view makes no difference because the underlying database is RT and it continues to refresh as per the timer? (in RT the daily bar is a compression of RT bars and not an EOD 'snapshot' of the OHLC for the day.


>> If I am correct I suppose there is an argument for users being able to toggle on/off an auto adjustment for refresh time when changing to a higher timeframe...... there is no need for high frequency refresh if you are only interested in a timeframe > than the basetime.


>> In that case though you wouldn't see the bar build you would just see the latest finished bar appear.


>> I dare say the topguns probably code up their own solutions.


>> If you set the timed refresh to a ridiculously high number I guess timed refresh would halt and you would only get a refresh on 'user action'.


>> from the timed refresh reference:


>> Hint: to detect whenever given refresh comes from timer or user action you can use Status("redrawaction") function. It returns 0 for regular refresh (user action) and 1 for timer-refresh 


>> Re 'data page' referred to by Tomasz


>> I don't know what he was talking about either ... I think he means the QuoteEditor page.




>> --- In amibroker@xxxxxxxxxxxxxxx, "Conrad Joach" <consolejoker@> wrote:

>> >

>> > Another update, I hit the "Close" button on this little backfill window. It warned me that I would lose the ability to get quotes until I loaded the database again. I hit Yes, and it said it was shutting down the IQFeed plugin. As soon as I did this, my TRACE window stopped updating.

>> > 

>> > So we now know the culprit, the question is why on earth is the fact that the IQFeed plugin is running causing my AFL to be invoked over and over again in a chart?? 

>> > 

>> > --- In amibroker@xxxxxxxxxxxxxxx, "Conrad Joach" <consolejoker@> wrote:

>> > >

>> > > One other variable I'll mention is that there is a little window running saying "Backfilling AAPL, 4500 bars", and "0 running backfills". I don't know what this has to do with AFL and a chart. There's no way this window or whatever backfilling its doing (which it can't possibly be doing if the network is unplugged) should have any impact on how often an AFL gets invoked in a chart window. But I thought I'd mention it here to see if means anything.

>> > > 

>> > > --- In amibroker@xxxxxxxxxxxxxxx, "Conrad Joach" <consolejoker@> wrote:

>> > > >

>> > > > I tried your test, I got results that showed time was changing, see below.

>> > > > 

>> > > > Also, I disconnected my network connection, and guess what, the trace kept on printing, line after line, with a new time stamp, never stopping. I was on an AAPL chart before I disconnected.

>> > > > 

>> > > > So the question is why is the chart refreshing multiple times per second when the network is unplugged, which rules out ticks, and when there is no interaction with the chart window??

>> > > > 

>> > > > test215723      Formulas\Drag-drop\DebugPlot 4.afl      4       20      21:57:23.89

>> > > > test215724      Formulas\Drag-drop\DebugPlot 4.afl      4       20      21:57:24.89

>> > > > test215725      Formulas\Drag-drop\DebugPlot 4.afl      4       20      21:57:25.89

>> > > > test215726      Formulas\Drag-drop\DebugPlot 4.afl      4       20      21:57:26.89

>> > > >    

>> > > > 

>> > > > --- In amibroker@xxxxxxxxxxxxxxx, "monitorit" <monitorit@> wrote:

>> > > > >

>> > > > > Hi,

>> > > > > Just a few thoughts from a non-pro ABer

>> > > > > 1. If you have entered more than 1 ticker since the time AB session started and are in realtime mode, AB will try to get those quotes as well as for the displayed ticker (running an AA session or have tickers in an open realtime quote window also counts I believe).  The number of tickers AB will try to get I think depends on your data provider - 200 sounds to be plausable.

>> > > > > 2. Could your data provider be sending ticks for the ticker many times/sec (ie 200 times in 20sec)?

>> > > > > 

>> > > > > Consider changing your afl to

>> > > > > 

>> > > > > _SECTION_BEGIN("YOURTITLE");

>> > > > > plot(C,"Close",colorblack

>> > > > >  _TRACE("test"+Now(4));

>> > > > > _SECTION_END();

>> > > > > 

>> > > > > save it

>> > > > > check to see if all times are ~the same or show a continum (could the 200 traces just be the last 200 but they are continuing while the window is open)?

>> > > > > consider disconnecting from your data provider

>> > > > > consider quitting and restarting AB and checking the above.

>> > > > > 

>> > > > > Would like to see the results of above

>> > > > > Dan

>> > > > > 

>> > > > > --- In amibroker@xxxxxxxxxxxxxxx, "Conrad Joach" <consolejoker@> wrote:

>> > > > > >

>> > > > > > I have posted in excruciating detail exactly what I'm doing. My code is one line:

>> > > > > > 

>> > > > > > _TRACE("test");

>> > > > > > 

>> > > > > > That's it. One line. On one chart. The chart is minutely, on a database with 5000 minutes. EURUSD. 

>> > > > > > 

>> > > > > > It prints 200 times then stops. I have no refresh on the chart. 

>> > > > > > 

>> > > > > > If I clear the trace window, it prints it 200 times again, as if that is somehow causing a chart refresh, which is very weird behavior.

>> > > > > > 

>> > > > > > What else can I tell you. You can reproduce this yourself very easily with my explanation. Let me know what other info you need.

>> > > > > > 

>> > > > > > Thanks.

>> > > > > > 

>> > > > > > >>Re: [amibroker] Re: I'm having a very hard time doing something that I think should be simple

>> > > > > > 

>> > > > > > You have to take it one step at a time. If you set AB to log only 200 lines than that is what you get, no more.

>> > > > > > 

>> > > > > > 

>> > > > > > Anyway, I haven't seen your code yet, did you post it? Also include the exact conditions you run it with.

>> > > > > > 

>> > > > > > 

>> > > > > > Everybody is guessing what you are doing - you'll never learn anything this way.

>> > > > > > 

>> > > > > > 

>> > > > > > herman

>> > > > > >

>> > > > >

>> > > >

>> > >

>> >






> ------------------------------------


> **** 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


> <*> To visit your group on the web, go to:

>     http://groups.yahoo.com/group/amibroker/


> <*> Your email settings:

>     Individual Email | Traditional


> <*> To change settings online go to:

>     http://groups.yahoo.com/group/amibroker/join

>     (Yahoo! ID required)


> <*> To change settings via email:

>     mailto:amibroker-digest@xxxxxxxxxxxxxxx 

>     mailto:amibroker-fullfeatured@xxxxxxxxxxxxxxx


> <*> To unsubscribe from this group, send an email to:

>     amibroker-unsubscribe@xxxxxxxxxxxxxxx


> <*> Your use of Yahoo! Groups is subject to:

>     http://docs.yahoo.com/info/terms/





__._,_.___


**** 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/





Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___