이번 버전에서는 MQL5의 ONNX지원 기능을 개선했습니다. 이제 CUDA를 지원하는 GPU에서 모델이 훨씬 빠르게 실행됩니다. 또한 새로운 플래그에 대한 지원을 도입하고 라이브러리 워크플로우를 수정했습니다: 이제 ONNX는 플랫폼과 함께 설치되지 않고 이를 사용하는 프로그램을 처음 실행할 때만 설치됩니다.
또한 이전 업데이트에서 도입된 Blend2D 엔진을 위해 차트에서의 텍스트와 분석 객체의 렌더링을 개선했습니다. 또한 이번 업데이트를 통해 트레이딩 리포트가 개선되고 전략 테스터의 안정성이 향상되었습니다.
플랫폼의 웹 버전에도 여러 가지 개선 사항이 적용되었습니다. 차트에서 스톱 레벨을 조정할 때 이제 대략적인 수익 또는 손실액을 금액으로 확인할 수 있습니다. 또한 일부 거래 데이터의 표시 방식을 수정했습니다.
MetaTrader 5 클라이언트 터미널
터미널: Wine을 사용하는 macOS 및 Linux 환경의 차트에서 텍스트 렌더링이 수정되었습니다.
터미널: 브로커 서버가 오래된 버전을 실행 중임을 나타내는 로그 메시지가 출력되도록 했습니다. 서버 버전이 6개월 전에 출시된 5200 미만인 경우 경고가 표시됩니다:
오래된 서버 빌드 - 5200 이상이어야 합니다. 브로커에 문의하세요.
이 메시지는 정보를 제공하기 위한 목적으로만 표시되며 서버 연결 기능에는 영향을 미치지 않습니다.
MQL5: ONNX 라이브러리는 이제 플랫폼과 함께 로드되는 것이 아니라 ONNX를 사용하는 MQL5 프로그램이 처음 실행될 때 로드 됩니다. 라이브러리 업데이트는 자동으로 이루어집니다.
MQL5: ONNX 용 CUDA 지원에 대한 내용을 추가했습니다. 그래픽 카드가 이 기술을 지원하면 모델의 추론 성능이 크게 향상됩니다. 안정성과 성능 향상을 위해 NVIDIA 드라이버를 업데이트하실 것을 강력히 권장합니다. CUDA 사용 권한은 플랫폼 설정에서 관리할 수 있습니다:
MQL5: ENUM_ONNX_FLAGS 열거형에서 플래그를 업데이트했습니다. 이 플래그는 ONNX 모델을 생성하고 실행할 때 사용됩니다:
로깅 더 이상 사용되지 않는 ONNX_DEBUG_LOGS 대신 이제 다음 로깅 플래그가 사용됩니다:
ONNX_LOGLEVEL_VERBOSE — 모든 메시지를 기록합니다.
ONNX_LOGLEVEL_INFO — 정보성 메시지, 경고 및 오류를 기록합니다. 더 이상 사용되지 않는 ONNX_DEBUG_LOGS를 대체합니다.
ONNX_LOGLEVEL_WARNING — 경고 및 오류를 로그에 기록합니다. 기본적으로 사용됩니다.
ONNX_LOGLEVEL_ERROR — 오류만 기록합니다.
CUDA 및 GPU 관리 ONNX_CUDA_DISABLE 플래그가 제거되었습니다. 대신 새로운 ONNX_USE_CPU_ONLY 플래그를 사용하세요. 활성화하면 모델 실행에 CPU만 사용됩니다.
모델이 실행될 GPU 장치를 선택하기 위한 플래그가 추가되었습니다:
ONNX_GPU_DEVICE_0
ONNX_GPU_DEVICE_1
ONNX_GPU_DEVICE_2
ONNX_GPU_DEVICE_3
ONNX_GPU_DEVICE_4
ONNX_GPU_DEVICE_5
ONNX_GPU_DEVICE_6
ONNX_GPU_DEVICE_7
시스템에 두 개 이상의 CUDA 지원 디바이스가 있는 경우 이 플래그를 사용합니다. 여러 개의 플래그를 지정하면 인덱스가 가장 낮은 장치가 선택됩니다.
모델 프로파일링 ONNX 모델 프로파일링을 활성화하기 위해 ONNX_ENABLE_PROFILING 플래그를 추가했습니다 profiling.
이 플래그를 활성화하여 모델을 시작하면 /MQL5/Files/OnnxProfileReports/ 폴더에 [EX5 file name]_[date]_[time].json 형식의 프로파일링 보고서 파일이 생성됩니다.
MQL5: 프로그램에 리소스로 포함될 수 있는 파일의 제한이 증가했습니다. 새로운 제한은 1GB로 프로젝트에 대용량 ONNX 모델을 포함할 수 있습니다.
LDLComplexSyLinearEquationsSolution - 복소 대칭 부정 행렬을 가진 선형 방정식 A * X = B의 시스템을 복수의 우변이 있는 FactorizationLDLComplexSyRaw로 계산된 인수분해 A = U**T * D * U 또는 A = L * D * L**T를 사용하여 풀 수 있습니다.
LDLComplexSyInverse - FactorizationLDLComplexSyRaw에서 계산한 인수분해 A = U**T * D * U 또는 A = L * D * L**T를 사용하여 복소 대칭 부정 행렬의 역을 계산합니다.
LDLComplexSyCondNumReciprocal - FactorizationLDLRaw에 의해 계산된 LDLT 인수분해를 사용하여 실수대칭 또는 복소 헤르미티아 부정 행렬 A의 조건 수의 역수를 추정합니다.
MQL5: ColorToPRGB 함수를 추가했습니다. 색상 유형을 uint로 변환하여 PRGB 색상 표현을 얻습니다. 이 형식은 그래픽 리소스를 만들거나 텍스트를 렌더링할 때, 그리고 표준 라이브러리 CCanvas 클래스에서 COLOR_FORMAT_ARGB_RAW 색상 형식으로 작업할 때 사용됩니다.
uint ColorToPRGB(
color clr, // the color to be converted, in 'color' formatuchar alpha=255// the alpha channel that controls color transparency
);
PRGB 색상은 다음의 공식을 사용하여 계산합니다:
R = R * A / 255 G = G * A / 255 B = B * A / 255 A = A
이전에는 사용자가 정의하고 프로젝트 코드에서 구현한 함수임에도 불구하고 컴파일러에서는 utils.mqh의 CalcLot 함수에 #import 지시어가 누락되었다는 경고가 표시될 수 있었습니다. 이제 이러한 코드는 경고 없이 컴파일 됩니다. #import 지시어는 외부 DLL에서 실제로 가져온 함수에 대해서만 필요합니다.
MetaEditor: 대용량 소스 파일(수 메가바이트) 작업 시 발생하던 메모리 부족 오류를 수정했습니다.
MetaEditor: 디버깅 중 Watch 창에 열거형 값과 이름이 표시되던 문제를 수정했습니다.
테스터: 반복을 실행하는 EA의 테스트를 종료하는 것이 수정되었습니다. 무한 루프에서도 이제 '중지'를 누르면 실행이 즉시 중지됩니다.
테스터: 시각적 테스트 중 EventChartCustom 호출 오류를 수정했습니다. 이전에는 이벤트가 실수로 두 번 전송될 수 있었습니다.
MetaTrader 5 플랫폼의 업데이트가 2026년 1월 30일(금)에 출시됩니다.
이번 버전에서는 MQL5의 ONNX지원 기능을 개선했습니다. 이제 CUDA를 지원하는 GPU에서 모델이 훨씬 빠르게 실행됩니다. 또한 새로운 플래그에 대한 지원을 도입하고 라이브러리 워크플로우를 수정했습니다: 이제 ONNX는 플랫폼과 함께 설치되지 않고 이를 사용하는 프로그램을 처음 실행할 때만 설치됩니다.
또한 이전 업데이트에서 도입된 Blend2D 엔진을 위해 차트에서의 텍스트와 분석 객체의 렌더링을 개선했습니다. 또한 이번 업데이트를 통해 트레이딩 리포트가 개선되고 전략 테스터의 안정성이 향상되었습니다.
플랫폼의 웹 버전에도 여러 가지 개선 사항이 적용되었습니다. 차트에서 스톱 레벨을 조정할 때 이제 대략적인 수익 또는 손실액을 금액으로 확인할 수 있습니다. 또한 일부 거래 데이터의 표시 방식을 수정했습니다.
MetaTrader 5 클라이언트 터미널
CUDA 사용 권한은 플랫폼 설정에서 관리할 수 있습니다:
로깅
더 이상 사용되지 않는 ONNX_DEBUG_LOGS 대신 이제 다음 로깅 플래그가 사용됩니다:
CUDA 및 GPU 관리
ONNX_CUDA_DISABLE 플래그가 제거되었습니다. 대신 새로운 ONNX_USE_CPU_ONLY 플래그를 사용하세요. 활성화하면 모델 실행에 CPU만 사용됩니다.
모델이 실행될 GPU 장치를 선택하기 위한 플래그가 추가되었습니다:
시스템에 두 개 이상의 CUDA 지원 디바이스가 있는 경우 이 플래그를 사용합니다. 여러 개의 플래그를 지정하면 인덱스가 가장 낮은 장치가 선택됩니다.
모델 프로파일링
ONNX 모델 프로파일링을 활성화하기 위해 ONNX_ENABLE_PROFILING 플래그를 추가했습니다 profiling.
이 플래그를 활성화하여 모델을 시작하면 /MQL5/Files/OnnxProfileReports/ 폴더에 [EX5 file name]_[date]_[time].json 형식의 프로파일링 보고서 파일이 생성됩니다.
G = G * A / 255
B = B * A / 255
A = A
예시
파일 utils.mqh:
expert.mq5 파일: 이전에는 사용자가 정의하고 프로젝트 코드에서 구현한 함수임에도 불구하고 컴파일러에서는 utils.mqh의 CalcLot 함수에 #import 지시어가 누락되었다는 경고가 표시될 수 있었습니다. 이제 이러한 코드는 경고 없이 컴파일 됩니다. #import 지시어는 외부 DLL에서 실제로 가져온 함수에 대해서만 필요합니다.
MetaTrader 5 웹 터미널
업데이트는 실시간 업데이트를 통해 제공됩니다.