당사 팬 페이지에 가입하십시오
- 조회수:
- 25
- 평가:
- 게시됨:
-
이 코드를 기반으로 한 로봇이나 지표가 필요하신가요? 프리랜스로 주문하세요 프리랜스로 이동
행렬 작업을 위한 클래스입니다.
행렬은 1차원 배열로 정의되며, 첫 번째 행의 요소, 두 번째 행 등의 행으로 구성됩니다. 배열의 마지막 두 요소는 행렬의 크기, 즉 열의 수와 행의 수를 정의합니다.
예시:
double m[]={1,2,3, 4,5,6, 2,3}; // 두 행과 세 개의 열로 구성된 행렬입니다.
클래스 메서드:
| 메서드 | 메서드 및 매개변수 할당 |
|---|---|
void SetSize( | 행렬 aA의 크기를 설정합니다. aRows - 행의 개수, aCols - 열의 개수입니다. |
void SetValue( | 행 aRow와 열 aCol에 위치한 행렬 엘리먼트 aA의 값을 설정합니다. |
int GetSize( | 행렬 aA의 요소 수를 리턴합니다. 참조로 반환되는 값: aRows - 행의 수, aCols - 열의 수. |
int GetRows( | 행렬 aA의 행의 개수를 리턴합니다. |
int GetCols( | 행렬 aA의 열의 개수를 리턴합니다. |
double GetValue( | 행 aRow 및 열 aCol 에 위치하는 행렬 요소 aA 의 값을 리턴합니다. |
void Copy( | 배열 aFrom 에서 배열 aTo 로 행렬을 복사합니다. |
bool CheckForAdd( | 두 행렬이 더하기 위한 크기가 비슷한지 (높이와 너비가 완전히 동등한지) 확인합니다. |
bool CheckForMult( | 두 행렬이 곱하기에 적합한 크기인지 확인합니다 (행렬 aA의 열 수는 행렬 aB의 행 수와 같음). |
bool CheckIsSq( | 행렬이 정사각형인지 확인합니다. |
void AddNum( | 행렬 aA에 숫자 aNum을 추가합니다. 결과(행렬)는 배열 aR의 참조로 반환됩니다. |
void MultNum( | 행렬 aA에 숫자 aNum을 곱합니다. 결과(행렬)는 aR 배열의 참조로 반환됩니다. |
void AddMx( | 행렬 aA와 aB를 추가합니다. 결과(행렬)는 배열 aAB의 참조로 반환됩니다. |
void MultMx( | 행렬 aA에 행렬 aB를 곱합니다. 결과(행렬)는 배열 aAB의 참조로 반환됩니다. |
void Transpose( | 행렬 aA를 전치합니다. 전치된 행렬은 aT 배열의 참조로 반환됩니다. |
void AlgAdd( | 대수 덧셈 행렬을 리턴합니다. aA는 원래 행렬, aAA는 대수 덧셈 행렬(참조로 반환)입니다. |
bool Invert( | 행렬 aA로부터 역 행렬 aR을 참조로 리턴합니다. 역행렬이 존재하면 참을, 역행렬이 존재하지 않으면 거짓을 반환합니다. |
void Triangle( | 행렬 aA로부터 삼각형 행렬 aT를 참조로 리턴합니다. |
void Minor( | 행렬 aA에서 행 aRow와 열 aCol에 의해 부를 취득합니다. 부는 배열 aM의 참조로 반환됩니다. |
double MinorDef( | 행 aRow 및 열 aCol 의 행렬 aA의 부 행렬식의 값을 리턴합니다. |
void MinorDefMx( | 부 행렬 (부 행렬의 행렬식의 행렬식)을 리턴합니다. aA는 소스 행렬이고, aM은 부 행렬의 행렬입니다 (참조로 반환됩니다). |
double Def( | 행렬 aA의 행렬식의 행렬식의 값을 리턴합니다. |
int Rank( | 행렬 aA의 순위를 리턴합니다. |
int RankDRC( | 행렬 aA의 순위를 반환하고 참조로 반환합니다:
|
void CopyCol( | 인덱스가 aFromCol인 열을 행렬 aFom에서 행렬 aTo로, 인덱스가 aToCol인 열로 복사합니다. 결과는 배열 aR을 참조하여 반환합니다. |
void CopyRow( | 인덱스가 aFromRow인 행을 행렬 aFrom에서 행렬 aTo로, 인덱스가 aToRow인 행으로 복사합니다. 결과는 배열 aR에 대한 참조로 반환됩니다. |
void AppendCol( | 행렬 aA에 열 aC를 추가하여 행렬을 확장합니다. 결과는 aF 배열의 참조로 반환됩니다. |
void AppendRow( | 행 aR을 추가하여 행렬 aA를 확장합니다. 결과는 배열 aF의 참조로 반환됩니다. |
bool SystemKramer( | 크레이머 방식으로 방정식 시스템을 풉니다.
|
bool SystemInverse( | 역 행렬을 통해 방정식 시스템을 풉니다.
|
bool SystemGauss( | 가우스 방식으로 방정식 시스템을 풉니다.
|
int SystemCheck( | 방정식 시스템을 확인합니다.
반환값:
|
void Alert( | 전체 행렬을 하나의 경고로 표시합니다.
|
void Alert2( | 경고에 행렬을 한 줄씩 표시하고, 용어는 아래에서 위로, 캡션이 표시되며, 즉, 경고 창에서 행렬의 방향은 일반적으로 캡션이 맨 위에, 그 다음 행이 순서대로 표시됩니다. |
void Alert1Str( | 알림에 행렬을 행별로 배열하여 표시합니다. |
sMatrix.mq4 스크립트는 라이브러리를 사용하여 크레이머, 역행렬 및 가우스 방법을 사용하여 선형 방정식 시스템을 푸는 예제입니다.
MetaQuotes Ltd에서 러시아어로 번역함.
원본 코드: https://www.mql5.com/ru/code/951
Clean Market Watch - Removes All Symbols In the Market Watch Windows In One Go
종합시세 정리 스크립트는 한 번의 클릭으로 메타트레이더 5 종합시세 창에서 모든 종목을 빠르게 제거할 수 있도록 설계된 간단한 유틸리티 도구입니다. 이 스크립트는 깔끔한 작업 공간에서 새로 시작하고 싶을 때 또는 종합시세창이 너무 많은 종목으로 복잡해졌을 때 특히 유용합니다. 목적 시간이 지나면서 트레이더는 종합시세창에 많은 종목이 쌓여 실제 거래하는 상품에 집중하기 어려워지는 경우가 종종 있습니다. 일일이 수동으로 심볼을 제거하는 것은 지루하고 시간이 많이 소요될 수 있습니다. 이 스크립트는 전체 프로세스를 자동화하여 몇 초 만에 모든 심볼을 지웁니다.
Indices Testing
EA는 매수 포지션만 거래하며 SL과 TP는 사용하지 않습니다.