거래 로봇을 무료로 다운로드 하는 법을 시청해보세요
당사를 Telegram에서 찾아주십시오!
당사 팬 페이지에 가입하십시오
스크립트가 흥미로우신가요?
그렇다면 링크 to it -
하셔서 다른 이들이 평가할 수 있도록 해보세요
스크립트가 마음에 드시나요? MetaTrader 5 터미널에서 시도해보십시오
조회수:
25
평가:
(41)
게시됨:
\MQL5\Include\
incmatrix.mqh (29.16 KB) 조회
smatrix.mq5 (2.15 KB) 조회
MQL5 프리랜스 이 코드를 기반으로 한 로봇이나 지표가 필요하신가요? 프리랜스로 주문하세요 프리랜스로 이동

행렬 작업을 위한 클래스입니다.

행렬은 1차원 배열로 정의되며, 첫 번째 행의 요소, 두 번째 행 등의 행으로 구성됩니다. 배열의 마지막 두 요소는 행렬의 크기, 즉 열의 수와 행의 수를 정의합니다.

예시:

double m[]={1,2,3,
           4,5,6,
           2,3}; // 두 행과 세 개의 열로 구성된 행렬입니다.

클래스 메서드:

메서드 메서드 및 매개변수 할당

void SetSize(
double& aA[],
int aRows,
int aCols
)

행렬 aA의 크기를 설정합니다. aRows - 행의 개수, aCols - 열의 개수입니다.

void SetValue(
double& aA[],
int aRow,
int aCol,
double aValue
)

행 aRow와 열 aCol에 위치한 행렬 엘리먼트 aA의 값을 설정합니다.

int GetSize(
double& aA[],
int& aRows,
int& aCols
)

행렬 aA의 요소 수를 리턴합니다. 참조로 반환되는 값: aRows - 행의 수, aCols - 열의 수.

int GetRows(
double& aA[]
)

행렬 aA의 행의 개수를 리턴합니다.

int GetCols(
double& aA[]
)

행렬 aA의 열의 개수를 리턴합니다.

double GetValue(
double& aA[],
int aRow,
int aCol
)

행 aRow 및 열 aCol 에 위치하는 행렬 요소 aA 의 값을 리턴합니다.

void Copy(
double& aFrom[],
double& aTo[]
)

배열 aFrom 에서 배열 aTo 로 행렬을 복사합니다.

bool CheckForAdd(
double& aA[],
double& aB[]
)

두 행렬이 더하기 위한 크기가 비슷한지 (높이와 너비가 완전히 동등한지) 확인합니다.

bool CheckForMult(
double& aA[],
double& aB[]
)

두 행렬이 곱하기에 적합한 크기인지 확인합니다 (행렬 aA의 열 수는 행렬 aB의 행 수와 같음).

bool CheckIsSq(
double& aA[]
)

행렬이 정사각형인지 확인합니다.

void AddNum(
double& aA[],
double aNum,
double& aR[]
)

행렬 aA에 숫자 aNum을 추가합니다. 결과(행렬)는 배열 aR의 참조로 반환됩니다.

void MultNum(
double& aA[],
double aNum,
double& aR[]
)

행렬 aA에 숫자 aNum을 곱합니다. 결과(행렬)는 aR 배열의 참조로 반환됩니다.

void AddMx(
double& aA[],
double& aB[],
double& aAB[]
)

행렬 aA와 aB를 추가합니다. 결과(행렬)는 배열 aAB의 참조로 반환됩니다.

void MultMx(
double& aA[],
double& aB[],
double& aAB[])

행렬 aA에 행렬 aB를 곱합니다. 결과(행렬)는 배열 aAB의 참조로 반환됩니다.

void Transpose(
double& aA[],
double& aT[]
)

행렬 aA를 전치합니다. 전치된 행렬은 aT 배열의 참조로 반환됩니다.

void AlgAdd(
double& aA[]
double& aAA[]
)

대수 덧셈 행렬을 리턴합니다. aA는 원래 행렬, aAA는 대수 덧셈 행렬(참조로 반환)입니다.

bool Invert(
double& aA[],
double& aB[]
)

행렬 aA로부터 역 행렬 aR을 참조로 리턴합니다. 역행렬이 존재하면 참을, 역행렬이 존재하지 않으면 거짓을 반환합니다.

void Triangle(
double& aA[],
double& aT[]
)

행렬 aA로부터 삼각형 행렬 aT를 참조로 리턴합니다.

void Minor(
double aA[],
int aRow,
int aCol,
double& aM[]
)

행렬 aA에서 행 aRow와 열 aCol에 의해 부를 취득합니다. 부는 배열 aM의 참조로 반환됩니다.

double MinorDef(
double& aA[],
int aRow,
int aCol
)

행 aRow 및 열 aCol 의 행렬 aA의 부 행렬식의 값을 리턴합니다.

void MinorDefMx(
double& aA[],
double& aM[] )
)

부 행렬 (부 행렬의 행렬식의 행렬식)을 리턴합니다. aA는 소스 행렬이고, aM은 부 행렬의 행렬입니다 (참조로 반환됩니다).

double Def(
double& aA[])
)

행렬 aA의 행렬식의 행렬식의 값을 리턴합니다.

int Rank(
double& aA[]
)

행렬 aA의 순위를 리턴합니다.

int RankDRC(
double& aA[],
double& aDef,
int& aRow,
int& aCol
)

행렬 aA의 순위를 반환하고 참조로 반환합니다:

  • aDef - 행렬식의 값입니다,
  • aRow - 행렬식이 0이 아닌 부 행렬식
  • aCol - 행렬식이 0이 아닌 보조 열입니다.

void CopyCol(
double& aFrom[],
double& aTo[],
int aFromCol,
int aToCol,
double& aR[]
)

인덱스가 aFromCol인 열을 행렬 aFom에서 행렬 aTo로, 인덱스가 aToCol인 열로 복사합니다. 결과는 배열 aR을 참조하여 반환합니다.

void CopyRow(
double& aFrom[],
double& aTo[],
int aFromRow,
int aToRow,
double& aR[]
)

인덱스가 aFromRow인 행을 행렬 aFrom에서 행렬 aTo로, 인덱스가 aToRow인 행으로 복사합니다. 결과는 배열 aR에 대한 참조로 반환됩니다.

void AppendCol(
double& aA[],
double& aC[],
double& aF[]
)

행렬 aA에 열 aC를 추가하여 행렬을 확장합니다. 결과는 aF 배열의 참조로 반환됩니다.

void AppendRow(
double& aA[],
double& aR[],
double& aF[]
)

행 aR을 추가하여 행렬 aA를 확장합니다. 결과는 배열 aF의 참조로 반환됩니다.

bool SystemKramer(
double& aK[],
double& aY[],
double& aX[]
)

크레이머 방식으로 방정식 시스템을 풉니다.

  • aK - 계수 행렬(정사각형),
  • aY - 값 열
  • aX - 결과 문자열

bool SystemInverse(
double& aK[],
double& aY[],
double& aX[]
)

역 행렬을 통해 방정식 시스템을 풉니다.

  • aK - 계수 행렬(정사각형),
  • aY - 값의 열,
  • aX - 결과 행

bool SystemGauss(
double& aK[],
double& aY[],
double& aX[]
)

가우스 방식으로 방정식 시스템을 풉니다.

  • aK - 계수 행렬(정사각형),
  • aY - 값 열
  • aX - 결과 문자열

int SystemCheck(
double& aK[],
double& aY[] )
)

방정식 시스템을 확인합니다.

  • aK - 계수 행렬(정사각형),
  • aY - 값의 열입니다.

반환값:

  • -1 - 해가 없음,
  • 0 - 하나의 해
  • 1 - 솔루션의 무한한 개수

void Alert(
double& aA[],
int aDigits=2,
string aCaption=""
)

전체 행렬을 하나의 경고로 표시합니다.

  • aA - 행렬,
  • aDigits - 소수점 이하 자릿수,
  • aCaption - 메시지 헤더

void Alert2(
double& aA[],
int aDigits=2,
string aCaption=""
)

경고에 행렬을 한 줄씩 표시하고, 용어는 아래에서 위로, 캡션이 표시되며, 즉, 경고 창에서 행렬의 방향은 일반적으로 캡션이 맨 위에, 그 다음 행이 순서대로 표시됩니다.

void Alert1Str(
double& aA[],
int aDigits=2
)

알림에 행렬을 행별로 배열하여 표시합니다.


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 Clean Market Watch - Removes All Symbols In the Market Watch Windows In One Go

종합시세 정리 스크립트는 한 번의 클릭으로 메타트레이더 5 종합시세 창에서 모든 종목을 빠르게 제거할 수 있도록 설계된 간단한 유틸리티 도구입니다. 이 스크립트는 깔끔한 작업 공간에서 새로 시작하고 싶을 때 또는 종합시세창이 너무 많은 종목으로 복잡해졌을 때 특히 유용합니다. 목적 시간이 지나면서 트레이더는 종합시세창에 많은 종목이 쌓여 실제 거래하는 상품에 집중하기 어려워지는 경우가 종종 있습니다. 일일이 수동으로 심볼을 제거하는 것은 지루하고 시간이 많이 소요될 수 있습니다. 이 스크립트는 전체 프로세스를 자동화하여 몇 초 만에 모든 심볼을 지웁니다.

Indices Testing Indices Testing

EA는 매수 포지션만 거래하며 SL과 TP는 사용하지 않습니다.