Join our facebook group for Amibroker afl code discussion https://www.facebook.com/groups/603980776889348

Price With Woodies Pivots


Price With Woodies Pivots
Price With Woodies Pivots



//www.aflcode.com
////////////////////////////////////
// Calculate and plot Woodies Pivots
////////////////////////////////////
function Pivots()
{
TimeFrameSet(inDaily);
//global R1,R2,S1,S2,PP,ColorR,ColorS,ColorP;
PP  =  round((Ref(H,-1) + Ref(L,-1) + O*2) / 4);
R1  =  (2 * PP) - Ref(L,-1);
S1  =  (2 * PP)  - Ref(H,-1);
R2  =  (PP - S1) + R1;
S2  =  PP - (R1 - S1);
TimeFrameRestore();

ColorR = colorRose;   // Resistance Bars colour
ColorS = colorOrange;  // Support Bars colour
ColorP = colorSkyblue;  // Woodies Pivot colour

// set all pivots but last to close +5
// This is done to eliminate problems with autoscaling
//
for (i=0;i<(BarCount-2);i++)
{
 PP[i] = H[i]+5;
 R1[i] = H[i]+5;
 R2[i] = H[i]+5;
 S1[i] = H[i]+5;
 S2[i] = H[i]+5;
}
//
// I want the pivot line to emerge as a straight line from the right
// side of the chart
//
for (i=BarCount-2;i>(BarCount-13);i--)//set the last bars to the final PP value
{
 PP[i] = PP[BarCount-1];
 R1[i] = R1[BarCount-1];
 R2[i] = R2[BarCount-1];
 S1[i] = S1[BarCount-1];
 S2[i] = S2[BarCount-1];

 ColorR[i] = colorRose;
 ColorS[i] = colorOrange;
 ColorP[i] = colorSkyblue;
}
//
// Conceal all but the trailing portion of the line
//
for (i=0;i<BarCount-10;i++) //hide the line except most recent 10 bars
{
 ColorR[i] = ColorS[i] = ColorP[i] = colorDarkOliveGreen;
}

//
// If price is above or below current price by more than this 
// amount then the pivot won't print.  Trying to print offscreen
// values causes problems with autoscaling
//
tolerance = 25;  
//
// Over how many bars should the tolerance be applied
//
range=30;
// 
// set up some constants
//
LastBar = BarCount-1;
HiVal = HHV(H,range);
LoVal = LLV(L,range);
style = styleLine;

//
//only plot pivots close to price
//
if (PP[LastBar]<(HiVal[LastBar]+tolerance) AND 
      PP[LastBar]>(LoVal[LastBar]-tolerance))
{
// PlotOHLC(PP,PP,PP,PP,"PP",colorSkyblue);
 Plot(PP,"PP",ColorP,style);
}
if (R1[LastBar]<(HiVal[LastBar]+tolerance) )//only plot pivots close to close price
{
 Plot(R1,"R1",ColorR,style);
}
if (R2[LastBar]<(HiVal[LastBar]+tolerance) )//only plot pivots close to close price
{
 Plot(R2,"R2",ColorR,style);
}
if (S1[LastBar] > (LoVal[LastBar]-tolerance) )//only plot pivots close to close price
{
 Plot(S1,"S1",ColorS,style);
}
if (S2[LastBar] > (LoVal[LastBar]-tolerance) )//only plot pivots close to close price
{
 Plot(S2,"S2",ColorS,style);
}
}


// Main Program starts here

////////////////////////////
// Price with Woodies Pivots 
////////////////////////////
CCI14 = CCI(14);
LSMA = round(LinearReg( Close, 25 )); 
// Plot Woodies Pivots
pivots();

// Setup the title
TitleStr = Interval(2) + " " + Name() + ", " + 
   EncodeColor(colorPink) + 
   "Price=" + H + ", " + L + ", " + C + ", " + 
   EncodeColor(colorTurquoise) + "34EMA" + ",\n" +
   EncodeColor(colorYellow) + "25lsma" + 
   EncodeColor(colorCustom12) + ", " +
   EncodeColor(colorWhite) + Date();
Title = TitleStr;

// Plot the price bars
PlotOHLC(O,H,L,C,"Price",
  IIf(C >= Ref(C,-1),colorGreen,colorRed),styleCandle);

Plot(EMA(C,34),"ema34",colorTurquoise,styleDashed | styleNoLabel);
Plot(LSMA,"lsma",colorYellow,styleLine | styleNoLabel);
Previous
Next Post »