Hello, can anyone help me with this indi, i want to make it have an alert on current candle, at the moment how i modified it it gives alert on every candle, whatever it have an arrow or not. thanks in advance
//+------------------------------------------------------------------+
//| EMA-Crossover_Signal.mq4 |
//| Copyright © 2005, Jason Robinson (jnrtrading) |
//| http://www.jnrtading.co.uk |
//+------------------------------------------------------------------+
/*
+------------------------------------------------------------------+
| Allows you to enter two ema periods and it will then show you at |
| Which point they crossed over. It is more usful on the shorter |
| periods that get obscured by the bars / candlesticks and when |
| the zoom level is out. Also allows you then to remove the emas |
| from the chart. (emas are initially set at 5 and 6) |
+------------------------------------------------------------------+
*/
#property copyright "Copyright © 2005, Jason Robinson (jnrtrading)"
#property link "http://www.jnrtrading.co.uk"
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 DodgerBlue
#property indicator_color2 Red
double CrossUp[];
double CrossDown[];
extern int FasterMode = 1; //0=sma, 1=ema, 2=smma, 3=lwma
extern int FasterMA = 5;
extern int SlowerMode = 1; //0=sma, 1=ema, 2=smma, 3=lwma
extern int SlowerMA = 5;
extern bool AlertON=true;
double alertTag;
double control=2147483647;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0, DRAW_ARROW, EMPTY);
SetIndexArrow(0, 233);
SetIndexBuffer(0, CrossUp);
SetIndexStyle(1, DRAW_ARROW, EMPTY);
SetIndexArrow(1, 234);
SetIndexBuffer(1, CrossDown);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start() {
int limit, i, counter;
double fasterMAnow, slowerMAnow, fasterMAprevious, slowerMAprevious, fasterMAafter, slowerMAafter;
double Range, AvgRange;
int counted_bars=IndicatorCounted();
//---- check for possible errors
if(counted_bars<0) return(-1);
//---- last counted bar will be recounted
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
for(i = 0; i <= limit; i++) {
counter=i;
Range=0;
AvgRange=0;
for (counter=i ;counter<=i+9;counter++)
{
AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]);
}
Range=AvgRange/10;
fasterMAnow = iMA(NULL, 0, FasterMA, 0, FasterMode, PRICE_CLOSE, i);
fasterMAprevious = iMA(NULL, 0, FasterMA, 0, FasterMode, PRICE_CLOSE, i+1);
fasterMAafter = iMA(NULL, 0, FasterMA, 0, FasterMode, PRICE_CLOSE, i-1);
slowerMAnow = iMA(NULL, 0, SlowerMA, 0, SlowerMode, PRICE_OPEN, i);
slowerMAprevious = iMA(NULL, 0, SlowerMA, 0, SlowerMode, PRICE_OPEN, i+1);
slowerMAafter = iMA(NULL, 0, SlowerMA, 0, SlowerMode, PRICE_OPEN, i-1);
if ((fasterMAnow > slowerMAnow) && (fasterMAprevious < slowerMAprevious) && (fasterMAafter > slowerMAafter)) {
CrossUp = Low - Range*0.5;
}
else if ((fasterMAnow < slowerMAnow) && (fasterMAprevious > slowerMAprevious) && (fasterMAafter < slowerMAafter)) {
CrossDown = High + Range*0.5;
}
if (AlertON==true && i==1 && CrossUp > CrossDown && alertTag!=Time[0]){
Alert("EMA Cross Trend going Down on ",Symbol()," ",Period());
alertTag = Time[0];
}
if (AlertON==true && i==1 && CrossUp < CrossDown && alertTag!=Time[0]){
Alert("EMA Cross Trend going Up on ",Symbol()," ",Period());
alertTag = Time[0];
}
}
return(0);
}
Re: MT4 Indicator requests and ideas
166522 great ideas
Kuskus Starlight Averages
Heikin Ashi Macd
would please ask Mr Tools to add averages to the this Kuskus Starlight,
gracias
Kuskus Starlight Averages
Heikin Ashi Macd
would please ask Mr Tools to add averages to the this Kuskus Starlight,
gracias
- These users thanked the author Chickenspicy for the post:
- Jedidiah
0 + 0 = 0
Infinite / Infinite = 1
1 way to Heaven & it matters
people only serve God or money coincidence?
Infinite / Infinite = 1
1 way to Heaven & it matters
people only serve God or money coincidence?
Re: MT4 Indicator requests and ideas
16653nino1906 wrote: Thu Oct 06, 2022 1:58 am Hello, can anyone help me with this indi, i want to make it have an alert on current candle, at the moment how i modified it it gives alert on every candle, whatever it have an arrow or not. thanks in advance
//+------------------------------------------------------------------+
//| EMA-Crossover_Signal.mq4 |
//| Copyright © 2005, Jason Robinson (jnrtrading) |
//| http://www.jnrtading.co.uk |
//+------------------------------------------------------------------+
/*
+------------------------------------------------------------------+
| Allows you to enter two ema periods and it will then show you at |
| Which point they crossed over. It is more usful on the shorter |
| periods that get obscured by the bars / candlesticks and when |
| the zoom level is out. Also allows you then to remove the emas |
| from the chart. (emas are initially set at 5 and 6) |
+------------------------------------------------------------------+
*/
#property copyright "Copyright © 2005, Jason Robinson (jnrtrading)"
#property link "http://www.jnrtrading.co.uk"
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 DodgerBlue
#property indicator_color2 Red
double CrossUp[];
double CrossDown[];
extern int FasterMode = 1; //0=sma, 1=ema, 2=smma, 3=lwma
extern int FasterMA = 5;
extern int SlowerMode = 1; //0=sma, 1=ema, 2=smma, 3=lwma
extern int SlowerMA = 5;
extern bool AlertON=true;
double alertTag;
double control=2147483647;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0, DRAW_ARROW, EMPTY);
SetIndexArrow(0, 233);
SetIndexBuffer(0, CrossUp);
SetIndexStyle(1, DRAW_ARROW, EMPTY);
SetIndexArrow(1, 234);
SetIndexBuffer(1, CrossDown);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start() {
int limit, i, counter;
double fasterMAnow, slowerMAnow, fasterMAprevious, slowerMAprevious, fasterMAafter, slowerMAafter;
double Range, AvgRange;
int counted_bars=IndicatorCounted();
//---- check for possible errors
if(counted_bars<0) return(-1);
//---- last counted bar will be recounted
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
for(i = 0; i <= limit; i++) {
counter=i;
Range=0;
AvgRange=0;
for (counter=i ;counter<=i+9;counter++)
{
AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]);
}
Range=AvgRange/10;
fasterMAnow = iMA(NULL, 0, FasterMA, 0, FasterMode, PRICE_CLOSE, i);
fasterMAprevious = iMA(NULL, 0, FasterMA, 0, FasterMode, PRICE_CLOSE, i+1);
fasterMAafter = iMA(NULL, 0, FasterMA, 0, FasterMode, PRICE_CLOSE, i-1);
slowerMAnow = iMA(NULL, 0, SlowerMA, 0, SlowerMode, PRICE_OPEN, i);
slowerMAprevious = iMA(NULL, 0, SlowerMA, 0, SlowerMode, PRICE_OPEN, i+1);
slowerMAafter = iMA(NULL, 0, SlowerMA, 0, SlowerMode, PRICE_OPEN, i-1);
if ((fasterMAnow > slowerMAnow) && (fasterMAprevious < slowerMAprevious) && (fasterMAafter > slowerMAafter)) {
CrossUp = Low - Range*0.5;
}
else if ((fasterMAnow < slowerMAnow) && (fasterMAprevious > slowerMAprevious) && (fasterMAafter < slowerMAafter)) {
CrossDown = High + Range*0.5;
}
if (AlertON==true && i==1 && CrossUp > CrossDown && alertTag!=Time[0]){
Alert("EMA Cross Trend going Down on ",Symbol()," ",Period());
alertTag = Time[0];
}
if (AlertON==true && i==1 && CrossUp < CrossDown && alertTag!=Time[0]){
Alert("EMA Cross Trend going Up on ",Symbol()," ",Period());
alertTag = Time[0];
}
}
return(0);
}
That version will repaint, check in the forum there are a bunch of different non-repaint ma/average cross with all the alerts.
Re: MT4 Indicator requests and ideas
16654It is actually a fisher transform which usually doesn't use any averages but can add some pre-smoothing to the price which may cause some lag, which isn't always a bad thing.chickensword wrote: Thu Oct 06, 2022 4:20 am 2 great ideas
Kuskus Starlight Averages
Heikin Ashi Macd
would please ask Mr Tools to add averages to the this Kuskus Starlight,
gracias
- These users thanked the author mrtools for the post (total 2):
- Chickenspicy, Jedidiah
Re: MT4 Indicator requests and ideas
16655oh okay never mind then , it already lags enough lol, thanksmrtools wrote: Thu Oct 06, 2022 5:40 am It is actually a fisher transform which usually doesn't use any averages but can add some pre-smoothing to the price which may cause some lag, which isn't always a bad thing.
- These users thanked the author Chickenspicy for the post:
- Jedidiah
0 + 0 = 0
Infinite / Infinite = 1
1 way to Heaven & it matters
people only serve God or money coincidence?
Infinite / Infinite = 1
1 way to Heaven & it matters
people only serve God or money coincidence?
Re: MT4 Indicator requests and ideas
16656Hi, MRtools, Jimmy
Is there away to use the 'custom timeframe to use' setting without a period converter?
Is there away to use the 'custom timeframe to use' setting without a period converter?
- These users thanked the author Tradehunter for the post:
- Chickenspicy
Re: MT4 Indicator requests and ideas
16657Can be used on non-standard Renko/Range bar like timeframes. Other than that, not sure.Tradehunter wrote: Thu Oct 06, 2022 7:39 am Hi, MRtools, Jimmy
Is there away to use the 'custom timeframe to use' setting without a period converter?
- These users thanked the author mrtools for the post (total 2):
- Chickenspicy, Jedidiah
Re: MT4 Indicator requests and ideas
16658Mr Tools is there anyway to add price options or averages to this dpo indi?
- These users thanked the author Chickenspicy for the post:
- Jedidiah
0 + 0 = 0
Infinite / Infinite = 1
1 way to Heaven & it matters
people only serve God or money coincidence?
Infinite / Infinite = 1
1 way to Heaven & it matters
people only serve God or money coincidence?
Re: MT4 Indicator requests and ideas
16659Posted a version here Various indicatorschickensword wrote: Thu Oct 06, 2022 10:03 am Mr Tools is there anyway to add price options or averages to this dpo indi?
- These users thanked the author mrtools for the post (total 2):
- Chickenspicy, Jedidiah
Re: MT4 Indicator requests and ideas
16660Someone added the open line on this Session indicator
Request:
If possible add the Open line as an option underneath the "style" section.
If that's not possible, please add that I can change the open colour individually for each open.
Thanks in advance
Request:
If possible add the Open line as an option underneath the "style" section.
If that's not possible, please add that I can change the open colour individually for each open.
Thanks in advance
- These users thanked the author PumbaPLS for the post (total 2):
- Jedidiah, Chickenspicy
You cannot solve a problem from the same consciousness that created it. You must learn to see the world anew