CopyTicksRange

틱을 MqlTick 구조에서 지정된 데이터 범위 내에서 행렬 또는 벡터로 가져옵니다. 요소는 과거부터 현재까지 계산됩니다. 즉, 인덱스가 0인 틱이 가장 오래된 것입니다. 틱을 분석하려면 다음을 확인하십시오. flags는 틱에서 정확히 무엇이 변경되었는지 보여주는 필드로 이 부분을 �薦曠爛求�.

bool  matrix::CopyTicksRange(
   string           symbol,                // 심볼명
   ulong            flags,                 // 수신되어야 할 틱의 타입을 알려주는 flag
   ulong            from_msc,              // 틱이 요청된 시간부터 
   ulong            to_msc                 // 틱이 요청되기까지 시간
   );

벡터 Method

bool  vector::CopyTicksRange(
   string           symbol,                // 심볼명
   ulong            flags,                 // 수신되어야 할 틱의 타입을 알려주는 flag
   ulong            from_msc,              // 틱이 요청된 시간부터 
   ulong            to_msc                 // 틱이 요청되기까지 시간
   );

매개 변수

Symbol

[in]  심볼

flags

[in] 요청된 데이터의 내용을 나타내는 ENUM_COPY_TICKS 열거의 플래그 조합입니다.벡터로 복사할 때 ENUM_COPY_TICKS 열거형에서 하나의 값만 지정할 수 있습니다. 그렇지 않으면 오류가 발생합니다.

from_msc

[in]  틱이 요청되는 때부터 시작 시간. 시간은 1970년 1월 1일 이후부터 밀리초 단위로 지정됩니다. 'from_msc' 매개변수를 지정하지 않으면 히스토리의 처음부터 틱이 반환됩니다. Ticks with the time >= from_msc가 반환 됨.

to_msc

[in]  Time up to which ticks are requested. 시간은 1970년 1월 1일 이후부터 밀리초 단위로 지정됩니다. Ticks with the time <= to_msc가 반환됨. to_msc 매개변수를 지정하지 않으면 히스토리 끝까지의 모든 틱이 반환됩니다.

반환값

성공하면 true를 반환하고 오류가 발생하면 false를 반환합니다. GetLastError()는 다음과 같은 오류를 반환할 수 있습니다.

  • ERR_HISTORY_TIMEOUT — 틱 동기화 시간 초과가 만료되었습니다. 함수가 가진 모든 것을 반환했습니다.
  • ERR_HISTORY_SMALL_BUFFER — 정적 버퍼가 너무 작습니다. 배열이 저장할 수 있는 양만 반환되었습니다.
  • ERR_NOT_ENOUGH_MEMORY — 지정된 범위의 기록 데이터를 동적 틱 배열로 수신하기 위한 메모리가 충분하지 않습니다. 틱 배열에 충분한 메모리를 할당하지 못했습니다.

 

틱 플래그를 분석하여 어떤 데이터가 변경되었는지 확인합니다:

  • TICK_FLAG_BID — 틱이 bid 가격을 변경했습니다.
  • TICK_FLAG_ASK — 틱이 ask 가격을 변경했습니다.
  • TICK_FLAG_LAST — 틱이 마지막 거래 가격을 변경했습니다.
  • TICK_FLAG_VOLUME — 틱이 볼륨을 변경했습니다.
  • TICK_FLAG_BUY — 틱은 매수 거래의 결과입니다.
  • TICK_FLAG_SELL — 틱은 매도 거래의 결과입니다.

참조

CopyTicksRange() 메서드는 지정된 범위 내에서 틱을 요청하는 데 사용됩니다. 예를 들어 히스토리의 특정 날짜에 대한 틱입니다. CopyTicks()는 시작 날짜만 지정할 수 있습니다. 예를 들어 월초부터 현재까지의 모든 틱을 수신하기 위한 경우등입니다.

또다른 참조

시계열 및 지표에 대한 액세스,CopyTicksRang