Você está na página 1de 2

Input

NivelCruzamento(32);
MediaRef(0);
TipoMediaRef(0);

MediaCurta(8);
TipoMediaCurta(0);

MediaLonga(20);
TipoMediaLonga(0);

var
Ldidi, Cdidi, NivelP,NivelN: float;

inicio
Ldidi :=DidiIndex(MediaRef, TipoMediaRef, MediaCurta, TipoMediaCurta, MediaLonga,
TipoMediaLonga)|1|;
Cdidi:= DidiIndex(MediaRef, TipoMediaRef, MediaCurta, TipoMediaCurta, MediaLonga,
TipoMediaLonga)|0|;
NivelP:= NivelCruzamento;
NivelN := NivelCruzamento*(-1);

Se( Cdidi[1] < Ldidi[1]) e (Cdidi[0] > Ldidi[0]) e


(Cdidi [1] > NivelN) e (Cdidi[1] < NivelP) e (Ldidi[1] > NivelN) e (Ldidi[1] < NivelP)e
(Cdidi [1] > NivelN) e (Cdidi[1] < NivelP) e (Ldidi[1] > NivelN) e (Ldidi[1] < NivelP)entao
PaintBar(clGreen);

Se (Cdidi[1] > Ldidi[1]) e (Cdidi[0] < Ldidi[0]) e


(Cdidi [1] > NivelN) e (Cdidi[1] < NivelP) e (Ldidi[1] > NivelN) e (Ldidi[1] < NivelP)e
(Cdidi [1] > NivelN) e (Cdidi[1] < NivelP) e (Ldidi[1] > NivelN) e (Ldidi[1] < NivelP)entao
PaintBar(clred);
Plot(Ldidi);
SetPlotColor(1, clBlack );
Plot2(Cdidi) ;
SetPlotColor(2,clLime);
Plot3(0);
SetPlotColor(3, clGray);
Plot4(nivelP);
SetplotColor(4, ClYellow);
Plot5(nivelN);
end;
// Busca Entrada
Se Nao(HasPosition) entao
inicio
iP := CurrentBar;

Se sinalC entao
inicio
alvo := maxima - MinPriceIncrement;
stopLoss := minima + MinPriceIncrement;
BuyLimit(stopLoss);
fim;

Se sinalV entao
inicio
alvo := minima + MinPriceIncrement;
stopLoss := maxima - MinPriceIncrement;
SellShortLimit(stopLoss);
fim;
fim;

// Busca Saída
Se HasPosition entao
inicio
Se IsBought entao
inicio
SellToCoverLimit(alvo);
SellToCoverStop(stopLoss, stopLoss - 7);

// Condição para fechar a posição se o preço estiver acima do alvo após 2 barras
Se (CurrentBar >= iP + 2) e (Fechamento > alvo) entao ClosePosition;
fim;

Se IsSold entao
inicio
BuyToCoverLimit(alvo);
BuyToCoverStop(stopLoss, stopLoss + 7);

// Condição para fechar a posição se o preço estiver abaixo do alvo após 2 barras
Se (CurrentBar >= iP + 2) e (Fechamento < alvo) entao ClosePosition;
fim;

// Condição para fechar a posição após 6 barras


Se (CurrentBar >= iP + 6) entao ClosePosition;
fim;

// Regra de Coloração
if IsBought then
PaintBar(clLime)
else if IsSold then
PaintBar(clRed);

Você também pode gostar