Errors, bugs, questions - page 1143
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
Why does Youtube have HTTPS? Here's the usual code for the video -http://youtu.be/KG0PIVuJ2kU
Everything happens! Follow the link.
I have one question today, and it's one that a lot of people have, what broker should I choose so that the subscription works ? for example john paul 77 ?
There are several options here:
1) Indicator parameters change over time according to some criteria (conditions). Therefore, there is no need to recreate handles on every tick. Check the condition and, if it is fulfilled, recreate it.
Suppose the condition is that a "new bar" event occurs on a one-minute timeframe. Examples of the definition of a "new bar" event are many - search the website. I like this variant best.
2) If it is still necessary on each tick - to wait for termination of the checkCopyBuffer() in the loop (using sleep()). But most likely, the ticks will be skipped. As an alternative - to calculate not all of the history, but for the last couple of hundreds bars (to look into the code of standard indices and to correct the code) - it will skip less ticks.
In general, I added checking and found out the following.
I read it at the beginning of each new 15M bar.
In the live market everything works fine without errors. In the tester at the very beginning and immediately after changing the input parameters of the indicators the following error "Error when copying from the iBands indicator! (№4806)". I.e., I get a handle without any problems, but the indicator hasn't been created yet and I can't copy it. I do not understand why the tester behaves this way.
You need at least version 8 of Internet Explorer to get the Marketplace interface working. IE6 isn't going anywhere.
When starting the terminal, IE8 is written in the logs.
You are assuming that the user checks the logs when launching the application. Unfortunately, this kind of user belongs to the endangered species and is hardly ever seen in everyday life anymore.
Is it possible that the installer of MT4/5 will check the version of the Internet Explorer and, if it is lower than 8, will offer to update it?
It works in a live market without errors. I.e. I get a handle without problems, but the indicator has not yet been created and its copying fails. I do not understand why the tester behaves in such a way.
It also occurs in the live market if "heavy" calculations are used in the indicators. The difference between the tester and the live market, in this case, is seen in the time elapsed between the creation of the indicator and the reference to its buffer.
It is easy to check it. Add a global variable
After getting the indicator handle, addstart=GetTickCount();
And after receiving values from the indicator buffer add
Good afternoon. Concerned to check trading authorisation. I have received rather strange results. I have not understood what is the reason of the error. I have been working on my Alpari demo account.
Script:
void OnStart()
{
MqlDateTime str_dt;
TimeTradeServer(str_dt);
for (int i=0; i<10; i++){
datetime session_start_time, session_expiration_time;
if(!SymbolInfoSessionTrade("EURUSD", (ENUM_DAY_OF_WEEK)str_dt.day_of_week, i, session_start_time, session_expiration_time)) break;
Print(" session_start_time = ",TimeToString(session_start_time,TIME_DATE|TIME_MINUTES));
Print(" session_expiration_time = ",TimeToString(session_expiration_time,TIME_DATE|TIME_MINUTES));
}
datetime symbol_start_time=(datetime)SymbolInfoInteger("EURUSD", SYMBOL_START_TIME);
Print(" symbol_start_time = ",TimeToString(symbol_start_time,TIME_DATE|TIME_MINUTES));
datetime symbol_exiration_time=(datetime)SymbolInfoInteger("EURUSD", SYMBOL_EXPIRATION_TIME);
Print(" symbol_exiration_time = ",TimeToString(symbol_exiration_time,TIME_DATE|TIME_MINUTES));
}
Execution results:
symbol_exiration_time = 1970.01.01 00:00
symbol_start_time = 1970.01.01 00:00
session_expiration_time = 1970.01.02 00:00
session_start_time = 1970.01.01 00:00
session_expiration_time = 1970.01.01 00:00
session_start_time = 1970.01.01 00:00
It also occurs in the live market if "heavy" calculations are used in the indicators. The difference between the tester and the live market, in this case, is manifested in the time elapsed between the creation of the indicator and the reference to its buffer.
It is easy to check it. Add a global variable
After getting the indicator handle, addAnd after receiving values from the indicator buffer add
Hmmmmmmmmmmmmmmmmm Funny ! :))
This is what you get in the tester :
KF 0 18:16:15.702 Core 1 Param1=160
QH 0 18:16:15.702 Core 1 Param2=11
KR 0 18:16:15.702 Core 1 StLot=0.01
LI 0 18:16:15.702 Core 1 2004.09.01 00:00:00 Error when copying from iBands indicator! (buy) (#4806)
QL 0 18:16:15.702 Core 1 2004.09.01 00:00:00 Time between creating an indicator and first accessing its buffer 0 ms
CO 0 18:16:15.702 Core 1 2004.09.01 01:00:00 B_up_s=1.218321775887096 M_av_s=1.2176
GO 0 18:16:15.702 Core 1 2004.09.01 01:00:00 B_low_b=1.195841860476532 M_av_b=1.2176
JG 0 18:16:15.702 Core 1 2004.09.01 02:00:00 Time between creating an indicator and first call of its buffer 0 ms
EJ 0 18:16:15.702 Core 1 2004.09.01 02:00:00 B_up_s=1.218876391942192 M_av_s=1.2177
CQ 0 18:16:15.702 Core 1 2004.09.01 02:00:00 B_low_b=1.195850880785081 M_av_b=1.2177
That is, it fails on the first bar. During further experiments, if the input parameters are changed, this error will also occur on one bar and everything is all right on the next one.
And this is what we get in the market:
This error does not bother me much in the tester, but I wish it did not occur. If you introduce sleep, it will probably slow down the optimization speed. Perhaps, there is a more elegant solution for such cases. There is no such problem in MT4, but it works differently too.