Você está na página 1de 3

______________________________Notes________________________________________________

______________________________
Weekly chart can only be used to ride trends. Usually a cross down captures the
whole (W) leg, but we give up some.

_____________________________#RSI___________________________________
# TD Ameritrade IP Company, Inc. (c) 2007-2017
#

declare lower;

input length = 14;


input over_Bought = 70;
input over_Sold = 30;
input price = close;
input averageType = AverageType.WILDERS;

def NetChgAvg = MovingAverage(averageType, price - price[1], length);


def TotChgAvg = MovingAverage(averageType, AbsValue(price - price[1]), length);
def ChgRatio = if TotChgAvg != 0 then NetChgAvg / TotChgAvg else 0;

plot RSI = 50 * (ChgRatio + 1);


plot OverSold = over_Sold;
plot OverBought = over_Bought;

RSI.DefineColor("OverBought", GetColor(5));
RSI.DefineColor("Normal", GetColor(7));
RSI.DefineColor("OverSold", GetColor(1));
RSI.AssignValueColor(if RSI > over_Bought then RSI.color("OverBought") else if RSI
< over_Sold then RSI.color("OverSold") else RSI.color("Normal"));
OverSold.SetDefaultColor(GetColor(8));
OverBought.SetDefaultColor(GetColor(8));

_____________________________#McClellanOscillator__________________________________
_
#
# TD Ameritrade IP Company, Inc. (c) 2009-2017
#

declare lower;

input exchange = {default NYSE, NASDAQ, AMEX};


input fastLength = 19;
input slowLength = 39;
input over_bought = 100;
input over_sold = -100;
input ratioAdjusted = No;

plot McClellanOsc = reference McClellanSummationIndex(exchange = exchange, "fast


length" = fastLength, "slow length" = slowLength, "ratio adjusted" =
ratioAdjusted).mcClellanOsc;
plot OverBought = over_bought;
plot OverSold = over_sold;
plot ZeroLine = 0;

McClellanOsc.SetDefaultColor(GetColor(1));
OverBought.SetDefaultColor(GetColor(5));
OverSold.SetDefaultColor(GetColor(5));
ZeroLine.SetDefaultColor(GetColor(3));
_______________________________McClellanSummationIndex_____________________________
__
#
# TD Ameritrade IP Company, Inc. (c) 2009-2017
#

declare lower;

input exchange = {default NYSE, NASDAQ, AMEX};


input fastLength = 19;
input slowLength = 39;
input ratioAdjusted = No;
input isCumulative = Yes;

def advances;
def declines;
switch (exchange) {
case NYSE:
advances = close("$ADVN");
declines = close("$DECN");
case NASDAQ:
advances = close("$ADVN/Q");
declines = close("$DECN/Q");
case AMEX:
advances = close("$ADVA");
declines = close("$DECA");
}
def breadth;
def neutral_level;
def over_bought;
def over_sold;

if (ratioAdjusted) {
breadth = 1000 * (advances - declines) / (advances +
declines);
neutral_level = 0;
over_bought = 500;
over_sold = -500;
} else {
breadth = advances - declines;
neutral_level = 1000;
over_bought = Double.NaN;
over_sold = Double.NaN;
}

def emaFastCorr = ExpAverage(CompoundValue(1, if !IsNaN(breadth) then breadth else


emaFastCorr[1], 0), fastLength);
def emaSlowCorr = ExpAverage(CompoundValue(1, if !IsNaN(breadth) then breadth else
emaSlowCorr[1], 0), slowLength);
def mcClellanOsc = if !IsNaN(close) then emaFastCorr - emaSlowCorr else Double.NaN;
def mcClellanSummationIndex = mcClellanSummationIndex[1] + if !IsNaN(breadth) then
mcClellanOsc else 0;

plot SummationIndex;
if IsNaN(close) {
SummationIndex = Double.NaN;
} else if (isCumulative) {
SummationIndex = neutral_level + mcClellanSummationIndex;
} else {
SummationIndex = neutral_level + mcClellanOsc - (10 * emaFastCorr + 20 *
emaSlowCorr);
}
plot OverBought = over_bought;
plot OverSold = over_sold;
plot NeutralLevel = neutral_level;

SummationIndex.SetDefaultColor(GetColor(1));
OverBought.SetDefaultColor(GetColor(5));
OverSold.SetDefaultColor(GetColor(5));
NeutralLevel.SetDefaultColor(GetColor(7));

Você também pode gostar