CustomTicksReplace

지정된 시간 간격 내에 사용자 지정 심볼의 가격 기록을MqlTick 유형 배열의 데이터로 완전히 대체합니다.

int  CustomTicksReplace(
   const string     symbol,            // 심볼 이름
   long             from_msc,          // 시작일
   long             to_msc,            // 종료일
   const MqlTick&   ticks[],           // 사용자 지정 심볼에 적용할 데이터의 배열
   uint             count=WHOLE_ARRAY  // 사용할 ticks[] 배열 요소의 수
   );

매개변수

심볼

[in]  사용자 지정 심볼 이름.

from_msc

[in]  가격 내역에서 제거할 지정된 범위 내의 첫 번째 틱 시간. 1970년 1월 1일 이후 시간(밀리초).

to_msc

[in]  가격 내역에서 제거할 지정된 범위 내의 마지막 틱 시간. 1970년 1월 1일 이후 시간(밀리초).

ticks[]

[in]   시간에 따라 오름차순으로 정렬된 MqlTick 유형의 틱 데이터의 배열.

count=WHOLE_ARRAY

[in]  지정된 시간 간격 동안 교체에 사용할 ticks[] 배열 요소의 수. WHOLE_ARRAY 는 모든 ticks[] 배열 요소를 사용해야 함을 의미합니다.

값 반환

오류가 발생할 경우 업데이트된 틱 또는 -1.

주의

여러 틱은 종종 시세 스트림에서 최대 1밀리초까지 동일한 시간을 가질 수 있으므로 (정확한 틱 시간은 time_msc 필드에 저장됨, MqlTick 구조) CustomTicksReplace 기능은 시간별로ticks[] 배열 요소를 자동으로 정렬하지 않습니다. 따라서 틱 배열을 시간 오름차순으로 미리 정렬해야 합니다.

틱은 매일 즉, to_msc 또는 오류가 발생할 때까지 연속적으로 교체됩니다. 지정된 범위의 첫 번째 요일이 처리된 후 다음 요일 등이 처리됩니다. 틱 시간과 오름차순(비내림차순) 간의 불일치가 감지되는 즉시, 틱 교체가 현재 날짜에 중지됩니다. 현재 날짜(잘못된 틱의 순간)와 지정된 간격의 나머지 모든 일수는 변경되지 않은 상태에서 이전 날짜의 모든 체크 표시가 성공적으로 대체됩니다.

ticks[] 배열에 특정 날짜(일반적으로 임의의 시간 간격)의 틱 데이터가 없는 경우, ticks[]의 틱 데이터가 적용된 후 누락된 데이터에 해당하는 "홀(hole)"이 사용자 지정 심볼 내역에 나타납니다. 다시 말해, 누락된 틱이 있는 CustomTicksReplace 호출은 "홀(hole)" 간격이 있는 CustomTicksDelete를 호출하는 것처럼 틱의 일부를 삭제하는 것과 같습니다.

틱 데이터베이스에 지정된 시간 간격에 대한 데이터가 없는 경우 CustomTicksReplace은 ticks[] 배열에서 데이터베이스 틱에 추가됩니다.

CustomTicksReplace 기능은 틱 데이터베이스와 직접 연동됩니다.

 

추가 참조

CustomRatesDelete, CustomRatesUpdate, CustomTicksDelete, CopyTicks, CopyTicksRange