좋은 하루... ArrayGetAsSeries 함수에 대한 질문입니다. ArrayGetAsSeries 함수의 작동 방식을 이해하려면이 스크립트를 작성했습니다:
//+------------------------------------------------------------------------------------------+//| ArrayGetAsSeries_плюс.mq4 |//+------------------------------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------------------------------+//------------------------------------ НАЧАЛО START -------------------------------------- 1 -int start() //функция start
{ //начало startdouble Timestart= GetTickCount (); //переменная, с помощью которой вычисляется время (в милисекундах) начала выполнения эксперта double array1[]; //объявляем массив-приемник (массив, куда будут скопированы данные)int element= ArrayCopy (array1,Open, 0 , 0 , WHOLE_ARRAY ); //копируем данные по ценам открытия в пользовательский массив (начиная с нулевого бара)int size= ArraySize (array1); //устанавливаем количество элементов массива array1for ( int i= 0 ;i<= 4 ;i++) //цикл по просмотру скопированных значений (первых пяти)
{ //начало forAlert ( "Значение цены открытия бара № " ,i, " равно " ,array1[i],
"\nВремя цены открытия бара № " ,i, ": " , TimeToStr ( iTime ( NULL , 0 ,i),TIME_DATE|TIME_MINUTES)); //cообщение на экран
} //конец for//----------------------------------------------------------------------------------------- 2 -Comment ( "\nФункция ArrayCopy(array1[],Open,0,0,WHOLE_ARRAY) вернула: " ,element,
"\nФункция ArraySize(array1) вернула: " ,size,
"\nФункция ArrayGetAsSeries(array1) вернула: " , ArrayGetAsSeries (array1),
"\nСкрипт выполнялся всего " , GetTickCount ()-Timestart, " миллисекунд, из них: " , MathFloor (( GetTickCount ()-Timestart)/ 1000 ),
" секунд " ,(( GetTickCount ()-Timestart)/ 1000 - MathFloor (( GetTickCount ()-Timestart)/ 1000 ))* 1000 , " миллисекунд" ); //печать //сообщения на экран//----------------------------------------------------------------------------------------- 3 -return ( 0 ); //выход из start
} //конец start//-------------------------------------- КОНЕЦ START -------------------------------------- 4 -
스크립트는 막대 시작 가격의 배열-시계열을 사용자 정의 배열로 복사했습니다. 분명히: 이 사용자 지정 배열은 시계열 배열로 구성됩니다. 배열의 요소가 마지막에서 첫 번째 순서로 인덱싱되기 때문입니다(이는 Alert 함수 가 있는 스크린샷으로 증명됩니다.네 번째 막대가 열리는 시간과 가격을 도출했습니다. 이 막대는 차트에 수직선으로 표시됩니다. 거기에서 이 바의 시가를 볼 수도 있고 속성 창에서 바의 시간이 Ale rt 기능에서와 같은 것을 볼 수 있습니다). 그러나 ArrayGetAsSeries 함수는 0을 반환합니다. 이는 사용자 지정 배열이 시계열 배열(스크린샷의 왼쪽 상단)처럼 구성되지 않았음을 의미합니다.
질문 : 사용자 지정 배열이 시계열 배열로 구성되어 있는데도 ArrayGetAsSeries 함수가 0을 반환하는 이유는 무엇입니까?
int start() // Спец. функция start()
{ // Открытие BUYOrderSend ( Symbol (),OP_BUY, 0.1 ,Ask, 3 ,Bid- 15 * Point ,Bid+ 15 * Point );
Alert ( GetLastError ());
return ; // Выход из start()
}
이 예에서는 4자의 도구에 대한 코드가 제공됩니다.
나는 점 뒤에 5자리 숫자가 있는 회사의 계정을 가지고 있습니다.
5자 코드를 올바르게 다시 작성하는 방법을 작성하고 스크립트를 실행할 때 오류 4109(거래 불가)가 발생하는 이유는 무엇입니까?
내가 뭔가 잘못 설명했을 수도 있습니다. 모스크바 시간 16:00에 시작하는 m1 m5 m15 m30 h1 h4의 첫 번째 양초와 표시기 표시(예: m15에 4개의 양초가 있음)만 표시하면 됩니다.
돕는 것과 행하는 것은 다른 것입니다. 동의하지 않습니까?
배열의 크기를 지정해야 하지 않습니까?
예, 이미 지쳤습니다. 이제 어레이가 가득 찼지만 행은 여전히 표시되지 않습니다. 배열은 버퍼에 바인딩됩니다.
네, 정말 잊고 있었어요. 이미 피곤했어요. 이제 어레이가 가득 찼지만 행은 여전히 표시되지 않습니다. 배열은 버퍼에 바인딩됩니다.
모든 코드를 제공할 수 있습니까? 그리고 나서 당신에게 분명한 것이 무엇인지 생각하고 싶지 않습니다.
돕는 것과 행하는 것은 다른 것입니다. 동의하지 않습니까?
전적으로 동의합니다 도움을 요청했습니다 2주째 골랐는데 원하는 결과가 없어서 님의 선택도 저에게 어울리지 않습니다 글쎄요 감사합니다 스스로 생각해보겠습니다 .
좋은 하루... ArrayGetAsSeries 함수에 대한 질문입니다. ArrayGetAsSeries 함수의 작동 방식을 이해하려면 이 스크립트를 작성했습니다:
스크립트는 막대 시작 가격의 배열-시계열을 사용자 정의 배열로 복사했습니다. 분명히: 이 사용자 지정 배열은 시계열 배열로 구성됩니다. 배열의 요소가 마지막에서 첫 번째 순서로 인덱싱되기 때문입니다(이는 Alert 함수 가 있는 스크린샷으로 증명됩니다. 네 번째 막대가 열리는 시간과 가격을 도출했습니다. 이 막대는 차트에 수직선으로 표시됩니다. 거기에서 이 바의 시가를 볼 수도 있고 속성 창에서 바의 시간이 Ale rt 기능에서와 같은 것을 볼 수 있습니다). 그러나 ArrayGetAsSeries 함수는 0을 반환합니다. 이는 사용자 지정 배열이 시계열 배열(스크린샷의 왼쪽 상단)처럼 구성되지 않았음을 의미합니다.
질문 : 사용자 지정 배열이 시계열 배열로 구성되어 있는데도 ArrayGetAsSeries 함수가 0을 반환하는 이유는 무엇입니까?
PS 포럼을 어지럽히지 않기 위해 미리 답변 주셔서 감사합니다.
질문 : 사용자 지정 배열이 시계열 배열로 구성되어 있는데도 ArrayGetAsSeries 함수가 0을 반환하는 이유는 무엇입니까?
데이터를 어떤 순서로 복사했다고 해서 배열이 시계열로 구성된다는 의미는 아닙니다.
그러나 문제는 이미 복사된 막대에서 for 루프에서 재생산되는 시작 가격의 값이 마지막에서 처음으로 인덱싱된다는 것입니다. 그러나 결국, 내가 이해하는 한 이것은 배열이 시계열로 구성된다는 의미(즉, 마지막에서 첫 번째로 인덱싱)를 의미합니까?
추신 FileIsEnding 및 FileIsLineEnding 기능에 대한 이전 질문에 답변해 주셔서 감사합니다.
그러나 문제는 이미 복사된 막대에서 for 루프에서 재생산되는 시작 가격의 값이 마지막에서 처음으로 인덱싱된다는 것입니다. 그러나 결국, 내가 이해하는 한 이것은 배열이 시계열로 구성된다는 의미(즉, 마지막에서 첫 번째로 인덱싱)를 의미합니까?
추신 FileIsEnding 및 FileIsLineEnding 기능에 대한 이전 질문에 답변해 주셔서 감사합니다.
아니요, 데이터가 기록과 일치했다는 의미일 뿐입니다.
예를 들어 수동으로 운전할 수도 있습니다. 또는 텍스트 파일에서 작성하십시오. 또는 결제 시 수령하세요.
결국, 일부 조건부 데이터 "1.25 1.16 1.73 1.35"를 입력하더라도 몇 년 전 일부 통화의 역사에 들어갈 수 있습니다. 그러나 이것이 우리가 시계열 배열을 구성했다는 것을 의미하지는 않습니다.
질문을 중복해서 죄송합니다. 하지만 알아낼 때까지 다음 예제를 실행할 수 없습니다.
알아낼 수 있도록 도와주세요.
주문을 여는 간단한 스크립트를 작성했습니다(MQL4 튜토리얼에서).
이 예에서는 4자의 도구에 대한 코드가 제공됩니다.
나는 점 뒤에 5자리 숫자가 있는 회사의 계정을 가지고 있습니다.
5자 코드를 올바르게 다시 작성하는 방법을 작성하고 스크립트를 실행할 때 오류 4109(거래 불가)가 발생하는 이유는 무엇입니까?