Seems the same. The second is better.
Posts made by sktsec
-
RE: MultiCurrency Buy/Sell - "OR" blockposted in Questions & Answers
-
RE: Any instructions about the On Trade & On Chart tabs?posted in General Discussions
Event driven. e.g. On Trade -> The blocks under the tab are triggered to run when there is trade open / close , etc
-
RE: How can a file be created on back testing?posted in Questions & Answers
Glad to know you solved the problem.
-
RE: How can a file be created on back testing?posted in Questions & Answers
It works with Print() in MQL.
Each line I print out the time of calculation, and the moving average. Other information preceding that is added by the tester.
Maybe something complicated in your Print() ?
-
RE: How can a file be created on back testing?posted in Questions & Answers
I test with EA https://fxdreema.com/shared/i8TIJUagb
It prints out daily moving average of input period. The full log is as follows:
CS 0 00:21:48.028 Startup MetaTester 5 build 5640, 20 Feb 2026
CS 0 00:21:48.028 Startup Windows 11 build 26200, 20 x 13th Gen Intel Core i7-13700H, AVX2, 18 / 29 Gb memory, 83 / 475 Gb disk, RDP, UAC, GMT+8
CS 0 00:21:48.029 Server MetaTester 5 started on 127.0.0.1:3000
CS 0 00:21:48.032 Startup cloud network mode is off
CS 0 00:21:48.033 Startup initialization finished
CS 0 00:21:48.323 127.0.0.1 login (build 5640)
CS 0 00:21:48.350 Network 17744 bytes of account info loaded
CS 0 00:21:48.350 Network 1478 bytes of tester parameters loaded
CS 0 00:21:48.350 Network 1220 bytes of input parameters loaded
CS 0 00:21:48.350 Network 659 bytes of symbols list loaded (111 symbols)
CS 0 00:21:48.350 Tester expert file added: Experts\TestBacktestPrintout.ex5. 72996 bytes loaded
CS 0 00:21:48.352 Tester 18976 Mb available, 236 blocks set for ticks generating
CS 0 00:21:48.352 Tester calculate profit in pips, initial deposit 200000, leverage 1:100
CS 0 00:21:48.352 Tester successfully initialized
CS 0 00:21:48.352 Network 73 Kb of total initialization data received
CS 0 00:21:48.352 Tester 13th Gen Intel Core i7-13700H, 30345 MB
CS 0 00:21:48.356 Symbols EURUSD: symbol to be synchronized
CS 0 00:21:48.357 Symbols EURUSD: symbol synchronized, 3720 bytes of symbol info received
CS 0 00:21:48.358 History EURUSD: load 27 bytes of history data to synchronize in 0:00:00.000
CS 0 00:21:48.358 History EURUSD: history synchronized from 2024.01.02 to 2026.02.27
CS 0 00:21:48.375 History EURUSD,M15: history cache allocated for 28347 bars and contains 26358 bars from 2025.01.02 00:00 to 2026.01.30 23:45
CS 0 00:21:48.375 History EURUSD,M15: history begins from 2025.01.02 00:00
CS 0 00:21:48.375 Tester EURUSD,M15 (Afterprime-Ltd): OHLC bar states generating. OnTick executed on the bar begin only
CS 0 00:21:48.375 Tester execution delay discarded because of open prices testing mode
CS 0 00:21:48.375 Tester EURUSD,M15: testing of Experts\TestBacktestPrintout.ex5 from 2026.02.01 00:00 to 2026.03.01 00:00 started with inputs:
CS 0 00:21:48.375 Tester maPeriod=20
CS 0 00:21:48.375 Tester MagicStart=3742
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.02 00:00:00 2026.02.02 00:00:00 1.1864325
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.03 00:00:00 2026.02.03 00:00:00 1.1788945
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.04 00:00:00 2026.02.04 00:00:00 1.1815805
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.05 00:00:00 2026.02.05 00:00:00 1.180219
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.06 00:00:00 2026.02.06 00:00:00 1.179056
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.09 00:00:00 2026.02.09 00:00:00 1.1818279999999999
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.10 00:00:00 2026.02.10 00:00:00 1.1913645
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.11 00:00:00 2026.02.11 00:00:00 1.189603
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.12 00:00:00 2026.02.12 00:00:00 1.187804
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.13 00:00:00 2026.02.13 00:00:00 1.1865999999999999
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.16 00:00:00 2026.02.16 00:00:00 1.187173
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.17 00:00:00 2026.02.17 00:00:00 1.185116
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.18 00:00:00 2026.02.18 00:00:00 1.1847115
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.19 00:00:00 2026.02.19 00:00:00 1.1789855
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.20 00:00:00 2026.02.20 00:00:00 1.176836
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.23 00:00:00 2026.02.23 00:00:00 1.1783625
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.24 00:00:00 2026.02.24 00:00:00 1.179229
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.25 00:00:00 2026.02.25 00:00:00 1.177929
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.26 00:00:00 2026.02.26 00:00:00 1.180666
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.27 00:00:00 2026.02.27 00:00:00 1.179049
CS 0 00:21:48.382 Tester final balance 200000.00 pips
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.27 23:59:59 Backtested in 0.00 seconds
CS 0 00:21:48.382 TestBacktestPrintout (EURUSD,M15) 2026.02.27 23:59:59 Expert Advisor self terminated
CS 0 00:21:48.385 Tester EURUSD,M15: 7534 ticks, 1920 bars generated. Environment synchronized in 0:00:00.030. Test passed in 0:00:00.031.
CS 0 00:21:48.385 Tester EURUSD,M15: total time from login to stop testing 0:00:00.061 (including 0:00:00.030 for history data synchronization)
CS 0 00:21:48.385 Tester 32 Mb memory used including 1.88 Mb of history data, 64 Mb of tick data
CS 0 00:21:48.385 Tester log file "C:\Users\James\AppData\Roaming\MetaQuotes\Tester\D0E8209F77C8CF37AD8BF550E51FF075\Agent-127.0.0.1-3000\logs\20260301.log" written
CS 0 00:21:48.385 Tester test Experts\TestBacktestPrintout.ex5 on EURUSD,M15 thread finished
CS 0 00:21:48.389 127.0.0.1 prepare for shutdown
CS 0 00:21:48.389 127.0.0.1 shutdown finished -
RE: Empty Group #posted in Questions & Answers
First open the downloaded source file and open it.
As you can see, the variable "group" is of string type, and it is likely to take up the value of "" as default value.
But instead it takes a value of "0", and thus magic number is not used according to the logic that "" should be used instead.
That means a quick fix try would be replace that "0" with ""
First find TradeSelectByIndex, then if you see group = "0", replace it with "".
Or more directly, use the editor to replace ALL "0" with "".
Noted that "0" is unusual because its type is string rather than number.
That's what I could probably guess, please try and see it can help
-
RE: Empty Group #posted in Questions & Answers
@Boillot84
I check the code for MT5.
if (group == "")
{
if (magic_number == MagicStart)
{
group_pass = true;
}
}
But
bool TradeSelectByIndex(
int index,
string group_mode = "all",
string group = "0",
string market_mode = "all",
string market = "",
string BuysOrSells = "both"
)An attempted to fix the bug would be
replace all -> group = "0"
with -> group = "" -
RE: Empty Group #posted in Questions & Answers
I have do a simple demo test in MT4. Pretty sure the Loop Block would not read those open trades with another magic numbers.
I run 2 EAs which each open a trade and then loop to see it. Then I closed one of them. Confirmed the one without trade cannot see the other's trade.
May be some bug in your case, provide you sure the trade is made by another EA. Any chance you misread the trade that is actually made by the same EA ?
-
RE: Empty Group #posted in Questions & Answers
2 magic numbers. The EAs will not interact, except when you deal with the option for all order
-
RE: How can a file be created on back testing?posted in Questions & Answers
Are you reading this file:
C:\Users\Cleric\AppData\Roaming\MetaQuotes\Tester\24F345EB9F291441AFE537834F9D8A19\Agent-127.0.0.1-3000\logs\20260224.logCopy following path in the File Manager to see if there is any log file in the directory
C:\Users\Cleric\AppData\Roaming\MetaQuotes\Tester\24F345EB9F291441AFE537834F9D8A19\Agent-127.0.0.1-3000\logs\ -
RE: Indicator Libraryposted in Questions & Answers
- EarnForex has website and github. It is systematic and have a lot of standard indicators with source code included.
- Forex Station. Individuals will share their indicators and source codes not included. But you might be confused to know which are mostly useful. Its indicators are keep updating and running through the forum to see what happens is time consuming.
- fxcodebase.com : tons of indicators. You can even request one you want
- FXSSI: It is commercial but has a lot of free indicators of high quality. You might find some quite useful.
The best of all, however, is to write your own with AI
-
RE: How can a file be created on back testing?posted in Questions & Answers
Just did some demo. File IO is strictly restricted in MT5. But Print() does work.
So tried Print() to export the data you want.
The result will be in the log file. Read the line in the Journal tab of the tester, that is like
2026.02.22 22:25:41.280 Core 01 log file "C:\Users\James\AppData\Roaming\MetaQuotes\Tester\D0E8209F77C8CF37AD8BF550E51FF075\Agent-127.0.0.1-3000\logs\20260222.log" written
Open the log file and see if you can get what you want. Noted it contains some extra data that you might not want.
-
RE: How can a file be created on back testing?posted in Questions & Answers
The File folder often exists in data folder as \MQL4\Files, like indicator file in data folder as \MQL4\Indicators.
MT4/MT5 handle file read/write like a sandbox and only those folders/files in \MQL4\Files can be assessed.
-
RE: (buy/sell expiration mode) Not Working...posted in Bug Reports
I think you confused your conditions. Like higher than upper band and lower than lower band at the same time
-
RE: Hello, I cannot access the builder. It shows: TypeError: Cannot use 'in' operator to search for 'active' in _391posted in Bug Reports
Are other PCs on the same network having the same problem ? Or anti-virus software blocked your access ?
Try an VPN connection to see if problem could be solved. If not, reinstalling Windows is an option.
-
RE: How to get line/MA slopeposted in Tutorials by Users
@doeveR
Maybe normalization by ATR can help. Say, divide the increment or slope, by ATR. Or you can even try the square root of ATR. That make sense as ATR is approximately proportional to time square. And the slope is given by increment over time.Just make some test to see what you want
-
RE: How to make the moving average turn red when it angles upwards and turn green when it angles downwards in fxdreemaposted in Questions & Answers
@l-andorrĂ
In Chinese, he just want to say: Thank you, AI has helped me code. -
RE: EA control from CSVposted in Questions & Answers
@nikolay_s
The code seems straightforward and should work. I have tried it with codes similar to you. Try this one: https://fxdreema.com/shared/K9SXQIxKIf in your case still not working, it might be the csv file problem. The csv file in above demo is created with path fxDreema\positionAllowed.csv in the File folder. I have tested with or without delimiter, space, line feed, ... and they are all working. By the way, how do you edit and save the file ? Have you debug and check file_handle has been valid ?
My code is simple:
string InpFileName="positionAllowed.csv" ;
string InpDirectoryName="fxDreema" ;
//--- reset the error value
ResetLastError();
//--- open the file for reading (if the file does not exist, the error will occur)
int file_handle=FileOpen(InpDirectoryName+"//"+InpFileName,FILE_READ|FILE_CSV|FILE_ANSI);
if(file_handle!=INVALID_HANDLE)
{
v::positionRead = (int)FileReadNumber(file_handle);
//--- close the file
FileClose(file_handle);
}
