function run() {
set(RULES|PEEK|OPENEND|TESTNOW|PLOTNOW|LOGFILE);
StartDate = 2014;
EndDate = 2016;
BarPeriod = 60;
LookBack = 100;
NumWFOCycles = 5;
DataSplit = 80;
if(Train) Hedge = 2;
MaxBars = slider(2,0,0,100000,"MaxBars","MaxBars");
PlotWidth = slider(3,1500,1500,10000,"PlotWidth","PlotWidth");
asset("EURUSD");
Spread = Commission = Slippage = RollLong = RollShort = 0;
vars Close = series(priceClose());
var Sig1 = scale(ATR(10)-ATR(50), 100);
var Sig2 = (Close[0]-Close[1])/Close[1];
var Sig3 = (Close[0]-Close[5])/Close[5];
var Sig4 = (Close[0]-Close[10])/Close[10];
var ObL = -1;
var ObS = -1;
if(priceClose(-5) - priceClose(0) > 20*PIP) ObL = 1;
if(priceClose(-5) - priceClose(0) < -20*PIP) ObS = 1;
LifeTime = 5;
var l = adviseLong (PERCEPTRON+BALANCED, ObL , Sig1, Sig2, Sig3, Sig4);
var s = adviseShort(PERCEPTRON+BALANCED, ObS , Sig1, Sig2, Sig3, Sig4);
if(!Train) {
if(l > 0 and s < 0) reverseLong(1); else
if(s > 0 and l < 0) reverseShort(1);
}
ObL = ifelse(ObL>0,ObL,0);
ObS = ifelse(ObS>0,ObS,0);
l = ifelse(l>0,l,0);
s = ifelse(s>0,s,0);
plot("ObL", ObL, NEW, GREEN);
plot("ObS",-ObS, 0, RED);
plot("l", l, NEW, GREEN);
plot("s",-s, 0, RED);
}