Você está na página 1de 2

//Calcula RANGE do PAPEL e sua minima

int PERIODO_DESVIO_PADRAO=252;

r = newLines();
def media = newLineData();
def stdDev = newLineData();

//Verifica a diferenca entre a minima e a ultima


def high=high();
def low=low();

def range = high-low;


def range2 = newLineData();

//Verifica a diferen�a entre abertura e fechamento


def close = close();
def open = open();
def direcao = close-open;

def quantidadeDePeriodos = range.size();

double soma = 0;
double med = 0;

def pos=0;

for ( def i = 0; i < quantidadeDePeriodos; i++ ) {


if (direcao.value(i) >= 0) {
range2.add(range.value(i), 0,255,0);
}else {
range2.add(range.value(i), 255,0,0);
}
soma += range.value(i);
pos=i+1;

if (i> 0) {
media.add(soma / i+1);
}else {
media.add(0);
}
}

if (PERIODO_DESVIO_PADRAO > quantidadeDePeriodos) {


PERIODO_DESVIO_PADRAO = (int) ( quantidadeDePeriodos/2 );
}

stdDev = STDDEV(range, PERIODO_DESVIO_PADRAO);

range2.setLabel( "RANGE" );
range2.setType(3);
r.add(range2);

media.setLabel( "MEDIA" );
media.setType(4);
media.setColor(255,255,255);
media.setThickness(2);
r.add(media);

stdDev.setLabel( "STDDEV" );
stdDev.setType(4);
stdDev.setColor(0,0,255);
stdDev.setThickness(2);
r.add(stdDev);

Você também pode gostar