That is very nice code Reinsley and yes I think your T3cross HiLo ribbon 
captures the trend nicely on my daily chart. You are obviously a long way ahead 
of me with AFL and I will learn a lot I think when I study your code.

I see now how to plot text as you have done( and be able to define font size 
which was a later project for me - so thanks)  

But,  I want to use AFL to place it automatically above or below each swing on 
a Gann chart - or even on the zig zag chart.
Maybe it is not possible but I have seen this on several other software 
packages and would like to see it in Amibroker :)

The most important would be days/bars for the swings to form and the range of 
each swing (R 80,TD6 for example).  So the formula would need to be able to 
count the bars and also calculate the range in each swing.


Thanks for your help and ideas
Raine


--- In [email protected], reinsley <reins...@...> wrote:
>
> 
> 
> Hi,
> 
> In the VSA forum I gave a formula. The for loop at the very end shows 
> you a way to plot text and you can add date etc.
> The GannHiLo ribbon may show you if my params are better than yours.
> 
> http://finance.groups.yahoo.com/group/Amibroker-VSA/message/729
> 
> Best regards
> 
> 
> 
> Le 12/05/2010 08:56, possum51au a �crit :
> >
> > Thanks Wavemechanic
> >
> > I have uncommented those lines and now my chart looks terrific.
> > So that is first question sorted- and thank you again.
> >
> > Now I would like to learn more about plotting text within the formula.
> > I looked at Plot Text function and tried the MACD example.
> > I also tried to understand the formula below -
> > which would be near to what I want.
> >
> > http://www.amibroker.com/library/detail.php?id=1300&hilite=ZIG 
> > <http://www.amibroker.com/library/detail.php?id=1300&hilite=ZIG>
> >
> > But, I am totally lost as to how to code the text I want and have it 
> > over the top or bottom of each swing on the Gann chart.
> >
> > DATE
> > Close
> > Range
> > Days
> >
> > If anyone has some time to guide me would be a relief.
> > Cheers Raine
> >
> > --- In [email protected] <mailto:amibroker%40yahoogroups.com>, 
> > "wavemechanic" <olesmithy@> wrote:
> > >
> > > 1 - uncomment the "price bars drawn" section
> > >
> > > 2 - See PlotText()
> > > ----- Original Message -----
> > > From: possum51au
> > > To: [email protected] <mailto:amibroker%40yahoogroups.com>
> > > Sent: May 11, 2010 4:56 PM
> > > Subject: [amibroker] Gann Swing charts with text - possible?
> > >
> > >
> > > Hi
> > > I am a fan of Gann swing charts and use the formulas kindly provided 
> > by Thomasz in 2001.
> > > I have 2 questions for anyone able to help.
> > > 1. How can I change this formula so that it overlays a bar chart
> > >
> > > 2. I wonder if it is possible to code AFL to show (above and below 
> > each swing) the Date, price, range above and below each swing and 
> > number of bars/days ?
> > >
> > > | |
> > > | |
> > > |__|
> > > 1 May
> > > 1.16
> > > R .30
> > > 5 d
> > >
> > > I'd be grateful for any suggestions/help on this
> > > Thanks
> > > Raine
> > >
> > > This is the formula I use now.
> > > _SECTION_BEGIN("Gann 1 bar Swing new ");
> > > /* Gann Swing chart v4 */
> > > /* Last modified 24 Feb 2001 */
> > > /* AFL implementation by */
> > > /* (C)2001 Tomasz Janeczko */
> > > /* one and two - bar reversal version */
> > >
> > > /* Change this to 1 for two-bar mode */
> > > twobarmode = 0;
> > >
> > > outsidebar = Outside();
> > > insidebar = H <= Ref( H, -1 ) AND L >= Ref( L, -1 ); // built-in 
> > inside() works with < > instead of <= >=
> > >
> > > upbar = H > Ref( H, -1 ) AND L >= Ref( L, -1 );
> > > downbar = L < Ref( L, -1 ) AND H <= Ref( H, -1 );
> > >
> > > upbar2 = upbar OR ( outsidebar AND Ref( downbar, 1 ) ) ;
> > > downbar2 = downbar OR ( outsidebar AND Ref( upbar, 1 ) );
> > >
> > > Poi = outsidebar AND Ref( insidebar, 1 );
> > > Poo = outsidebar AND Ref( outsidebar, 1 );
> > > Pooi = Poo AND Ref( insidebar, 2 );
> > > Poio = Poi AND Ref( outsidebar, 2 );
> > > Poii = Poi AND Ref( insidebar, 2 );
> > > Pooo = Poo AND Ref( outsidebar, 2 );
> > > Poooi = Pooo AND Ref( insidebar, 3 );
> > > Pooio = Pooi AND Ref( outsidebar, 3 );
> > > Poioo = Poio AND Ref( outsidebar, 3 );
> > >
> > > upbar3 = upbar2 OR ( Poi AND Ref( downbar, 2 ) );
> > > downbar3 = downbar2 OR ( Poi AND Ref( upbar, 2 ) );
> > >
> > > upbar4 = upbar3 OR ( Poo AND Ref( upbar, 2 ) );
> > > downbar4 = downbar3 OR ( Poo AND Ref( downbar, 2 ) );
> > >
> > > upbar5 = upbar4 OR ( Pooi AND Ref( upbar, 3 ) );
> > > downbar5 = downbar4 OR ( Pooi AND Ref( downbar, 3 ) );
> > >
> > > upbar6 = upbar5 OR ( Poio AND Ref( upbar, 3 ) );
> > > downbar6 = downbar5 OR ( Poio AND Ref( downbar, 3 ) );
> > >
> > > upbar7 = upbar6 OR ( Poii AND Ref( downbar, 3 ) );
> > > downbar7 = downbar6 OR ( Poii AND Ref( upbar, 3 ) );
> > >
> > > upbar8 = upbar7 OR ( Pooo AND Ref( downbar, 3 ) );
> > > downbar8 = downbar7 OR ( Pooo AND Ref( upbar, 3 ) );
> > >
> > > upbar9 = upbar8 OR ( Poooi AND Ref( downbar, 4 ) );
> > > downbar9 = downbar8 OR (Poooi AND Ref( upbar, 4 ) );
> > >
> > > upbar10 = upbar9 OR ( Pooio AND Ref( downbar, 4 ) );
> > > downbar10 = downbar9 OR ( Pooio AND Ref( upbar, 4 ) );
> > >
> > > upbar11 = upbar10 OR ( Poioo AND Ref( downbar, 4 ) );
> > > downbar11 = downbar10 OR ( Poioo AND Ref( upbar, 4 ) );
> > >
> > > fupbar = upbar11;
> > > fdownbar = downbar11;
> > >
> > > // Two-bar mode handling
> > > fupbar = IIf( twobarmode, fupbar AND Ref( fupbar, 1 ), fupbar );
> > > fdownbar = IIf( twobarmode, fdownbar AND Ref( fdownbar, 1 ), fdownbar );
> > >
> > > /* Barcount since most recent up and down swings */
> > > Us = BarsSince( fupbar );
> > > Ds = BarsSince( fdownbar ) ;
> > >
> > > Sd1 =IIf( Us==0, 1, IIf( Ds==0, -1, 0) );
> > >
> > > Sd2 = IIf( Sd1 == 1, IIf( Ref( BarsSince(Sd1==1), -1) > Ref( 
> > BarsSince( Sd1 == -1), -1), 1, 0),
> > > IIf( Sd1 == -1, IIf( Ref( BarsSince(Sd1==1),-1) < Ref( BarsSince( 
> > Sd1 == -1),-1), -1, 0), 0 ) );
> > >
> > > g0 = ValueWhen( Sd2, Sd2 ); /* sample and hold non-zero values */
> > >
> > > /* shift back one bar, add one dummy swing at the end and shift 
> > forward */
> > > /* to ensure proper handling of the last swing */
> > > lastbar = Cum(1) == LastValue( Cum(1) );
> > > swinglevel = IIf( g0 == -1, HighestSince( Sd2 == 1, H ), 
> > LowestSince( Sd2 == -1, L ) );
> > > swinglevel = IIf( lastbar, IIf( g0 == -1, LowestSince( Sd2 == -1, L 
> > ), HighestSince( Sd2 == 1, H )), Ref( swinglevel, 1 ) );
> > >
> > > /* Gann Swing chart drawn here */
> > > Graph1 = Ref( ValueWhen( Ref( Sd2 != 0, 1 ) OR lastbar, swinglevel , 
> > 0 ), -1 );
> > > Graph1Style = 512+1024;
> > > GraphXSpace = 5;
> > > Title = Date() + Name() + " 1 Bar Gann Swing Chart";
> > >
> > > /* Colourized price bars drawn here */
> > > /* graph0 = close; */
> > > /* graph0style = 128; */
> > > /* barcolor = IIF( outsidebar, 1, IIF( downbar, 4, IIF( upbar, 5, 0 
> > ) ) ); */
> > > /* graph0barcolor = ValueWhen( barcolor != 0, barcolor ); */
> > > _SECTION_END();
> > >
> > > _SECTION_BEGIN("Background");
> > > //SetChartBkGradientFill( ParamColor("BgTop", 
> > colorLavender),ParamColor("BgBottom", colorCustom3));
> > > SetChartBkColor(colorWhite); // color of outer border
> > > SetChartBkGradientFill( ColorRGB(175,175,239), colorLavender, 
> > titlebkcolor = colorWhite );
> > > //color of inner panel
> > > _SECTION_END();
> > >
> > >
> > >
> > >
> > >
> > > ------------------------------------
> > >
> > > **** 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/ <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/ <http://www.amibroker.com/devlog/>
> > >
> > > Yahoo! Groups Links
> > >
> >
> >
>


Reply via email to