// Downloaded From https://www.WiseStockTrader.com
// NroContratos, Eu criei esta variavel para tentar fixar a quantidade de contratos por operacoes
NroContratos = Param( "Nro Contratos:", 10, 1, 100, 1 ) ; 

// MarginDeposit, Valor da margem de deposito para 1 contrato, você pode definir também na página Symbol-InformaçãO
MarginDeposit = Param( "Margem de 1 contrato:", 2121.34, 1, 20000, 0.01) ; 

// RoundLotSize, Numero de acoes que compem um lote, no caso de Fututo a relacao é 1 para 1
RoundLotSize = 1 ; 

/* PointValue, define quanto vai ganhar por cada ponto. No brasil para cada ponto Vc ganha 20% = 0.2 */
PointValue = 0.2;

/* PositionSize, use 20% do patrimônio (20% = -20) Ou um Vamor monetario Ex. $10.000,00 
No AmiBroker a quantidade de contratos é calculada a partir do PositionSize/MarginDeposit, minha intencao aqui é
informar apenas a quantidade de contratos que quero comprar em cada trader, entao calculo a PositionSize da seguinte forma
'( NroCOntratos + 0.5 ) * MarginDeposit', onte a soma de 0.5 é apenas para compensar arredondamentos que o AmiBroquer faz  */
PositionSize = ( NroCOntratos + 0.5 ) * MarginDeposit; 

ValorIFR = Optimize("pIFR",5,4,30,1); //Param("pIFR",26,5,30,1);
saidaIFR = Optimize("pIFR",90,4,98,1);
//media = Optimize("mediaSaida",5,4,15,1); //Param("mediaSaida",4,4,15,1);

Buy = Cross(ValorIFR,RSI(2));
BuyPrice = Close;

Sell = Cross(RSI(2),saidaIFR);
//Sell = BuyPrice + 200;
SellPrice = Close;

Buy=ExRem(Buy,Sell);
Sell=ExRem(Sell,Buy);

Short = Cross(RSI(2),95);
ShortPrice = Close;

Cover = Cross(30,RSI(2));
//Cover = ShortPrice - 200;
CoverPrice = Close;

Short=ExRem(Short,Cover);
Cover=ExRem(Cover,Short);

shapeEntry = Buy * shapeUpArrow + Sell * shapeDownArrow;
PlotShapes( shapeEntry, IIf( Buy, colorGreen, colorRed ), 0, IIf( Buy, Low, High));

shapeVenda = Short * shapeDownArrow + Cover * shapeUpArrow;
PlotShapes( shapeVenda, IIf( Short, colorPink, colorBlue ), 0, IIf( Short, High, Low));