Please See Below
int total=ObjectsTotal();
int count=0; int skip=-1;
int index=0;
string name; int type;
Print(ObjColor);
if (LoopDirection=="z-a" || LoopDirection=="newest-to-oldest")
Please See Below
int total=ObjectsTotal();
int count=0; int skip=-1;
int index=0;
string name; int type;
Print(ObjColor);
if (LoopDirection=="z-a" || LoopDirection=="newest-to-oldest")
Hi,
For each Object block is printing colour code to experts log.
Could you please turn this off.
Thanks
Hi,
I am running local version - time problem was a web one to show you an issue.
I will prepare an example project & share to you so you can simulate.
Thanks
Thanks
Perhaps you can have the best of both scenarios e.g
If condition adjust value contains variable name - replace variable name with ToDigits(variable_value_here,CurrentSymbol());
Else
Check & replace like you currently do
Hi,
On Local Version.
Please find attached picture showing issue - when I use a variable for the adjust the output is not merging correctly with
your toDigits code.
If you could fix that would be great.
Thanks
Hi,
Just wondering if u could have a check on the code from your side.
I have had my EA running on demo for a few days
It will open through the grid order block a single pending limit order on certain conditions
I have it get the mins expiry from a variable.
Occasionally it will have expiry 2 days from order place instead of 60 mins.
Most orders have expiry in the comments of 60 mins hour - its very strange.
Also - are you aware of any issue with virtual stops on backtest - I find sometimes it can become confused & the stop doesn't get triggered.
Thankyou
Hi,
In the project variables - for your output into the mql file can you allow it to support just the variable name declaration.
Because if I don't supply a value the MQL file will not compile as your output is assuming all variables will have values.
datetime MyDate =; fails build
if no value consider output as:
datetime MyDate;
Thanks
Hi,
Depending on tick data there is a line of code inside iCandleID that can cause a divide by zero problem
Sometimes I get the start of day candle open value & it will try get candle ID for specific time
CandleID = (int)MathCeil((double)mins_diff/(double)mins_tf);
could you consider some protection on this
if(mins_tf>0){
CandleID = (int)MathCeil((double)mins_diff/(double)mins_tf);
}
Yes - I meant to say I have put Print() custom mql4 but after some time they stop getting run.
I will try with the comment blocks and see what I can figure out
Hi,
I have adjusted to 5 minutes & still after the 24 hours passes the code stops running. Until the broker does a MT4 refresh at 00:00 GMT.
Any other ideas - I have put trace blocks on but it seems to get thrown off at some point in time.
Thanks
Hi,
I have made a cut down version of some blocks I'm having problems with getting them to work nice with each other.
Can you please run this for a 24 hour period on a MT platform (not backtesting)
You will see that it places a line at the start of each session.
It works fine for me until the first session of the next calendar day after the app was started - it will no longer place any bar / do any more work.
If I recompile or adjust EA properties it starts working again until the next calendar day after the app was started.
https://fxdreema.com/shared/1J0Pu7MKc
Thanks
Hi,
I have installed the latest version locally (I had an older version installed before) but on my system now the project variables & constants windows do not have drop down lists for the 'Type' option.
Is there something you can suggest?
Thanks
Hi,
I have attached a sample project - and it has a problem when you have Trade 1 - use partial close then open a new trade with Virtual SL then Partial Close again Trade 1 the Virtual SL on trade 2 is removed.
You can see this happen when block 12 is reached - virtual SL for block13 trade is deleted.
Also - with Virtual SL - is it possible to have your code skip the checks done in AlignStopLoss because Virtual Stops are completely local to the EA & no checks really needed against minimum stops - I find sometimes I get messages like: Warning: Too short SL requested.
One feature request - is it possible to have scroll bar to Variable Screen Popup & button at bottom to close because if project has many variables its very hard to get up to the top to close & have to drag & hold.
Also with variable value field if mouse wheel is used on field it goes -1, -2 etc - this could be a problem if you don't notice this.
Thanks
......
virt_sl_test.xml
I have checked - the on trade blocks seem to work now - one yellow tick then one yellow tick.
But when I use the condition block #18 on my sample I get yellow tick for partial & yellow tick for full close.
I think there might be an issue with the condition check via on trade?
https://fxdreema.com/shared/wRR6igKD
Thanks
Hi,
Thanks for your improvements - I checked but seem to be having problems getting it to work as I'd expect - please see a project I have shared.
https://fxdreema.com/shared/DP2rSHFub
You will see I am trying to detect using the On Trade with Filter for Partially Closed or Fully Closed
What I need to do is know when a trade is fully closed or partially closed & do different things depending on this both via the On Tick & On Trade tabs.
You will see from the sample the yellow arrow is drawn correctly for partial close but also for when a partial trade is fully closed.
In my example I would expect a blue arrow to draw when any trade is fully closed.
Thanks
-David
Please see the picture.
The trades I test with do have stop loss set.
The line of code in your function currently its:
if((attrTakeProfit()-ask())>=toDigits(PipsAway)) {GoToNext=true;}
If I make it:
if((attrTakeProfit()-ask())<=toDigits(PipsAway)) {GoToNext=true;}
With the modification it seems to take profit at 50%, 60%, 70% away from the TP price (depending on setting).
Without changing your code in my testing (depending on the percentage value) on a buy order it will take profit really soon (actually at a loss) or sometimes never take a profit - depending on the percentage value.
Please let me know if you cant duplicate the issue & I will setup a new project and share it with you.

Thanks
-David
......
tp_percent.png
Hi,
I think there is a problem with the block pips away from TP
It will not take profit correctly on a buy order - I tried with many percentages from 50 to 150.
I think the error is with the line in your function:
if((attrTakeProfit()-ask())>=toDigits(PipsAway)) {GoToNext=true;}
I think it should evaluate as less than or equal to - because most of the time the order always evaluates as more than PipsAway - And we only want this block to continue if it has just reached a little less than the pips away from TP.
I havent tried with the sell type - perhaps there is a logic issue there also?
Thanks
-David
Hi,
I have a situation where I need to flag that I have partially closed a trade & I reset the partial close flag after the trade is fully closed using the on trade - Trade Closed.
The problem is the on trade - Trade Closed event fires even for partial close - which is a problem for my flag - I only need it to reset on full close.
Is there any way the on trade events can treat partial & full close different - perhaps a filter in drop down for on trade Trade Close block to handle a new partial close option & change existing close option so it will not pass the block if it trade was only partially closed?
Thanks
-David
That is great - will that be available in the next build of the local version?
Thanks - for the clarification - for some reason I thought that returning 30 minutes from unix time from 1970 & adding it to unix time for now would be the same as adding 30 minutes to now.
One feature that would be handy from your suggestion - is to have support for Time Mode - Full DT Stamp (Unix) - as the current Time Stamp suggests its only for HH:MM? - With this feature I could set a variable value that is time shifted forward from trade open unix timestamp without needing to use custom MQL.