Hi MrTools,mrtools wrote: Sun Aug 09, 2020 2:27 amAnother wayCode: Select all
Code: Select all
#define _doNothing 0 #define _doBuy 1 #define _doSell 2 int start() { int doWhat = _doNothing; double trendc = iCustom(NULL,0,"step one more average 2.3 mtf",11,BarShift); // Buffer 11 double trendp = iCustom(NULL,0,"step one more average 2.3 mtf",11,BarShift+1); // Buffer 11 if (trendc != trendp) if (trendc == 1) doWhat = _doBuy; else doWhat = _doSell; if (doWhat ==_doNothing) return(0);
thank you for your reply, I have modified your code like below:
Code: Select all
#define _doNothing 0
#define _doBuy 1
#define _doSell 2
int OneMoreAverageIndicator()
{
int i;
int BarShift = iBarShift(NULL,TimeFrame,Time[i],0); // BarShift 0
int OneMoreAverageSignal = 0;
int doWhat = _doNothing;
double trendc = iCustom(NULL,0,"step one more average 2.3 mtf",11,BarShift); // Buffer 11 gives 1 and -1
double trendp = iCustom(NULL,0,"step one more average 2.3 mtf",11,BarShift+1); // Buffer 11 +1 bar
if (trendc != trendp)
if (trendc == 1)
doWhat = _doBuy;
else doWhat = _doSell;
if (doWhat==1) OneMoreAverageSignal=1;
if (doWhat==2) OneMoreAverageSignal=-1;
if (doWhat ==_doNothing) return(0);
return (OneMoreAverageSignal);
}
It is not placing trades even tough the buffer explorer is showing 1 and -1 signal on buffer 11.