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
Alarm
How write an alarm for having it only 1 time and not again and again ?
Thanks for help.
Jo
Many functions are here https://www.mql5.com/en/forum/174329
And alert_once thread is here https://www.mql5.com/en/forum/172885
Please check this statement - Need confirmation Please!
Does this say that the Lowest of my indicator (4 bars back) should be less than or equal 0?? If not, how should it be stated?
Does this say that the Lowest of my indicator (4 bars back) should be less than or equal 0?? If not, how should it be stated?
that's not right, you can look post 516 on page 52
the way you calculate lowest of indicator is not correct
that's not right, you can look post 516 on page 52 the way you calculate lowest of indicator is not correct
int currentBar=0;
int endBar=4;
for(currentBar=0;currentBar<endBar; currentBar++)
lowestFG=MathMin(lowestFG, iForex_Grail(Symbol(),0,17,PRICE_CLOSE,currentBar)); //0 = anytime, 17 = maperiod of indicator.
if lowestFG <= 0 then go to next statementWhen I put this into my EA program, it says the iForex_Grail - function is not defined?? Forex_Grail is the name of my custom indicator.
Maybe it is to be stated: lowestFG=MathMin(lowestFG, iCustom(NULL,0,"Forex-Grail Trade Indicator",period,PRICE_CLOSE,currentBar)); ??
Found my error!
Dave
Too many decimal places!! - Please advise.
How do I limit the amount of decimal places a comment statement shows on the graph. Right now it shows a variable result as .00347892, and I want it only to show .0035 (Rounded to the next number)??
int currentBar=0;
int lastBar=4;
for(currentBar=0;currentBar<lastBar; currentBar++)
lowestFG=MathMin(lowestFG, iCustom(NULL,0,"Forex-Grail Trade Indicator",period,PRICE_CLOSE,currentBar));
Print ("Low =",lowestFG);This reads from buffer ' 0 ' of the indicator[0.00 to positive](Works OK!). How do I get it to read from buffer' 1 'of the indicator [0.00 to negative]?
Statement definition: double iCustom( string symbol, int timeframe, string name, ..., int mode, int shift) - No where does it call for a buffer number?????????????? PLEASE HELP!!!! It seems to be locked into buffer ' 0 '.
Please enlighten me!!
Dave
iCustom( string symbol, int timeframe, string name, ..., int mode, int shift)
'mode' is your buffer
iCustom( ... ...indicator parameters here ... , 0, currentBar) - will read from 0 buffer
iCustom( ... ...indicator parameters here ... , 1, currentBar) - will read from 1st buffer
some info here http://docs.mql4.com/indicators/iCustom
lowestFG=9999 should be OK but to be sure can write
lowestFG = iCustom(NULL,0,"Forex-Grail Trade Indicator",period,PRICE_CLOSE,1,currentBar) instead
DoubleToStr function(http://docs.mql4.com/convert/DoubleToStr) will limit # of decimal places, mostly used to get nice looking # fro Print or Alert function. The function will not round but simply cut off unneeded decimal places.
If you use your this double # to compare with another # you still have bunch of # after decimal point
use NormalizeDouble (http://docs.mql4.com/convert/NormalizeDouble) to limit number if decimal places permanently
according to your iCustom your indicator have 2 parameters period and price(PRICE_CLOSE), check if thats correct
This reads from buffer ' 0 ' of the indicator[0.00 to positive](Works OK!).
it is coincidence that it works ok, If your FG indicator has 2 pameters (period & price) you need to add 1 more param in the iCustom like in prev post, if your FG indicator has 1 param(period) then replace PRICE_CLOSE with buffer #(0 or 1 or 2 or ...)