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

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], "wavemechanic" <olesmi...@...> wrote:
>
> 1 - uncomment the "price bars drawn" section
> 
> 2 - See PlotText()
>   ----- Original Message ----- 
>   From: possum51au 
>   To: [email protected] 
>   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/
>   (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