The customized indicator changes from cross to cross up MT4 - page 2

 
Keith Watford #:

If I just edit the post using the code button, next time the poster pastes codes it is 90% certain that they will again post incorrectly.

So then I edit that post and the next and the next?

Anybody that actually reads the forum would know how to do it as they would have seen many many reminders in various posts to post code correctly and to post an MQL4 question in the correct section.

Sadly the majority of posters only come to the forum when they have a problem. They don't realise that so much can be learned by reading other people's topics. That is why you see the same questions asked and the same mistakes made time and time again.

You just described why the forum exists and why metaquotes asked if you'd like to be a moderator.

What you and other users (and me sometimes) don't realize is that time has moved on and there are people interested in this craft from newer generations and no matter what our opinions are about the attention span of those generations , it is neither mine nor yours nor any moderator's or other user's decision to make : whether or not MQ would like to do business with that individual or present a good first impression in this ecosystem or anywhere else . 

With all due respect of course .

PS : If you find the task of moderating outweighs the benefits of being a moderator you can always step down.That won't make you less of a coder or less of a freelancer in any way.

 
Lorentzos Roussos #: You just described why the forum exists and why metaquotes asked if you'd like to be a moderator. What you and other users (and me sometimes) don't realize is that time has moved on and there are people interested in this craft from newer generations and no matter what our opinions are about the attention span of those generations , it is neither mine nor yours nor any moderator's or other user's decision to make : whether or not MQ would like to do business with that individual or present a good first impression in this ecosystem or anywhere else . With all due respect of course . PS : If you find the task of moderating outweighs the benefits of being a moderator you can always step down.That won't make you less of a coder or less of a freelancer in any way.

MetaQuotes does not really care much how the forum is run. If they did, they would have created a well defined set of rules to be applied to all the forum sections of each language. They would also have funded the moderators accordingly if they took it seriously.

That Market has a rules page, the Signals has a rules page, the Freelance has a rules page. Why does the forum not have a rules page?

As it is now, moderators have to define the rules themselves and then try to publish it on a forum thread which floats about and cannot be pinned. Also, each language section have variations depending on whom ever is most active in moderating it.

When one wants to attract organised, dedicated and intelligent users, then the company (and forum) needs to reflect that same attitude. Instead due to this disorganised, "could-not-care-less" attitude by MetaQuotes, the forum users end up emulating the same attitude, and doing as they please without any regard or effort on their part.

In the end, the forum moderator are here due to a love/hate relationship with the platform and do their best to keep things running as well as they possibly can.
 

MetaQuotes does not really care much how the forum is run. If they did, they would have created a well defined set of rules to be applied to all the forum sections of each language. They would also have funded the moderators accordingly if they took it seriously.

That Market has a rules page, the Signals has a rules page, the Freelance has a rules page. Why does the forum not have a rules page?

The forum has a rules page : https://www.mql5.com/en/about/rules

It says "ignoring moderator's remarks" is a violation , but in this case 

it was the 1st violation of the "improvised" (as you said) rule for the code.

What the moderator did here was to punish a user on their first violation 

with them being unfamiliar with the forum because of previous multiple "offenders".

We have had a nice talk about the compensation of mods in the past , we can do it again if you like.

The mods were offered the task ,they accepted there is a reason they don't renounce it.

If Keith or any other mod feels there is not enough in his disposal to "help" or keep the forum

"clean" they can always step down . Obviously each moderator has a tipping point that would make them

step down and not worth it anymore , and obviously "taking it out" on users rather than stepping down is the easiest

choice at all times .

In fact if someone started insulting the ever-annoying-rule-defying-newbie-users you could say the mods would love that attitude and would be okay with it, i wonder if that has ever happened or been happening for years 😇 . (that is a half joke half truth that you can use to "win the argument" if you want and end the conversation)

As it is now, moderators have to define the rules themselves and then try to publish it on a forum thread which floats about and cannot be pinned. Also, each language section have variations depending on whom ever is most active in moderating it.
The moderators should ask for the ability to pin threads if it would be helpful to them.

(or should have asked) and if the admins don't care they should refuse to moderate.

When one wants to attract organised, dedicated and intelligent users, then the company (and forum) needs to reflect that same attitude. Instead due to this disorganised, "could-not-care-less" attitude by MetaQuotes, the forum users end up emulating the same attitude, and doing as they please without any regard or effort on their part.

That is not it , in my opinion . They are unfamiliar with forums . Add to that they are probably accessing it from a mobile device with a small screen (not when sharing code apparently yes).

Now if you want to talk which disorganized example they are following i could show you a google search with 764 results of moderators ignoring obvious violations of the first rule of this forum . That is disorganized too in my humble opinion . 

I believe the forum is here for users who can't find what they are looking for . If the users post in a way that makes providing help to them hard , then inform them about it if you are a mod.

Otherwise , one can always choose to not reply instead of attacking the user on his "cognitive" or "discovery" abilities and school them on life on a niche forum about a programming laguage of a trading platform.

Your guys opinions make me think sometimes that the ideal forum for you is one where no one posts or they only ask about academic level problems or the higher nature of the cosmos and how that affects trading . This is not a golf club gentlemen  😊

 
Good morning, I'm confused about the difference between 'TotalOrdersCount()==0' and 'OrdersTotal()==0'. I hope an explanation of this matter. Thank you.
 
@Fernando Carreiro In practice when I uploaded it on the graph from cross to cross (same Timeframe but different cross) I would like to avoid this thing but I can't figure out hot to do it! Is there a fuction that avoids this behaviour? Thank you very much!
Fernando Carreiro
Fernando Carreiro
  • 2023.03.09
  • www.mql5.com
Trader's profile
 
@alessioale472 #: @Fernando Carreiro In practice when I uploaded it on the graph from cross to cross (same Timeframe but different cross) I would like to avoid this thing but I can't figure out hot to do it! Is there a fuction that avoids this behaviour?

I have no idea what you are referring to. I am unable to read your mind nor see your computer, and you have not provided sufficient information.

Your explanation is vague, with no details nor screenshots, and no properly posted source code.

 
Kahar149 #: , I'm confused about the difference between 'TotalOrdersCount()==0' and 'OrdersTotal()==0'. 
  1. OrdersTotal is the count of all open or pending orders with the broker (all charts).
  2. TotalOrdersCount must be a custom coded function. Without seeing the code, we can only guess, probably the order count of the current chart symbol.
 
@Fernando Carreiro I'm sorry but I'm new to this forum. I publish two photos where two graphs are represented with the same timeframe but two different crosses. As you can see, from the red line (Time when I loaded the indicator to the market) onwards it changes totally. But what I would like to do is what remains the same for all charts because the sense of the indicator is to view the strength of the various currencies.
Fernando Carreiro
Fernando Carreiro
  • 2023.03.09
  • www.mql5.com
Trader's profile
Files:
1.png  14 kb
2.png  11 kb
 

This is the piece of code where I think the problem is but I can't figure out where I'm going wrong.

   for(int i=0; i<NumBarre; i++)

     {                         

mom_eurusd = iClose("EURUSD",PERIOD_CURRENT,i) - iOpen("EURUSD",PERIOD_CURRENT,i);

mom_eurgbp = iClose("EURGBP",PERIOD_CURRENT,i)- iOpen("EURGBP",PERIOD_CURRENT,i);

mom_eurchf = iClose("EURCHF",PERIOD_CURRENT,i)- iOpen("EURCHF",PERIOD_CURRENT,i);

mom_eurjpy = (iClose("EURJPY",PERIOD_CURRENT,i)- iOpen("EURJPY",PERIOD_CURRENT,i))/100;

mom_euraud = iClose("EURAUD",PERIOD_CURRENT,i)- iOpen("EURAUD",PERIOD_CURRENT,i);

mom_eurcad = iClose("EURCAD",PERIOD_CURRENT,i)- iOpen("EURCAD",PERIOD_CURRENT,i);

mom_eurnzd = iClose("EURNZD",PERIOD_CURRENT,i)- iOpen("EURNZD",PERIOD_CURRENT,i);

mom_gbpusd = iClose("GBPUSD",PERIOD_CURRENT,i)- iOpen("GBPUSD",PERIOD_CURRENT,i);

mom_usdchf = iClose("USDCHF",PERIOD_CURRENT,i)- iOpen("USDCHF",PERIOD_CURRENT,i);

mom_usdjpy = (iClose("USDJPY",PERIOD_CURRENT,i)- iOpen("USDJPY",PERIOD_CURRENT,i))/100;

mom_audusd = iClose("AUDUSD",PERIOD_CURRENT,i)- iOpen("AUDUSD",PERIOD_CURRENT,i);

mom_usdcad = iClose("USDCAD",PERIOD_CURRENT,i)- iOpen("USDCAD",PERIOD_CURRENT,i);

mom_nzdusd = iClose("NZDUSD",PERIOD_CURRENT,i)- iOpen("NZDUSD",PERIOD_CURRENT,i);

mom_gbpchf = iClose("GBPCHF",PERIOD_CURRENT,i)- iOpen("GBPCHF",PERIOD_CURRENT,i);

mom_gbpjpy = (iClose("GBPJPY",PERIOD_CURRENT,i)- iOpen("GBPJPY",PERIOD_CURRENT,i))/100;

mom_gbpaud = iClose("GBPAUD",PERIOD_CURRENT,i)- iOpen("GBPAUD",PERIOD_CURRENT,i);

mom_gbpcad = iClose("GBPCAD",PERIOD_CURRENT,i)- iOpen("GBPCAD",PERIOD_CURRENT,i);

mom_gbpnzd = iClose("GBPNZD",PERIOD_CURRENT,i)- iOpen("GBPNZD",PERIOD_CURRENT,i);

mom_chfjpy = (iClose("CHFJPY",PERIOD_CURRENT,i)- iOpen("CHFJPY",PERIOD_CURRENT,i))/100;

mom_audchf = iClose("AUDCHF",PERIOD_CURRENT,i)- iOpen("AUDCHF",PERIOD_CURRENT,i);

mom_cadchf = iClose("CADCHF",PERIOD_CURRENT,i)- iOpen("CADCHF",PERIOD_CURRENT,i);

mom_nzdchf = iClose("NZDCHF",PERIOD_CURRENT,i)- iOpen("NZDCHF",PERIOD_CURRENT,i);

mom_audjpy = (iClose("AUDJPY",PERIOD_CURRENT,i)- iOpen("AUDJPY",PERIOD_CURRENT,i))/100;

mom_cadjpy = (iClose("CADJPY",PERIOD_CURRENT,i)- iOpen("CADJPY",PERIOD_CURRENT,i))/100;

mom_nzdjpy = (iClose("NZDJPY",PERIOD_CURRENT,i)- iOpen("NZDJPY",PERIOD_CURRENT,i))/100;

mom_audcad = iClose("AUDCAD",PERIOD_CURRENT,i)- iOpen("AUDCAD",PERIOD_CURRENT,i);

mom_audnzd = iClose("AUDNZD",PERIOD_CURRENT,i)- iOpen("AUDNZD",PERIOD_CURRENT,i);

mom_nzdcad = iClose("NZDCAD",PERIOD_CURRENT,i)- iOpen("NZDCAD",PERIOD_CURRENT,i);



 //CALCOLO MOMENTUM                         

mom_eur =   mom_eurusd + mom_eurgbp + mom_eurchf + mom_eurjpy + mom_euraud + mom_eurcad + mom_eurnzd;

mom_usd = - mom_eurusd - mom_gbpusd + mom_usdchf + mom_usdjpy - mom_audusd + mom_usdcad - mom_nzdusd ; 

mom_gbp = - mom_eurgbp + mom_gbpusd + mom_gbpchf + mom_gbpjpy + mom_gbpaud + mom_gbpcad + mom_gbpnzd;

mom_chf = - mom_eurchf - mom_usdchf - mom_gbpchf + mom_chfjpy - mom_audchf - mom_cadchf - mom_nzdchf;

mom_jpy = - mom_eurjpy - mom_usdjpy - mom_gbpjpy - mom_chfjpy - mom_audjpy - mom_cadjpy - mom_nzdjpy;

mom_aud = - mom_euraud + mom_audusd - mom_gbpaud + mom_audchf + mom_audjpy + mom_audcad + mom_audnzd;

mom_cad = - mom_eurcad - mom_usdcad - mom_gbpcad + mom_cadchf + mom_cadjpy - mom_audcad - mom_nzdcad;

mom_nzd = - mom_eurnzd + mom_nzdusd - mom_gbpnzd + mom_nzdchf + mom_nzdjpy - mom_audnzd + mom_nzdcad;


//ARRAY


mtm_EUR[i]= mom_eur;

mtm_AbsEUR[i] = MathAbs (mom_eur);


mtm_USD[i]=  mom_usd;

mtm_AbsUSD[i] = MathAbs(mom_usd);


mtm_GBP[i]=  mom_gbp;

mtm_AbsGBP[i] = MathAbs(mom_gbp);


mtm_CHF[i]=  mom_chf;

mtm_AbsCHF[i] =MathAbs(mom_chf);


mtm_JPY[i]=  mom_jpy;

mtm_AbsJPY[i] = MathAbs(mom_jpy);


mtm_AUD[i]=  mom_aud;

mtm_AbsAUD[i] = MathAbs(mom_aud);


mtm_CAD[i]=  mom_cad;

mtm_AbsCAD[i] = MathAbs(mom_cad);


mtm_NZD[i]=  mom_nzd;

mtm_AbsNZD[i] = MathAbs(mom_nzd);

}