초보자의 질문 MQL4 MT4 MetaTrader 4 - 페이지 21

 
bablusut :

답변 감사합니다... 그래서 거래 내역의 주문을 반복하기 위해 OrdersHistoryTotal 함수를 사용합니다. 이 함수는 필요하지 않은 모든 것을 버린 후 다음과 같이 나타납니다.

for ( int i= OrdersHistoryTotal ()- 1 ; i>= 0 ; i--) // - 여기서 질문은 우리가 떨어뜨린 함수 템플릿에서 " acTotal"이 무엇을 의미 합니까? 그리고 왜 "나--"를 취했습니까? 템플릿에서와 같이 " i++" 가 아니라?
- 두 번째 함수 OrderComment 는 이전 함수 OrdersHistoryTotal 에 의해 선택된 경우 선택한 주문의 주석을 반환합니다. 형식은 다음과 같습니다.

if ( OrderSelect (i, SELECT_BY_POS , MODE_HISTORY )) //- 여기서 " i " 이전 함수 " i>= 0 "이고 " SELECT_BY_TICKET"은 " SELECT_BY_POS "로 대체되고 " MODE_HISTOR Y " 가 추가되었습니다 . - 왜 그럴까요?

- 세 번째 줄은 정의이며, 이 기록에서는 TP에 의해 마감된 시장 주문만 있기 때문에 필요한 주문의 검증은 원칙적으로 필요하지 않습니다. 및 SL(닫힌 보류 주문 이 있을 수 있지만 드물게 발생함), 다른 모든 주문 매개변수는 중요하지 않습니다. 또 다른 것이 중요합니다. 기록에서 마감된 주문의 수가 지속적으로 증가할 것입니다. 다시 계산할 때 모든 마감된 주문이 선택되지 않고 마지막 주문의 특정 수(예: 5 - 10)가 취해지도록 할 수 있습니까?

- 마지막 네 줄은 일반적으로 이해할 수 있습니다. 유일한 질문은 PlaySound 함수이며, 코드는 각 줄 뒤에 삽입해야 합니다. " Print ( "..." 이 형식:  



OrderComment 는 이전 함수 OrdersHistoryTotal에 의해 선택된 경우 선택한 주문의 설명을 반환합니다. - 이 함수는 아무 것도 선택하지 않습니다. - 마감 및 삭제된 주문의 총 수를 반환합니다( 로드된 현재 계정 내역에서 마감 및 삭제된 주문의 수 클라이언트 단말기.이력 목록의 크기는 단말기의 현재 설정 탭 "계정 이력"에 따라 다릅니다. 교과서에서 인용합니다.)


튜토리얼 예시의 accTotal:

int i,accTotal= OrdersHistoryTotal (); - 이것은 OrdersHistoryTotal 의 값을 취하는 int 변수입니다.
for (i=0;i<accTotal;i++) // 히스토리 목록을 반복하는 방법은 첫 번째 순서에서 마지막 순서로 또는 그 반대로 중요하지 않습니다. 전체 목록은 여전히 순차적으로 반복됩니다.

하지만 앞의 경우 변수가 1개 적지만 OrdersHistoryTotal 요청은 주기마다 처리됩니다.

SELECT_BY_POS - 색인 매개변수는 목록의 주문 번호를 포함하고 목록 자체는 두 번째 연산자 입니다.
SELECT_BY_TICKET - 티켓 번호가 인덱스 매개변수에 전달됩니다. 주문을 선택하기 전에 어딘가에 가져 가야합니다.


- 마지막 네 줄은 일반적으로 이해할 수 있습니다. 유일한 질문은 PlaySound 함수이며, 코드는 각 줄 뒤에 삽입해야 합니다. " Print ( "..." 이 형식:  

bool 플레이사운드(

문자열 지불 // 파일 이름

);

... 아니면 어떻게 든 변형 된 것입니까?

발표하다 bool PlaySound( 프로그램 헤더에서 - 설정 파일에서 소리를 켜고 끌 수 있는 기능을 얻을 수 있습니다. extern bool Play = TRUE;

다음으로 Print는 무엇을 인쇄할까요? 그리고 어떤 조건에서?

이 행동의 의미는 무엇입니까? 주문을 마감할 때 소리를 재생하고 의견을 작성하십시오(TP 또는 SL로)?






 
bablusut :
도움을 준 Vitalie Postolache 에게 감사드립니다. 조언에 감사드립니다. 60대에 이 교과서에 대한 정보를 공부하기에는 너무 늦었을 것입니다. 그렇게 많이 당기지는 않을 것입니다. 더 일찍 해야 했지만, 시간 없다. 여기 있는 너한테 꽤 지쳤어, 미안하지만, 더 이상은 안 할게. 그냥 이대로 갈게.
별도의 주제를 만드는 것이 더 낫습니다. 이런 식으로 작동하고 싶습니다. 예를 들어, 다른 옵션을 보고 논리 측면에서 어떤 옵션이 더 정확한지 알아내는 것이 흥미로울 것입니다.
 

그건 그렇고 질문이 있습니다.

스프레드 수표를 작성해야 합니다.

스프레드가 지정된 값보다 큰 경우 나는 단순히 그 가치에 대한 요청과 주문 개시 금지를 사용했습니다.

그러나 스프레드가 감소한 시점에 어드바이저가 주문을 열고 스프레드가 증가하는 것으로 나타났습니다.

이제 나는 그것을 올바르게 고려하는 방법을 알아낼 수 없습니다. 각 눈금 이 배열에 기록되면 배열의 크기는 얼마나 될까요? 다시 말하지만, 얼마나 오래 지속됩니까?

물론 비슷한 값을 쓸 수도 없고 더 작은 값만 가져갈 수는 없지만 어떻게든 재설정해야 합니다.

그리고 가장 중요한 것은 이해할 수 없다는 것입니다. 최소 및 최대 스프레드 또는 점프 신호를 고려해야 합니다.
 
struct MqlRates
  {
   datetime time;         // время начала периода
   double    open;         // цена открытия
   double    high;         // наивысшая цена за период
   double    low;           // наименьшая цена за период
   double    close;         // цена закрытия
   long      tick_volume;   // тиковый объем
   int       spread;       // спред
   long      real_volume;   // биржевой объем
  };
프롬프트, 스프레드의 어떤 값이 저장됩니까? 바 오픈 초기 상태는?
 
A1exPit :
struct MqlRates
  {
   datetime time;         // время начала периода
   double    open;         // цена открытия
   double    high;         // наивысшая цена за период
   double    low;           // наименьшая цена за период
   double    close;         // цена закрытия
   long      tick_volume;   // тиковый объем
   int       spread;       // спред
   long      real_volume;   // биржевой объем
  };
프롬프트, 스프레드의 어떤 값이 저장됩니까? 바 오픈 초기 상태는?

인트 스프레드; // 확산

즉, 아니

 
A1exPit :
struct MqlRates
  {
   datetime time;         // время начала периода
   double    open;         // цена открытия
   double    high;         // наивысшая цена за период
   double    low;           // наименьшая цена за период
   double    close;         // цена закрытия
   long      tick_volume;   // тиковый объем
   int       spread;       // спред
   long      real_volume;   // биржевой объем
  };
프롬프트, 스프레드의 어떤 값이 저장됩니까? 바 오픈 초기 상태는?
현재 막대를 요청하는 경우 현재 스프레드, 기록에서 가져온 경우 마감 시.
 
Vitalie Postolache :
현재 막대를 요청하는 경우 현재 스프레드, 기록에서 가져온 경우 마감 시.
고맙습니다.
 

배열에 데이터를 쓰려면 각 셀에 고유한 값을 할당해야 한다는 것을 정확히 이해하고 있습니다. array1[i] = x; 특정 셀 번호를 나타내는

또는 i=0 이상부터 순차적으로 배열을 채울 수 있습니까?

 
A1exPit :

배열에 데이터를 쓰려면 각 셀에 고유한 값을 할당해야 한다는 것을 정확히 이해하고 있습니다. array1[i] = x; 특정 셀 번호를 나타내는

또는 i=0 이상부터 순차적으로 배열을 채울 수 있습니까?

차이점은 무엇입니까? 나는 그것이 단지 두 가지 다른 방법이라고 생각합니다.
 
Renat Akhtyamov :
차이점은 무엇입니까? 나는 그것이 단지 두 가지 다른 방법이라고 생각합니다.
데이터를 배열로 전송할 때 데이터가 순차적으로 채워진다는 것을 의미했습니다. 배열1[] = x; 셀 번호가 직접 지정되지 않은 경우 x 값은 어느 셀에 기록됩니까?