Obrigado leonsmota, tentei não roloou segue abaixo
Input
pBollinger(Verdadeiro);
bMacd (Falso);
Desvio(0.5);
MediaB(9);
Alvo(2.0);
MediaC(7);
MediaL(9);
Sinal(5);
Var
BolChC : Float;
BolChV : Float;
MediaBol : Float;
StopV : Float;
StopC : Float;
pMacd,Msinal : Float;
begin
MediaBol := Media(MediaB,0);
BolChC := BollingerBands(Desvio,MediaB,1)[1];
BolChV := BollingerBands(Desvio,MediaB,1)[0];
Se (pBollinger) e (bMacd = Falso) então
Plot(MediaBol);
Plot(BolChC);
SetPlotColor(1,Clwhite);
Plot2(BolChV);
SetPlotColor(2,Clwhite);
pMacd := MACD(MediaL,MediaC,Sinal);
Msinal := Media(Sinal,pMacd);
Se (bMacd) e (pBollinger = Falso) então
Plot3(pMacd);
Plot4(Msinal);
SetPlotColor(3,ClWhite);
SetPlotColor(4,ClRed);
Se (Isbought) entao
//Verifica se esta comprado
Inicio
SellToCoverLimit(BuyPrice+500,1);
//Alvo
SellToCoverStop(Lowest(low,5),Lowest(low,5),1);
//Stop
Fim;
Se (IsSold) entao
//Verifica se esta vendido
Inicio
BuyToCoverLimit(SellPrice-500,1);
//Alvo
BuyToCoverStop(Highest(high,5),Highest(High,5),1);
//Stop
Fim;
if (BuyPosition = 0) e (SellPosition = 0) entao
//Verifica se existe posição
//Condição de venda
Se (Fechamento[1] > BolChV[1]) e (Fechamento[0] < BolChV[0]) e (pMacd[1] > Msinal[1]) e (pMacd[0] < Msinal[0]) entao
Inicio
SellShortAtMarket;
//Condição de Compra
Se (Fechamento[1] < BolChC) e (Fechamento[0] > BolChC) e (pMacd[1] < Msinal[1]) e (pMacd[0] > Msinal[0]) entao
Inicio
BuyAtMarket;
Fim;
end;
end;