Bill Williams. Awesome Oscillator (AO)

ICE Data Services -


ABillW_AO.efs  EFSLibrary - Discussion Board
  

File Name: ABillW_AO.efs


Description:
Bill Williams. Awesome Oscillator (AO)


Formula Parameters:
nLengthSlow : 34
nLengthFast : 5

Notes:
This indicator is based on Bill Williams` recommendations from his book
"New Trading Dimensions". We recommend this book to you as most useful reading.
The wisdom, technical expertise, and skillful teaching style of Williams make
it a truly revolutionary-level source. A must-have new book for stock and
commodity traders.
The 1st 2 chapters are somewhat of ramble where the author describes the
"metaphysics" of trading. Still some good ideas are offered. The book references
chaos theory, and leaves it up to the reader to believe whether "supercomputers"
were used in formulating the various trading methods (the author wants to come across
as an applied mathemetician, but he sure looks like a stock trader). There isn't any
obvious connection with Chaos Theory - despite of the weak link between the title and
content, the trading methodologies do work. Most readers think the author's systems to
be a perfect filter and trigger for a short term trading system. He states a goal of
10%/month, but when these filters & axioms are correctly combined with a good momentum
system, much more is a probable result.
There's better written & more informative books out there for less money, but this author
does have the "Holy Grail" of stock trading. A set of filters, axioms, and methods which are
the "missing link" for any trading system which is based upon conventional indicators.
This indicator plots the oscillator as a histogram where periods fit for buying are marked
as blue, and periods fit for selling as red. If the current value of AC (Awesome Oscillator)
is over the previous, the period is deemed fit for buying and the indicator is marked blue.
If the AC values is not over the previous, the period is deemed fir for selling and the indicator


Download File:
ABillW_AO.efs




EFS Code:






/*********************************Provided By:      eSignal (Copyright c eSignal), a division of Interactive Data     Corporation. 2009. All rights reserved. This sample eSignal     Formula Script (EFS) is for educational purposes only and may be     modified and saved under a new file name.  eSignal is not responsible    for the functionality once modified.  eSignal reserves the right     to modify and overwrite this EFS file with each new release.Description:            Bill Williams. Awesome Oscillator (AO) Version:            1.0  03/27/2009Formula Parameters:                     Default:    nLengthSlow                         34    nLengthFast                         5Notes:    This indicator is based on Bill Williams` recommendations from his book     "New Trading Dimensions". We recommend this book to you as most useful reading.    The wisdom, technical expertise, and skillful teaching style of Williams make     it a truly revolutionary-level source. A must-have new book for stock and     commodity traders.    The 1st 2 chapters are somewhat of ramble where the author describes the     "metaphysics" of trading. Still some good ideas are offered. The book references     chaos theory, and leaves it up to the reader to believe whether "supercomputers"     were used in formulating the various trading methods (the author wants to come across     as an applied mathemetician, but he sure looks like a stock trader). There isn't any     obvious connection with Chaos Theory - despite of the weak link between the title and     content, the trading methodologies do work. Most readers think the author's systems to     be a perfect filter and trigger for a short term trading system. He states a goal of     10%/month, but when these filters & axioms are correctly combined with a good momentum     system, much more is a probable result.    There's better written & more informative books out there for less money, but this author     does have the "Holy Grail" of stock trading. A set of filters, axioms, and methods which are     the "missing link" for any trading system which is based upon conventional indicators.    This indicator plots the oscillator as a histogram where periods fit for buying are marked     as blue, and periods fit for selling as red. If the current value of AC (Awesome Oscillator)     is over the previous, the period is deemed fit for buying and the indicator is marked blue.     If the AC values is not over the previous, the period is deemed fir for selling and the indicator     is marked red.**********************************/var fpArray = new Array();var bInit = false;function preMain() {    setStudyTitle("Awesome Oscillator");    setCursorLabelName("ABillW AO", 0);    setDefaultBarThickness(2,0);    setPlotType(PLOTTYPE_HISTOGRAM);    var x=0;    fpArray[x] = new FunctionParameter("nLengthSlow", FunctionParameter.NUMBER);	with(fpArray[x++]){        setLowerLimit(1);		        setDefault(34);    }    fpArray[x] = new FunctionParameter("nLengthFast", FunctionParameter.NUMBER);	with(fpArray[x++]){        setLowerLimit(1);		        setDefault(5);    }      }var xCalc_hl2 = null;function main(nLengthFast, nLengthSlow) {var nBarState = getBarState();var nAO = 0;var nAO1 = 0;    if (nBarState == BARSTATE_ALLBARS) {        if (nLengthSlow == null) nLengthSlow = 34;        if (nLengthFast == null) nLengthFast = 5;    }    if (bInit == false) {        xCalc_hl2  = efsInternal("CalcSMA1_SMA2", nLengthFast, nLengthSlow);        bInit = true;    }    nAO = xCalc_hl2.getValue(0);    nAO1 = xCalc_hl2.getValue(-1);    if (nAO1 == null) return;    if (nAO > nAO1) setBarFgColor(Color.blue);        else setBarFgColor(Color.red);    return nAO;}var bSecondInit = false;var xSMA1_hl2 = null;var xSMA2_hl2 = null;function CalcSMA1_SMA2(nLengthFast, nLengthSlow) {var nRes = 0;var SMA1 = 0;var SMA2 = 0;    if (bSecondInit == false) {        xSMA1_hl2 = sma(nLengthFast, hl2());        xSMA2_hl2 = sma(nLengthSlow, hl2());        bSecondInit = true;    }    SMA1 = xSMA1_hl2.getValue(0);    SMA2 = xSMA2_hl2.getValue(0);    if (SMA1 == null || SMA2 == null) return;    nRes = SMA1 - SMA2;    return nRes;}