Need help from MT4 developers and programmers - page 2

 
stringo:

Very similar.

1. The MQL4 language has a dedicated forum. Not this one.

2. You haven't read the MQL4 documentation, neither old nor new

Instead of giving a link to something useful, you just throw crap all over the man.

The illogic is obvious. The user can (as opposed to previous builds) change the input parameters, and the new values are visible in the Inputs tab, but they do not actually change. The Expert Advisor has a full control of the situation, but the system does not give the updated values of the parameters, and the user has an illusion that he/she has changed the input parameters.

artmedia70, thank you. I'll give it a try. But I'm pretty sure it won't help. Deinitialisation is not happening. Is it possible to analyse the reasons for deinitialisation that didn't happen? (No record of it in the log).

I certainly had no illusions about anyone helping me here. But frankly speaking, I didn't expect that developers would turn a blind eye to a quite obvious thing. Of course, how would a developer admit that it's a software bug? It's easier to blame the user for orchestrating some "not politically correct" loop. They would also say that I indented the text incorrectly and did not put comments. This loop works perfectly, and it is simply irreplaceable in those schemes, which I was ordered by some customers. But the initialization of new values of input parameters, which were promptly changed by the user, does not work. And, calling a person "rubbish" and "illiterate" (allegedly not reading documentation), you do not refute the fact that initialization [of parameters with new values] does not work.

(And then again, maybe I'm confusing cause with effect? "Hooks" should always be present unnoticed, to make life easier for users).

 

Sorry to post in English, but I think you will understand.

You are using an endless loop, so of course init/deinit aren't called. An EA is single thread so even if init/deinit events are placed in the processing queue, you don't let an occasion to execute it.

 
Wex:

Instead of giving a link to something useful, you just throw crap all over the person.

The illogic is obvious. The user has an opportunity (unlike previous builds) to change the input parameters, and the new values are visible in the Inputs tab, but they do not actually change. The Expert Advisor has full control of the situation, but the system does not give it the updated values of the parameters, and the user has an illusion that he/she has changed the input parameters.

artmedia70, thanks. I'll give it a try. But I'm pretty sure it won't help. Deinitialisation is not happening. Is it possible to analyse the reasons for deinitialisation that didn't happen? (No record of it in the log).

I certainly had no illusions about anyone helping me here. But frankly speaking, I didn't expect that developers would turn a blind eye to a quite obvious thing. Of course, how would a developer admit that it's a software bug? It's easier to blame the user for orchestrating some "not politically correct" loop. They would also say that I indented the text incorrectly and did not put comments. This loop works perfectly, and it is simply irreplaceable in those schemes, which I was ordered by some customers. But the initialization of new values of input parameters, which were promptly changed by the user, does not work. And, calling a person "rubbish" and "illiterate" (allegedly not reading documentation), you do not refute the fact that initialization [of parameters with new values] does not work.

(And then again, maybe I'm confusing cause with effect? "Hooks" should always be present unnoticed, to make life easier for users).

Try it ;)
 
angevoyageur:

Sorry to post in English, but I think you will understand.

You are using an endless loop, so of course init/deinit aren't called. An EA is single thread so even if init/deinit events are placed in the processing queue, you don't let an occasion to execute it.

Well, it may be.

 
Wex:

Well, if the Expert Advisor is looped and it really doesn't call deinitialization from the loop, then try to interrogate changes of input parameters in OnChartEvent().

For example, display the required parameters by objects on the chart. Clicking a parameter(CHARTEVENT_OBJECT_CLICK) calls LabelEdit input field, where you enter new parameters(CHARTEVENT_OBJECT_ENDEDIT) and send them to expert via user event(CHARTEVENT_CUSTOM+n), in expert you interrogate events and react to changes of input parameters.

 
artmedia70:

Well, if the expert is looped, and it really does not cause a cycle of uninitialize try to OnChartEvent () to organize a poll of change of input parameters.

For example, the options you want to display an object on the chart. Clicking on the option (CHARTEVENT_OBJECT_CLICK) causes the input field LabelEdit, where enter new parameters ( CHARTEVENT_OBJECT_ENDEDIT ) and send them to the expert by the user event (CHARTEVENT_CUSTOM + n), the expert in polling events and react to changes in input parameters.

Will not work. Same problem, your EA is in an endless loop, no event handlers will be executed.
 
angevoyageur:
Will not work. Same problem, your EA is in an endless loop, no event handlers will be executed.
Really? I did not know ... Never wrote looped experts with OnChartEvent()...
 
stringo:

Very similar.

1. The MQL4 language has a dedicated forum. Not this one.

2. You haven't read the MQL4 documentation, either old or new.

1. When you install MetaTrader4 terminal in installation window there is an invitation to forum, this forum and not another.

2. Halfway through the new fiche. In the past the properties window of looped EA did not open. Now it does, and I wish the window would react on parameter changes. Or don't open the properties window, so as not to confuse the user.

 
Wex, use a timer, you can dispense with the looping now.
 
Integer:

1. When installing the MetaTrader4 terminal in the installation window there is an invitation to the forum, this forum and not another one.

2. Halfway through the new fiche. In the past the properties window of looped EA did not open. Now it does, and I wish the window would react on parameter changes. Or the properties window may not be opened, to avoid confusing the user.

1. Look at Wex profile. He is a professional MQL4 developer. He plays the fool. Or he is trolling. It's not clear why.

2. You have to think it over. You cannot forcefully terminate the loop on new parameter arrivals. Something like the IsNewParameter function which should be called by the programmer himself/herself in the endless loop