안녕하세요, 트레이더 여러분! 오늘은 MetaTrader 5에서 사용할 수 있는 수직선 인디케이터에 대해 알아보려고 합니다. 이 인디케이터는 특정한 시간(시와 분)에 수직선을 그려주는 기능을 제공합니다.
입력 매개변수:

"시와 분만 사용하기" 매개변수에서 시와 분만 사용됩니다.
이 수직선은 현재 날짜에 그려지며, 새로운 날이 시작되면 수직선이 해당 날로 이동하고 지정된 시각에 맞춰 설정됩니다.
영상 설명:
이 인디케이터는 수직선이 우연히 삭제되는 것을 방지하기 위한 기능이 내장되어 있습니다. 타이머가 주기적으로 차트에서 수직선의 존재 여부를 확인합니다. 만약 수직선(OBJ_VLINE)을 찾지 못하면, 전역 프로그램 수준에서 선언된 정적 변수 "prev_date"가 0으로 리셋됩니다:
//+------------------------------------------------------------------+ //| 타이머 함수 | //+------------------------------------------------------------------+ void OnTimer() { //--- 무단 삭제 방지 if(ObjectFind(0,InpName)<0) { prev_date=0; VLineCreate(0,InpName,0,0.0,InpColor,InpStyle,InpWidth); } }
이렇게 하면 OnCalculate() 함수 내에서 새로운 수직선이 생성됩니다:
if(prev_date==0) // 첫 시작 { MqlDateTime str_input; TimeToStruct(InpTime,str_input); str_to_draw.hour=str_input.hour; str_to_draw.min=str_input.min; str_to_draw.sec=0; prev_date=StructToTime(str_to_draw); VLineMove(0,InpName,prev_date); return(rates_total); }
이렇게 수직선 인디케이터를 활용하면 더 효율적인 트레이딩을 할 수 있습니다. 여러분의 트레이딩에 도움이 되길 바랍니다!