Any questions from newcomers on MQL4 and MQL5, help and discussion on algorithms and codes - page 1862

 
Nikolay Ivanov #:

such questions should be asked to the developers of the terminal... They are the ones who define the concepts and the path of development of the language and its elements.

At least someone would have a say in the matter. But as far as I understand, many people here are only interested in trolling... So it's understandable why no one responded like that.

My opinion..: All high-level languages have variables with, identifier, type and area in memory to store value or values. All ultra-high level languages contain object variables. C++ is an ultra-high level language. MQL is a language based onC++. But I noticed a feature of a super high-level language in MQL. So I have a question: what is MQL?

 
Alexey Viktorov #:

Please note, if I don't know anything about it, I don't answer it. But it is not difficult to guess how the Ask and Bid prices come into the terminal. The liquidity providers submit their requests according to the same rules as traders, i.e. normalized to Digits(). So where can non-normalized values come from? Maybe you are already carried away and do not remember what the argument was about? Let me remind you, no one spoke about the necessity of normalization of calculated price values, it's certainly necessary. But you started claiming that both Ask and Bid prices should be normalized.

Stop littering the thread. Immature minds may believe you. As a result, they will write such slow Expert Advisors that terminals will start skipping ticks in batches.

Exactly, that is "guessing". And you don't know thoroughly! That is, it's nothing more than a guess. But Nikolai, for example, said that it may come with an error. In the tester at least. But I've never noticed it because I always normalize prices. Although I was caught bydouble with an error more than once. So one cannot know everything. Are simple things so incomprehensible to you?

Regarding slowdown of execution speed with one additional NormalizeDouble, it's such a problem, if you listen to you, that it's probably worse than pixel operations or memory allocation... You yourself are confusing the newbies. Listening to you, they will avoid usingNormalizeDouble by hook or by crook.That's not where you're looking for slowness!

Forum on trading, automated trading systems & strategy testing

Any questions from newbies on MQL4 and MQL5, help and discussion of algorithms and codes

Mihail Matkovskij, 2022.01.15 09:54

Moreover, some people neglect such simple checks as

if (name == NULL)
  return;

thinking it may consume a lot of processor time :)

But actually it is functions like ObjectCreate and ObjectDelete that consume processor time. If a programmer has, say, an array of graphical objects and it is deleted and recreated on every tick, something must be done about it. While simple checks and calculations are of little time. This is why a lot of programmers are just looking in the wrong place.


 
Mihail Matkovskij #:

But he does!

I'll feed the troll. If you're not a liar, give me an argument, where is this in the documentation? That it is the received prices, which by definition are normalised to Digits, since the item cannot be fractional, that cause the error.

 
Mihail Matkovskij #:

It's not rounding, it's cutting off everything over two decimal places.


You've made a mess of this thread with your bullshit, and you lied right here. You did not make a mistake, you lied, because you indicated that it was not rounding.

 
Mihail Matkovskij #:

Exactly, "guessing".


Well, it's nobody's fault that you don't have logic in your arsenal. Do you have to put that in your documentation?

 
Break
 
Artyom Trishkin #:
Break

What's the question?)

 
Alexey Viktorov #:

What's the question?)))

Apparently you and Andrei should stop trolling...

The atmosphere is really unfriendly (as noted above). I came here to discuss MQLQL issues. But I read something that is not about MQL. What are you talking about?

Let some newcomer ask a question or something... Or maybe he's afraid to...? Get lost in the fray between you and Andrei... :)
 

Good afternoon all.

Please advise how to write the code correctly.
I close several orders at once in different directions, different currency pairs, according to certain conditions. But sometimes command is not executed due to brokerage company and some part of orders remains open. I can prescribe Sleep for each order. But I want something shorter.

if ( NormalizeDouble((MaxOpenSell(2) + MaxOpenBuy(2) + MinOpenSell(2))*Point,Digits) >= Profit1 && FindLastSell() >= Block 
         && FindLastBuy() >= 1 && MaxOpenSell(2) > 0 && MA1 < MA2)
      {
         LockTicket = 0;
         CalProfHis = 0;
         bool close =  OrderClose((int)MaxOpenSell(5),MaxOpenSell(3), Ask, Slippage, clrPink);
              close =  OrderClose((int)MinOpenSell(5),MinOpenSell(3), Ask, Slippage, clrPink);
              close =  OrderClose((int)MaxOpenBuy(5),MaxOpenBuy(3), Bid, Slippage, clrBlue);

      }
 
makssub Sleep for each order. I would like to use something shorter.

https://book.mql4.com/ru/trading/orderclose

Закрытие и удаление ордеров - Торговые операции - Учебник по MQL4
Закрытие и удаление ордеров - Торговые операции - Учебник по MQL4
  • book.mql4.com
Закрытие и удаление ордеров - Торговые операции - Учебник по MQL4