안녕하세요, 트레이더 여러분! 오늘은 MetaTrader 4에서 계좌 정보를 차트에 표시하는 인디케이터에 대해 알아보겠습니다. 이 인디케이터를 사용하면 수익, 잔고, 자산, 자유 마진, 마진, 마진 레벨 % 등을 한눈에 확인할 수 있습니다.
인디케이터 목록
- 인디케이터 1: Account Info Vertical 4.01 - 계좌 정보를 세로로 나열합니다.
- 인디케이터 2: Account Info Horizontal 4.01 - 계좌 정보를 가로로 나열합니다.
계좌 정보 표시 및 숨기기
- 계좌 정보 숨기기: 계좌 정보 텍스트를 클릭하세요.
- 계좌 정보 표시하기: 'Account Info' 텍스트를 클릭하세요.
- 수익만 표시하기: 입력값에서 'true'를 선택하세요.
세로 및 가로 축은 계좌 정보 헤더 간의 간격을 자동으로 동일하게 조정하며, 글꼴이 겹치지 않도록 설정됩니다. 아래의 추천 사항을 참고하세요.
숨기기/보이기 기능은 들어오는 틱이나 차트 새로 고침에 따라 작동합니다. 틱이 적거나 시장이 닫혀 있을 때는 이 기능이 작동하지 않는 것처럼 보일 수 있습니다. 이러한 경우에 대비해 자동 새로 고침 타이머 인디케이터가 포함되어 있으니, 하나의 차트에만 붙이면 모든 차트에서 계좌 정보가 동시에 새로 고침됩니다.
자동 새로 고침 주기를 늘리면 최신 장비에 대해서는 CPU 부하에 미치는 영향이 미미합니다. CPU 부하, 온도 및 사용 중인 RAM 비율을 모니터링하려면 Core Temp와 같은 프로그램을 사용해 보세요.




추천 사항
세로 및 가로 축의 간격을 동일하게 유지하기
아래의 요구 사항을 충족해야 합니다:
- 연속 계좌 헤더 간의 간격은 동일해야 합니다.
- 글꼴 크기를 늘리거나 줄이면 글꼴이 겹치지 않아야 합니다.
세로 축의 간격 유지
불필요한 반복을 피하기 위해 '동일 간격'이라는 표현은 '계좌 헤더 간의 동일 간격'을 의미합니다. 세로 순서의 계좌 헤더 간의 간격은 OBJPROP_YDISTANCE 매개변수 공식을 통해 유지됩니다.
세로 간격을 유지하려면 다음을 포함해야 합니다:
- 연속 헤더의
OBJPROP_YDISTANCE공식을 통해 세로 간격을 유지합니다. - 글꼴 크기 변화에 따라 각 간격이 비례적으로 증가하거나 감소하여 글꼴이 겹치지 않도록 합니다.
OBJPROP_YDISTANCE의 세로 축 이동은 추가 매개변수 값을 포함하여 유지됩니다.
아래의 account_info_vertical 코드는 이 솔루션을 보여줍니다.
input int Up_Down=10; // 위 <-> 아래 .......... int OnInit() { .......... { Up_Down_ML=Up_Down+Font_Size*10; Up_Down_M =Up_Down+Font_Size*8; Up_Down_FM=Up_Down+Font_Size*6; Up_Down_E =Up_Down+Font_Size*4; Up_Down_B =Up_Down+Font_Size*2; Up_Down_P =Up_Down; } .......... int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[],..........) { .......... // 잔고 헤더 YDISTANCE ObjectSet("Acc_B_v",OBJPROP_YDISTANCE,Up_Down_B); ........... // 수익 헤더 YDISTANCE ObjectSet("Acc_P_v",OBJPROP_YDISTANCE,Up_Down_P); ...........
가로 축의 간격 유지
가로 순서의 계좌 헤더 간의 간격은 OBJPROP_XDISTANCE 매개변수 공식을 통해 유지됩니다.
가로 축의 세로 간격 유지 공식은 비교적 간단합니다. 각 헤더의 OBJPROP_XDISTANCE 공식은 계좌 마진, 수익 또는 손실, 잔고의 변화에 따라 변동하는 변수에 따라 조정되어야 합니다.
가로 간격 유지를 위해 다음을 포함해야 합니다:
- 연속 헤더의
OBJPROP_XDISTANCE공식은 이전 헤더의 문자열 길이를 모두 합산하여 글꼴 크기와 관련된 배수를 곱하여 유지합니다. - 가로 글꼴 겹침을 피하기 위해 각 간격이 글꼴 크기 변화에 비례하여 증가하거나 감소합니다.
OBJPROP_XDISTANCE의 가로 축 이동은 추가 매개변수 값을 포함하여 유지됩니다.
아래의 account_info_horizontal 코드는 이 솔루션을 보여줍니다.
input int Left_Right_P=15; // 왼쪽 <-> 오른쪽 int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[],.........) { double Spacer_Mult=Font_Size*Spacing*0.1; .......... .......... // 수익 헤더 문자열 길이 int StLenP=StringLen(Acc_P_Header+Acc_Curr+Acc_gap_P+Acc_P_hs); .......... // 잔고 헤더 문자열 길이 int StLenB = StringLen(Acc_B_Header+Acc_B_hs); .......... .......... // 자산 헤더 XDISTANCE ObjectSet("Acc_E_h",OBJPROP_XDISTANCE,(StLenP+StLenB)*Spacer_Mult+Left_Right_P); .......... // 잔고 헤더 XDISTANCE ObjectSet("Acc_B_h",OBJPROP_XDISTANCE,StLenP*Spacer_Mult+Left_Right_P); .......... // 수익 헤더 XDISTANCE ObjectSet("Acc_P_h",OBJPROP_XDISTANCE,Left_Right_P);