anyone?
qjol:
the only way to know for 100% sure is to check Bar[1]
No, that won't work as I have to check the value of the last bar also.
if(haOpen<=haClose) current_direction = "LONG";
if(haOpen>haClose) current_direction = "SHORT";
So I need to compare haOpen and close from bar[i+1] and then also bar[0]
while(pos >= 0) { haOpen = (ExtMapBuffer3[pos+1] + ExtMapBuffer4[pos+1]) / 2; haClose = (Open[pos] + High[pos] + Low[pos] + Close[pos]) / 4; haHigh = MathMax(High[pos], MathMax(haOpen, haClose)); haLow = MathMin(Low[pos], MathMin(haOpen, haClose)); if(haOpen <haClose) { ExtMapBuffer1[pos] = haLow; ExtMapBuffer2[pos] = haHigh; } else { ExtMapBuffer1[pos] = haHigh; ExtMapBuffer2[pos] = haLow; } ExtMapBuffer3[pos] = haOpen; ExtMapBuffer4[pos] = haClose; //CHanged to bullish //draw on chart if (ExtMapBuffer3[pos] < ExtMapBuffer4[pos] && ExtMapBuffer3[pos+1] > ExtMapBuffer4[pos+1]) //ie colour change { ChangeUp[pos] = ExtMapBuffer3[pos] + 0.0010; } //Alert - check one extra candle back to ensure we are checking closes if (ExtMapBuffer3[pos+1] < ExtMapBuffer4[pos+1] && ExtMapBuffer3[pos+2] > ExtMapBuffer4[pos+2]) //ie colour change { AlertOnce ("We have to buy",1); } //changed to bearish //draw if (ExtMapBuffer3[pos] > ExtMapBuffer4[pos] && ExtMapBuffer3[pos+1] < ExtMapBuffer4[pos+1]) //ie colour change { ChangeDown[pos] = ExtMapBuffer3[pos] + 0.0010; } //alert if (ExtMapBuffer3[pos+1] > ExtMapBuffer4[pos+1] && ExtMapBuffer3[pos+2] < ExtMapBuffer4[pos+2]) //ie colour change { AlertOnce ("We have to sell",1); } pos--; }
This code here should only be checked on a new candle...but when it is the new candle it needs to check the previous candle.
So if pos+1 is green and at the close of pos[0] it changes to red then alert.
But I'm not sure how to code around the fact that a new candle will already be open.
Should I be checking pos+2 and pos+1?
![MQL5 - Language of trade strategies built-in the MetaTrader 5 client terminal](https://c.mql5.com/i/registerlandings/logo-2.png)
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
What is the best way to change this code so that the alert only happens at the end of the candle once we know for sure whether it is going to be green or a red candle?