Выпущена бета-версия MetaTrader 4 Build 529 с новым компилятором - страница 43

 
stringo:
Исправили. Спасибо


Увы, исправили, но не всё.

iVolume показывает то.


Осталось исправить в документации тип возвращаемого значения.

Экспериментальным путём выяснилось, что это long,

а не datetime, как написано и не double, как раньше.

Спасибо, за внимание.

 
Мне показалось, или бета-версия дейсвительно быстрее запускается (у меня Win XP)?
 

Разработчикам

Тестер стратегий вообще рабочий или как?

Тестирую стандартный MACD на EURUSD. Торговый счет одинаковый, параметры одинаковые, символ один.

На 509 сделки совершаются, а на 538 нет.

Ели нужно скину в СД подробности.

 
thecore:

Экспериментальным путём выяснилось, что это long,

а не datetime, как написано и не double, как раньше.

Кстати, как я понял на сайте (в документации) этот тип данных не описан :)

Да и логичней, на мой взгляд, возвращать ulong.

 

Время с точностью до мс в логе - круто!

Но в истории счета не отображаются даже секунды )

 
Дабл-клик из избранного приводит к редактированию кода
 
"Файл - Открыть удаленный" открывает какой-то левый (дефолтный, но не default) шаблон.
 

Если прочесть из файла строку, а потом записать ее же, добавляется лишний перевод строки:

        string file_name = "test.txt";
        int handle  = FileOpen( file_name, FILE_TXT | FILE_READ | FILE_WRITE | FILE_ANSI | FILE_SHARE_READ ), _GetLastError = 0;
        if ( handle < 0 )
        {
                _GetLastError = GetLastError();
                if ( _GetLastError != 4103 ) Print( "FileOpen() - Error #", _GetLastError );
                return(false);
        }

        string temp_command;
        FileSeek( handle, 0, SEEK_SET );

        while ( !FileIsEnding( handle ) )
        {
                ulong command_start = FileTell( handle );
                temp_command = FileReadString( handle );
                if ( temp_command == "" ) continue;

                FileSeek( handle, command_start, SEEK_SET );
                FileWrite( handle, temp_command );
                break;
        }

        FileClose( handle );

Проявляется, начиная со 2-й строки (с первой все ок). В 509 было все ок.

Я подозреваю, что дело в этом:

FileWriteString

Записывает в файл типа BIN, CSV или TXT значение параметра типа string с текущего положения файлового указателя. При записи в файл типа CSV или TXT, если в строке присутствует символ '\n' (LF) без предшествующего символа '\r' (CR), то перед символом '\n' дописывается отсутствующий символ '\r'.

Но не уверен, что это относится и к FileWrite. И все равно не понятно, что с этим делать.

Писать в сервис-деск?

 
komposter:

Если прочесть из файла строку, а потом записать ее же, добавляется лишний перевод строки:

Проявляется, начиная со 2-й строки (с первой все ок). В 509 было все ок.

Я подозреваю, что дело в этом:

Но не уверен, что это относится и к FileWrite. И все равно не понятно, что с этим делать.

Писать в сервис-деск?

Пожалуйста напишите со всеми подробностями. Чтобы не потерялось.
 
komposter:

Если прочесть из файла строку, а потом записать ее же, добавляется лишний перевод строки:

int handle  = FileOpen( file_name, FILE_TXT | FILE_READ | FILE_WRITE | FILE_ANSI | FILE_SHARE_READ )   ,   _GetLastError = 0;
; ?
Причина обращения: