Best forums for discussing beginner-friendly MQL4 scripting?

Jan 29, 2017 at 08:16
518 Views
12 Replies
Member Since Jan 25, 2017   12 posts
Jan 29, 2017 at 08:16 (edited Jan 29, 2017 at 01:30)
I'm trying to devise a way to calculate a Breakeven point across multiple orders, then update my orders once the threshold has been crossed across the multiple pair average.

I would also like to calculate a Take Profit across multiple orders, then update my take profit when new orders are entered.

This is something I intuitively do while manually trading, but I'm having some difficulty typing it out.

How would you break this down in pseudo-code? Are there some beginner-friendly MQL4 scripting forums to discuss this sort of thing?
Member Since Sep 20, 2014   365 posts
Jan 29, 2017 at 13:02
Well, you can start by clearly defining what you want to do. I can see you haven't.

You're talking about apples and pears. First its BE on multiple orders (or is that positions as orders haven't been hit yet to create positions ?) and then it's multiple pairs average, so how does that work on say Eurusd at 1.20 v. UsdJpy on 121.00 something ? What's the average of a 100 units EurUsd at 1.20 and 112 units UsdJpy at 121.00?

To do what you want to do, if I read it correctly, you'd have to work out the weighted average on each pair you're trading, and then convert ALL OF THEM to a USD value, iow's create a USD weighted average of the weighted averages of your positions. If you intend to do it correctly that is. And to code that is a shit load of work. At least a thousand lines of code, maybe more.

It's not for an amateur. You need to know what you're doing to do this. But doing it will be absolutely invaluable to your trading. It is well worth doing even if it is difficult. And it's not valuable because of any result it gives you, it's valuable because it will teach you how to view fx positions as quantifiable assets and calculate their value at any given time.

In effect it also means you're trading USD against everything. Is that what you want to do ? Because that's what you're about to do. And USD moves around in value all the time, so your targets are moving.

So now that we've had a look at a few of the details, tell me clearly and concisely what you want to do and I will see if I can help.

In the meantime I suggest a bit of study on weighted averages, that's essentially your question: https://www.investopedia.com/terms/w/weightedaverage.asp
Member Since Sep 20, 2014   365 posts
Jan 29, 2017 at 13:17
As a footnote. The people who can do these calcs are the ones who can trade fx. It's an absolute minimum requirement in my humble opinion.
Member Since Aug 20, 2009   266 posts
Jan 30, 2017 at 08:11
Here you go........it is a function that takes a MagicNumber and Symbol and returns the Weighted-Cost Average entry price for all the orders. You simply add your TP to that price........

//+------------------------------------------------------------------+
double Get_WCA_Entry(int l_Magic, string l_Symbol)
{
double
Entry,
Price_x_Lots=0,
Sum_Lots=0,
WCA_TP=0;
int dig = (int)MarketInfo(l_Symbol,MODE_DIGITS);
//|............
for(int i = OrdersTotal()-1;i>=0;i--){
if(OrderSelect(i,SELECT_BY_POS)){
if(OrderType()>1)continue;
if(OrderMagicNumber()==l_Magic){
if(OrderSymbol()==l_Symbol){
Price_x_Lots += OrderOpenPrice() * OrderLots();
Sum_Lots += OrderLots();

}
}
}
}
if(Sum_Lots==0){
Print(OrderSymbol() + ' divide zero error trapped in Get_WCA_Entry. l_Symbol = ' + l_Symbol);
return(-1);
}
Entry = Price_x_Lots/Sum_Lots;
return(Entry);
}
//+------------------------------------------------------------------+
Wealth Creation Through Technology
Member Since Sep 20, 2014   365 posts
Jan 30, 2017 at 08:52
So @compuforexpamm, where exactly in this is the conversion to compare say a JPY position to a EURO position or a USD position to compare 'once the threshold has been crossed across the multiple pair average '?

Each pair has to go to a single value to be comparable. That code is useless for his purposes.
Member Since Oct 08, 2016   58 posts
Feb 07, 2017 at 12:32
fxftw,

if you are fortunate to find a good software composer, please forward his contact information to me when you are finished with him.

I ask for good composer with good hygiene habits and good manners.

Thank you.

Member Since Sep 20, 2014   365 posts
Feb 07, 2017 at 12:54 (edited Feb 07, 2017 at 12:55)
Can't ban me in all threads Zero.

I have to ask, why do you even still try ?
Member Since Oct 08, 2016   58 posts
Feb 08, 2017 at 03:04
why do i try?

you are assuming, perhaps incorrectly, that i have been sitting on my hands...

Member Since Sep 20, 2014   365 posts
Feb 08, 2017 at 04:51
Well, more the point why are you looking at people to code for you ? Fingers fall off or something ?
Member Since Oct 08, 2016   58 posts
Feb 08, 2017 at 04:55
Member Since Sep 20, 2014   365 posts
Feb 08, 2017 at 06:03 (edited Feb 08, 2017 at 06:03)
You can code. Why are you looking to get people to code for you ? What's really going on ? But then again it doesn't really matter, does it?

I think I'll go drink beer at the pool for a few hours. Good luck with whatever the latest scheme is.
Member Since Feb 22, 2011   4862 posts
Feb 09, 2017 at 16:05
benchmarkpro posted:
fxftw,

if you are fortunate to find a good software composer, please forward his contact information to me when you are finished with him.

I ask for good composer with good hygiene habits and good manners.

Thank you.

You dont seem to have
good hygiene habits