차트 속성

ENUM_CHART_PROPERTY 열거형 식별자는 차트로 작업하기 위한 함수의 매개 변수로 사용됩니다. "속성 유형" 칼럼의 r/o 약어는 이 속성이 읽기 전용이며 변경할 수 없음을 의미합니다./ "속성 유형" 칼럼의 w/o 약어는 이 속성이 쓰기 전용이며 수신할 수 없음을 의미합니다. 특정 속성에 액세스할 때는 차트 하위 창의 수를 나타내는 추가 매개 변수 수정자(한정자)를 지정해야 합니다. 0은 메인 창을 의미합니다

차트 속성을 정의하는 함수는 실제로 차트에 변경 명령을 보내는 데 사용됩니다. 이러한 함수가 성공적으로 실행되면 명령이 차트 이벤트의 공통 대기열에 포함됩니다. 차트 이벤트의 대기열을 처리할 때 변경 사항이 차트에 구현됩니다.

따라서 이러한 기능을 호출한 후 차트의 즉각적인 시각적 업데이트를 기대하지 마십시오. 일반적으로 차트는 새 견적 도착, 차트 창 크기 조정 등 변경 이벤트 이후에 터미널에 의해 자동으로 업데이트됩니다. ChartRedraw() 함수를 사용하여 차트를 강제로 업데이트합니다.

다음 함수의 경우: ChartSetInteger()ChartGetInteger()

ENUM_CHART_PROPERTY_INTEGER

ID

설명

속성 유형

CHART_SHOW

가격 차트 그리기. 거짓이면 가격 차트 속성을 그릴 수 없고 시간 및 가격 척도, 빠른 탐색 막대, 달력 이벤트 레이블, 지표 및 막대 도구 설명, 지표 하위 창, 볼륨 히스토그램 등 모든 차트 테두리 렌더가 제거됩니다.

도면을 비활성화하면 그래픽 리소스를 사용하여 사용자 정의 프로그램 인터페이스를 만들 수 있는 완벽한 솔루션입니다.

그래픽 객체 는 CHART_SHOW 특성 값에 관계없이 항상 그려집니다.

bool

CHART_IS_OBJECT

"차트"(OBJ_CHART) 개체 식별 – 그래픽 개체에 대해 true를 반환합니다. 실제 차트에 대해 false를 반환합니다

bool   읽기전용

CHART_BRING_TO_TOP

다른 차트 맨 위에 차트 표시

bool  

CHART_CONTEXT_MENU

마우스 오른쪽 버튼을 사용하여 상황에 맞는 메뉴에 대한 액세스 사용/사용 안 함.

CHART_CONTEXT_MENU=false 면, 차트의 상황에 맞는 메뉴만 비활성화됩니다. 차트에 있는 개체의 상황에 맞는 메뉴를 사용할 수 있습니다.

bool  (디폴트는 true)

CHART_CROSSHAIR_TOOL

가운데 클릭을 사용하여 십자형 도구에 대한 액세스를 활성화/비활성화합니다.

bool  (디폴트는 true)

CHART_MOUSE_SCROLL

마우스 왼쪽 버튼을 사용하여 차트를 수평으로 스크롤합니다. 또한 수직 스크롤은 다음 속성 값이 참으로 설정된 경우에도 사용할 수 있습니다: CHART_SCALEFIX, CHART_SCALEFIX_11 또는 CHART_SCALE_PT_PER_BAR

CHART_MOUSE_SCROLL=false 면, 마우스 휠을 사용한 차트 스크롤을 사용할 수 없습니다

bool

CHART_EVENT_MOUSE_WHEEL

차트의 모든 mql5 프로그램에 마우스 휠 이벤트(CHARTEVENT_MOUSE_WHEEL)에 대한 메시지 보내기

bool  (디폴트는 true)

CHART_EVENT_MOUSE_MOVE

차트의 모든 mql5 프로그램에 마우스 이동 및 마우스 클릭 이벤트(CHARTEVENT_MOUSE_MOVE)에 대한 알림 보내기

bool

CHART_EVENT_OBJECT_CREATE

차트의 모든 mql5-프로그램에 새 개체 생성(CHARTEVENT_OBJECT_CREATE) 이벤트 알림 보내기

bool

CHART_EVENT_OBJECT_DELETE

차트의 모든 mql5-프로그램에 개체 삭제 이벤트(CHARTEVENT_OBJECT_DELETE)에 대한 알림

bool

CHART_MODE

차트 유형(캔들스틱, 막대 또는 선)

enum     ENUM_CHART_MODE

CHART_FOREGROUND

전경의 가격 차트

bool

CHART_SHIFT

오른쪽 테두리에서 들여쓰는 가격 차트 모드

bool

CHART_AUTOSCROLL

차트의 오른쪽 테두리로 자동 이동 모드

bool

CHART_KEYBOARD_CONTROL

키보드("홈", "끝", "페이지업", "+", "-", "위쪽 화살표" 등)를 사용하여 차트를 관리할 수 있습니다. CHART_KEYBOARD_CONTROL를 false로 설정하면 차트 스크롤 및 스케일링이 비활성화되며 OnChartEvent()에서 이벤트를 누르는 키를 수신할 수 있습니다.

bool

CHART_QUICK_NAVIGATION

차트가 Space를 가로채고 Enter 키를 눌러 빠른 탐색 막대를 활성화합니다. 마우스를 두 번 클릭하거나 Space/Enter를 누르면 차트 하단에 빠른 탐색 막대가 자동으로 나타납니다. 이를 통해 기호, 시간 범위 및 처음 표시되는 막대 날짜를 빠르게 변경할 수 있습니다.

bool

CHART_SCALE

스케일

int        0에서부터 5까지

CHART_SCALEFIX

고정 스케일 모드

bool

CHART_SCALEFIX_11

스케일 1:1 모드

bool

CHART_SCALE_PT_PER_BAR

막대당 포인트로 지정할 축척도

bool

CHART_SHOW_TICKER

왼쪽 상단 모서리에 기호 스티커를 표시합니다. CHART_SHOW_TICKER 를 'false'로 설정하면 CHART_SHOW_OHLC도 'false'로 설정되고 OHLC가 비활성화됩니다

bool

CHART_SHOW_OHLC

왼쪽 상단에 OHLC 값을 표시합니다. CHART_SHOW_OHLC 를 'true'로 설정하면 CHART_SHOW_TICKER도 'true'로 설정되고 티커가 활성화됩니다

bool

CHART_SHOW_BID_LINE

차트에서 입찰 값을 수평선으로 표시

bool

CHART_SHOW_ASK_LINE

차트에서 묻기 값을 수평선으로 표시

bool

CHART_SHOW_LAST_LINE

차트에서 마지막 값을 수평선으로 표시

bool

CHART_SHOW_PERIOD_SEP

인접 기간 사이의 수직 구분 기호 표시

bool

CHART_SHOW_GRID

차트에 그리드 표시

bool

CHART_SHOW_VOLUMES

차트에 볼륨 표시

enum     ENUM_CHART_VOLUME_MODE

CHART_SHOW_OBJECT_DESCR

객체에 대한 텍스트 설명 표시(일부 객체에 사용할 수 없음)

bool

CHART_SHOW_TRADE_HISTORY

거래 내역의 거래를 진입/청산의 화살표로 차트에 표시합니다. 플랫폼 설정의 옵션 설명에서 거래 내역 보기""를 참조하십시오.

bool

CHART_VISIBLE_BARS

차트에서 표시할 수 있는 막대 수

int 읽기전용

CHART_WINDOWS_TOTAL

지표 하위 창을 포함한 총 차트 창 수

int 읽기전용

CHART_WINDOW_IS_VISIBLE

하위 창의 가시성

bool 읽기전용   한정자 - 하위 창 번호

CHART_WINDOW_HANDLE

차트 창 핸들 (HWND)

int 읽기전용

CHART_WINDOW_YDISTANCE

세로 Y축을 따라 표시기 하위 창의 위쪽 프레임과 기본 차트 창의 위쪽 프레임 사이의 거리(픽셀). 마우스 이벤트의 경우, 커서 좌표는 기본 차트 창의 좌표로 전달되며, 지표 하위 창의 그래픽 객체의 좌표는 하위 창의 왼쪽 상단 모서리를 기준으로 설정됩니다.

이 값은 그래픽 객체에 대한 올바른 작업을 위해 기본 차트의 절대 좌표를 하위 창의 로컬 좌표로 변환하는 데 필요합니다. 그래픽 객체의 좌표는 하위 창 프레임의 왼쪽 상단 모서리에 상대적으로 설정됩니다.

int 읽기전용     한정자 - 하위 창 번호

CHART_FIRST_VISIBLE_BAR

차트에서 첫 번째로 표시되는 막대의 수. 막대의 인덱싱이 시계열의 인덱싱과 동일합니다.

int 읽기전용

CHART_WIDTH_IN_BARS

막대의 차트 너비

int 읽기전용

CHART_WIDTH_IN_PIXELS

차트 너비(픽셀)

int 읽기전용

CHART_HEIGHT_IN_PIXELS

차트 높이(픽셀)

int      한정자 - 하위 창 번호

CHART_COLOR_BACKGROUND

차트 배경색

색상

CHART_COLOR_FOREGROUND

축, 스케일, OHLC 선 색상

색상

CHART_COLOR_GRID

그리드 색상

색상

CHART_COLOR_VOLUME

볼륨 및 포지션 레벨의 색상

색상

CHART_COLOR_CHART_UP

강세 촛대의 위쪽 막대, 그림자 및 차체 테두리에 대한 색상

색상

CHART_COLOR_CHART_DOWN

강세 촛대의 아래쪽 막대, 그림자 및 차체 테두리에 대한 색상

색상

CHART_COLOR_CHART_LINE

도지 일본 캔들스틱의 선 차트 색상 및 색상

색상

CHART_COLOR_CANDLE_BULL

강세 캔들스틱의 본체 색상

색상

CHART_COLOR_CANDLE_BEAR

약세 캔들스틱의 본체 색상

색상

CHART_COLOR_BID

입찰가 수준 색상

색상

CHART_COLOR_ASK

요청가 수준 색상

색상

CHART_COLOR_LAST

마지막으로 실행된 거래 가격(종가)의 라인 색상

색상

CHART_COLOR_STOP_LEVEL

스탑 오더 레벨 색상(스탑 로스 및 이익 실현)

색상

CHART_SHOW_TRADE_LEVELS

차트에 거래 수준 표시(공개 포지션 수준, 스탑 로스, 이익 실현 및 보류 중인 주문)

bool

CHART_DRAG_TRADE_LEVELS

마우스로 차트의 거래 수준을 끌 수 있는 권한입니다. 드래그 모드는 기본적으로 활성화되어 있습니다(참값).

bool

CHART_SHOW_DATE_SCALE

차트에 시간 척도 표시

bool

CHART_SHOW_PRICE_SCALE

차트에 가격 척도 표시

bool

CHART_SHOW_ONE_CLICK

표시: "원클릭 트레이딩"차트의 패널

bool

CHART_IS_MAXIMIZED

차트 창이 최대화됩니다

bool  r/o

CHART_IS_MINIMIZED

차트 창이 최소화됩니다

bool  r/o

CHART_IS_DOCKED

차트 창이 도킹되었습니다. false로 설정하면 차트를 터미널 영역 외부로 끌 수 있습니다

bool

CHART_FLOAT_LEFT

가상 화면을 기준으로 도킹 해제된 차트 창의 왼쪽 좌표

int

CHART_FLOAT_TOP

가상 화면에 상대적인 도킹 해제된 차트 창의 위쪽 좌표

int

CHART_FLOAT_RIGHT

가상 화면에 상대적인 도킹 해제된 차트 창의 오른쪽 좌표

int

CHART_FLOAT_BOTTOM

가상 화면에 상대적인 도킹 해제된 차트 창의 아래쪽 좌표

int

다음 함수의 경우: ChartSetDouble()ChartGetDouble()

ENUM_CHART_PROPERTY_DOUBLE

ID

설명

속성 유형

CHART_SHIFT_SIZE

오른쪽 테두리에서 들여쓰는 0 막대 크기(%)

2배(10 ~ 50%)

CHART_FIXED_POSITION

왼쪽 테두리부터 고정된 위치를 백분율 값으로 차트화합니다. 차트 고정 위치는 수평 시간 축에 작은 회색 삼각형으로 표시됩니다. 들어오는 틱에서 오른쪽으로 스크롤하는 자동 차트가 비활성화된 경우에만 표시됩니다(CHART_AUTOSCROLL 속성 참조). 확대 및 축소할 때 고정 위치의 막대가 동일한 위치에 유지됩니다.

double

CHART_FIXED_MAX

차트 최대화 고정

double

CHART_FIXED_MIN

차트 최소화 고정

double

CHART_POINTS_PER_BAR

막대 당 포인트 척도

double

CHART_PRICE_MIN

차트 최소화

double 읽기전용   한정자 - 하위 창 번호

CHART_PRICE_MAX

차트 최대화

double 읽기전용   한정자 - 하위 창 번호

다음 함수용: ChartSetString()ChartGetString()

ENUM_CHART_PROPERTY_STRING

ID

설명

속성 유형

CHART_COMMENT

차트의 주석 텍스트

string

CHART_EXPERT_NAME

지정된 chart_id로 차트에서 실행 중인 Expert Advisor의 이름

string 읽기전용

CHART_SCRIPT_NAME

차트에서 지정된 chart_id로 실행 중인 스크립트의 이름

string 읽기전용

예제:

   int chartMode=ChartGetInteger(0,CHART_MODE);
   switch(chartMode)
     {
      case(CHART_BARS):    Print("CHART_BARS");   break;
      case(CHART_CANDLES): Print("CHART_CANDLES");break;
      default:Print("CHART_LINE");
    }
   bool shifted=ChartGetInteger(0,CHART_SHIFT);
   if(shifted) Print("CHART_SHIFT = true");
   else Print("CHART_SHIFT = false");
   bool autoscroll=ChartGetInteger(0,CHART_AUTOSCROLL);
   if(autoscroll) Print("CHART_AUTOSCROLL = true");
   else Print("CHART_AUTOSCROLL = false");
   int chartHandle=ChartGetInteger(0,CHART_WINDOW_HANDLE);
   Print("CHART_WINDOW_HANDLE = ",chartHandle);
   int windows=ChartGetInteger(0,CHART_WINDOWS_TOTAL);
   Print("CHART_WINDOWS_TOTAL = ",windows);
   if(windows>1)
     {
      for(int i=0;i<windows;i++)
        {
         int height=ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS,i);
         double priceMin=ChartGetDouble(0,CHART_PRICE_MIN,i);
         double priceMax=ChartGetDouble(0,CHART_PRICE_MAX,i);
         Print(i+": CHART_HEIGHT_IN_PIXELS = ",height," pixels");
         Print(i+": CHART_PRICE_MIN = ",priceMin);
         Print(i+": CHART_PRICE_MAX = ",priceMax);
        }
    }

더 보기

차트 작업 예제