Thanks for the input. I'll start working on the cleanup.
Your last comment about doing all this in an Exploration. Well not nearly as 
cool as dual heatmaps linked to a sector/ industry indicator linked to a 
relative strength indicator, with index and composite plots, of the list (any 
list) keyed off a signal pane of inputs :-) all symbol linked together.
Is that what you meant by doing to much with indicators :-)
I've uploaded an image to the Files section called - HeatMaps_RelStr.jpg
Thanks again for all the help.


--- In [email protected], Tomasz Janeczko <gro...@...> wrote:
>
> Hello,
> 
> What is posted in the files section is incomplete - it uses several
> #includes and none of the files are there.
> 
> Also the code looks overly complicated and it abuses many things.
> It should be written again from scratch.
> 
> Any kind of symbol by symbol matrix should be generated as EXPLORATION
> not indicator.
> This is so because exploration is done one demand (not with every
> refresh) and it has
> ability to iterate through symbols while displaying progress bar
> and processing windows messages between symbols making
> way more responsive.
> 
> Also the code uses JScript to change the symbol for chart being
> actually executed - a big no-no.
> 
> Entire code should be totally re-written using Exploration mode.
> 
> Third thing is that the code uses Status("Action") to execute
> parts of the code only when used in indicator, therefore
> you won't have this part profiled using Tools->Code Check And Profile
> because code check is not run with Action == 1.
> 
> 
> Generally speaking I see people largely abusing indicators
> for things that should be done in AA window (mainly exploration).
> 
> An example correlation heat map formula looks as follows.
> Note that it is just 6 lines.
> 
> /*This is the formula to create a correlation matrix in AB.
> It is set up to run the correlation of the symbols in Watchlist 2
> with the "define" filter catagory in the auto-analyser. In this
> default case
> this code will correlate the symbols in watchlist 2 with the symbols
> in watchlist 2.
> - Tools -> Send to Analysis
> - press FILTER button and select Watchlist 2 in INCLUDE tab
> - press EXPLORE button in AA window.*/
> 
> symlist = CategoryGetSymbols( categoryWatchlist, 2 );
> Filter = Status("lastbarinrange");
> for( i = 0; ( sym = StrExtract( symlist, i ) ) != ""; i++ )
> {
>   Corr = Correlation( C, Foreign( sym, "C" ), 252 );
>   Clr = 32 + SelectedValue( Corr ) * 32;
>   AddColumn( Corr, sym, 1.2, ColorHSB( 128+Clr, 255, 255 ) ,
> ColorHSB(Clr, 255, 255 ) );
> }
> 
> 
> Best regards,
> Tomasz Janeczko
> amibroker.com
> 
> gmorlosky wrote:
> > Thanks TJ - I have uploaded the file to the Files section as HeatMap.afl 
> > HeatMap v1.1a
> > I actually use 3 of these heatmap indicators at once in a single window 
> > with different scoreing selected. So anything to speed things up would help.
> >
> >
> > --- In [email protected], Tomasz Janeczko <groups@> wrote:
> >   
> >> Hello,
> >>
> >> Sorry, but I can't see any formula attached to your e-mail. Please send
> >> the formula you are using,
> >> then we could discuss the details.
> >>
> >> Best regards,
> >> Tomasz Janeczko
> >> amibroker.com
> >>
> >>
> >> gmorlosky wrote:
> >>     
> >>> Thanks - So I am really doing 123 * 123 in the orginal example... How do 
> >>> I speed that up ?
> >>>
> >>> Yes - the example was a partial list as I left off some of the "lesser" 
> >>> functions, but I have included all below (119 symbols).
> >>>
> >>>  Function name      Call Count      Total Time[ms]  Time per Call [ms]
> >>>  StrExtract         120             0.530           0.004
> >>>  CategoryGetSymbols   1             0.125           0.125
> >>>  GetCategorySymbols   1             0.107           0.107
> >>>  Param                6             0.038           0.006
> >>>  paramcategory        1             0.034           0.034
> >>>  ParamList            4             0.031           0.008
> >>>  ParamToggle          4             0.031           0.008
> >>>  NumToStr             1             0.030           0.030
> >>>  StaticVarGet         3             0.019           0.006
> >>>  array operator -     1             0.015           0.015
> >>>  paramlistnum         1             0.014           0.014
> >>>  ParamTrigger         2             0.010           0.005
> >>>  _SECTION_BEGIN       1             0.008           0.008
> >>>  Status               1             0.005           0.005
> >>>  IIf                  2             0.003           0.002
> >>>  StrLen               1             0.002           0.002
> >>>  _SECTION_END         1             0.002           0.002
> >>>  EnableScript         1             0.002           0.002
> >>>  StrFind              1             0.002           0.002
> >>>  EnableTextOutput     1             0.001           0.001
> >>>  GetChartID           1             0.000           0.000
> >>>
> >>>
> >>>
> >>>
> >>> --- In [email protected], Tomasz Janeczko <groups@> wrote:
> >>>   
> >>>       
> >>>> The list looks incomplete.  Your formula probably uses
> >>>> 123 * 123 (=15129) calls to Foreign function to generate heat map /
> >>>> correlation for 123 symbols. That's
> >>>> where it apparently spends most time.
> >>>>
> >>>> gmorlosky wrote:
> >>>>     
> >>>>         
> >>>>> Explain something to me. This particular indicator code (HeatMap of 123 
> >>>>> symbols)runs like a dog (5 seconds or more to complete. I have no 
> >>>>> plugins or scripting. The details of each function are below. Is it the 
> >>>>> StrExtract and/or the *Symbols, that needs to be sped up ? and how ?
> >>>>>
> >>>>> Function name Call Count Total Time [ms] Time per Call [ms]
> >>>>> StrExtract         123   0.563           0.005
> >>>>> CategoryGetSymbols   1   0.403           0.403
> >>>>> GetCategorySymbols   1   0.285           0.285
> >>>>> Param                6   0.038           0.006
> >>>>> ParamList            4   0.035           0.009
> >>>>> Paramcategory        1   0.033           0.033
> >>>>> ParamToggle          4   0.032           0.008
> >>>>> NumToStr             1   0.030           0.030
> >>>>> AddColumn            1   0.023           0.023
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>> ------------------------------------
> >>>>>
> >>>>> **** 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
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>       
> >
> >
> >
> >
> > ------------------------------------
> >
> > **** 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
> >
> >
> >
> >
> >
>


Reply via email to