주간 색상 표시기의 개정판이 출시되었습니다. 이제 매일의 색상이 각각 다르게 표시됩니다:



DRAW_COLOR_HISTOGRAM 스타일은 두 개의 버퍼 (값 버퍼 HistogramBuffer와 색상 버퍼 HistogramColors)를 필요로 합니다:
//+------------------------------------------------------------------+ //| 주간 색상.mq5 | //| Copyright © 2018, Vladimir Karputov | //| http://wmua.ru/slesar/ | //+------------------------------------------------------------------+ #property copyright "Copyright © 2018, Vladimir Karputov" #property link "http://wmua.ru/slesar/" #property version "1.000" #property indicator_separate_window #property description "요일을 색상 히스토그램으로 표시" #property indicator_separate_window #property indicator_buffers 2 #property indicator_plots 1 //--- 히스토그램 플롯 #property indicator_label1 "요일 색상" #property indicator_type1 DRAW_COLOR_HISTOGRAM //--- 섹션 색상 정의 #property indicator_color1 clrCyan,clrRed,clrYellowGreen,clrBlue,clrYellow,clrNavy,clrGold,clrMediumSeaGreen #property indicator_style1 STYLE_SOLID #property indicator_width1 2 //--- 지표 버퍼 double HistogramBuffer[]; double HistogramColors[]; //+------------------------------------------------------------------+ //| 사용자 정의 지표 초기화 함수 | //+------------------------------------------------------------------+
색상은 다음 줄에서 설정됩니다:
//--- 섹션 색상 정의 #property indicator_color1 clrCyan,clrRed,clrYellowGreen,clrBlue,clrYellow,clrNavy,clrGold,clrMediumSeaGreen
여기서 색상 clrCyan은 인덱스 "0", clrRed는 인덱스 "1"입니다. 색상 히스토그램의 관리는 각 인덱스에 대해 개별 색상 인덱스를 HistogramColors 버퍼에 할당하여 이루어집니다:
switch(STime.day_of_week) { case 0: HistogramBuffer[i]=0; HistogramColors[i]=0; break; case 1: HistogramBuffer[i]=1; HistogramColors[i]=1; break; case 2: HistogramBuffer[i]=2; HistogramColors[i]=2; break; case 3: HistogramBuffer[i]=3; HistogramColors[i]=3; break; case 4: HistogramBuffer[i]=4; HistogramColors[i]=4; break; case 5: HistogramBuffer[i]=5; HistogramColors[i]=5; break; case 6: HistogramBuffer[i]=6; HistogramColors[i]=6; break; }