Stock Portfolio Organizer

The ultimate porfolio management solution.

Shares, Margin, CFD's, Futures and Forex
EOD and Realtime
Dividends and Trust Distributions
And Much More ....
For Portfolio Manager Click Here

WiseTrader Toolbox

#1 Selling Amibroker Plugin featuring:

Advanced Adaptive Indicators
Advanced Pattern Exploration
Neural Networks
And Much More ....
Find Out More Here

Alligator AO Indicator, Exploration and System for Amibroker (AFL)
kaiji
about 14 years ago
Amibroker (AFL)

Rating:
5 / 5 (Votes 4)
Tags:
trading system, amibroker, alligator

This is the AO indicator and system of the Alligator System by profitunity.

Similar Indicators / Formulas

Alligator AC Indicator, Exploration and System
Submitted by kaiji about 14 years ago
BUAYA Timur
Submitted by lodwyk about 11 years ago
William's Alligator System II
Submitted by kaiji about 14 years ago
Cumulative Value
Submitted by mfoysalar about 14 years ago
buy and sell two EMAS
Submitted by mundo0007 about 12 years ago
EMA crossover
Submitted by Ketan-0 about 13 years ago

Indicator / Formula

Copy & Paste Friendly
/* Exploration, System and Indicator */
//    Author: Steve Wiser
//   Email address: slwiserr@erols.com
//   May 5, 2001 */
/*

The Awesome Oscillator measures the immediate momentum of the last 5 price bars as
compared to the last 34 price bars.
Three types of signals are generated by the AO:
The Saucer, the Cross, and Twin Peaks
Above the Zero Line, the only signals generated are a Twin Peaks sell, a Saucer buy and
a buy Cross.
Below the Zero Line, the only signals generated are a Twin Peaks buy, Saucer sell, and a
sell Cross.

We color green any histogram bar that is higher than the previous
histogram bar, and we color red any histogram bar that is lower than the previous bar.

Saucer Signal:
1. Always read from left to right.
2. It takes a minimum of three bars to create a signal.
3. There is no limit to how many bars can be inside a saucer.
4. All bars in a Saucer must be above the zero line
5. The signal bar will be a Green Bar
6. You can not have a buy and sell at the same time.
7. After creating a signal, you MUST have a change of direction (color) before creating
another signal.
8. Once you have created a signal, go to the corresponding price bar and add/subtract 1
tick to the high/low.

THE AO CROSS BUY
buy when the histogram is "crossing" the zero line from a negative number to a positive
number.

Twin Peaks buy signal
This is the only buy signal that can be created while the AO histogram is below the zero line
• The first peak must be a larger negative number than the second peak.
• Your trigger bar will be a Green Bar and a smaller negatille number than either peak.
• If any bars cross the zero line in the Twin Peaks, the signal is invalid.
• A Saucer Sell will be created before a Twin Peaks Buy.

General Emphasis: You cannot sell on an AO signal if the current
histogram bar is green, and you cannot buy any AO signals if the current histogram bar is red.
*/

//outsidebar = Outside();
//insidebar = H <= Ref(H,-1) AND L >= Ref(L,-1);
//upbar = H > Ref(H,-1) AND L >= Ref(L, -1);
//downbar = L < Ref(L,-1) AND H <= Ref(H,-1);
//barcolor=IIf(outsidebar, 1, 
//               IIf(downbar,   4, 
//               IIf(upbar,        5, 
//               IIf(insidebar,6, 0 ) ) ) );

/*barcolor=
      iif(outsidebar, 1, iif(downbar, 4, iif(upbar,5, 0) ) );*/


var1=MA( Avg , 34);
var2=MA( Avg,5);
diff = var2-var1;
Graph0= diff;
Graph0Name = "AO";
Graph0Style=2+4;
Graph1=Wilders(diff ,5);
Graph1Style=4+1;
UpBar = diff > Ref(diff,-1); 
DownBar = diff < Ref(diff,-1);
Graph0BarColor=IIf(UpBar, colorGreen, colorRed);

SoucerUp = Ref(diff,-2) > Ref(diff,-1) AND Ref(diff,-1) < diff;
SoucerDown = Ref(diff,-2) < Ref(diff,-1) AND Ref(diff,-1) > diff;

SoucerBuy = SoucerUp AND (diff > 0 AND Ref(diff,-1) > 0 AND Ref(diff,-2) > 0);
SoucerSell = SoucerDown AND (diff < 0 AND Ref(diff,-1) < 0 AND Ref(diff,-2) < 0);

CrossBuy = diff > 0 AND Ref(diff,-1) < 0;
CrossSell = diff < 0 AND Ref(diff,-1) > 0;

Buy = SoucerBuy OR CrossBuy;
Sell = SoucerSell OR CrossSell;
PlotShapes( IIf(SoucerBuy ,shapeDigit1,0) ,colorBlue, 0, 0,-12);
PlotShapes( IIf(CrossBuy ,shapeDigit2,0) ,colorBlue, 0, 0,-12);
PlotShapes( IIf(SoucerSell ,shapeDigit1,0) ,colorOrange, 0, 0,12);
PlotShapes( IIf(CrossSell ,shapeDigit2,0) ,colorOrange, 0, 0,12);

LatestLowPeak = IIf(diff < 0, Ref(LowestSince(CrossSell, diff, 1), -1), 0);
TwinPeaksBuy = diff < 0 AND Ref(DownBar, -1) AND UpBar AND Ref(diff,-1) > LatestLowPeak;

//Move latest lowest peak to the new one created now:
LatestLowPeak = IIf(TwinPeaksBuy, Ref(diff,-1), LatestLowPeak); 


PlotShapes( IIf(TwinPeaksBuy ,shapeDigit3,0) ,colorBlue, 0, 0,12);

LatestHighPeak = IIf(diff > 0, Ref(HighestSince(CrossBuy, diff, 1), -1), 0);
TwinPeaksSell = diff > 0 AND Ref(UpBar, -1) AND downBar AND Ref(diff,-1) < LatestHighPeak ;

LatestHighPeak = IIf(TwinPeaksSell, Ref(diff,-1), LatestHighPeak ); 

PlotShapes( IIf(TwinPeaksSell ,shapeDigit3,0) ,colorOrange, 0, 0,-12);

SuperAOBuy = Ref(DownBar, -3) AND Ref(UpBar, -2) AND Ref(UpBar, -1) AND UpBar;
SuperAOSell = Ref(UpBar, -3) AND Ref(DownBar, -2) AND Ref(DownBar, -1) AND DownBar;
PlotShapes( IIf(SuperAOBuy ,shapeDigit4,0) ,colorBlue, 0, 0,12);
PlotShapes( IIf(SuperAOSell ,shapeDigit4,0) ,colorOrange, 0, 0,-12);

/* Super AO Blue Light Special
If you have a Super AO buy signal and it is not hit and the AO does not change color,
and the next bar has a lower high then you will move your buy stop down to one tick above that high. 
You will continue to do this until the signal is hit or the AO changes color 
*/

//Commentary:
WriteIf(SuperAOBuy,"Place Buy Stop to buy 1 unit if price rises to " + WriteVal(H+0.01)+" or higher. (AO+ SAO Add on)",
WriteIf(SuperAOSell ,"Place Sell Stop to sell 1 unit if price falls to " + WriteVal(L-0.01)+" or lower. (AO- SAO Add on)",
WriteIf(SoucerBuy ,"Place Buy Stop to buy 1 unit if price rises to " + WriteVal(H+0.01)+" or higher. (AO+ Soucer)",
WriteIf(SoucerSell ,"Place Sell Stop to sell 1 unit if price falls to " + WriteVal(L-0.01)+" or lower. (AO- Soucer)",
WriteIf(CrossBuy ,"Place Buy Stop to buy 1 unit if price rises to " + WriteVal(H+0.01)+" or higher. (AO+ Zero Cross)",
WriteIf(CrossSell ,"Place Sell Stop to sell 1 unit if price falls to " + WriteVal(L-0.01)+" or lower. (AO- Zero Cross)",
WriteIf(TwinPeaksBuy ,"Place Buy Stop to buy 1 unit if price rises to " + WriteVal(H+0.01)+" or higher. (AO+ Twin Peaks)",
WriteIf(TwinPeaksSell ,"Place Sell Stop to sell 1 unit if price falls to " + WriteVal(L-0.01)+" or lower. (AO- Twin Peaks)",""))))))));

0 comments

Leave Comment

Please login here to leave a comment.

Back