Saya ingin berkongsi dengan anda tentang satu modifikasi menarik bagi indikator Hari dalam Minggu. Kini, setiap hari dalam minggu akan ditandakan dengan warna yang berbeza!



Untuk menggunakan gaya DRAW_COLOR_HISTOGRAM, anda memerlukan dua buffer: satu buffer untuk nilai HistogramBuffer dan satu buffer untuk warna HistogramColors.
//+------------------------------------------------------------------+//| Warna Hari dalam Minggu.mq5 |//| Hak Cipta © 2018, Vladimir Karputov |//| http://wmua.ru/slesar/ |//+------------------------------------------------------------------+#property copyright"Hak Cipta © 2018, Vladimir Karputov"#property link "http://wmua.ru/slesar/"#property version "1.000"#property indicator_separate_window#property description"Hari dalam minggu dalam bentuk histogram warna"#property indicator_separate_window#property indicator_buffers2#property indicator_plots 1//--- plot Histogram #property indicator_label1 "Warna Hari"#property indicator_type1 DRAW_COLOR_HISTOGRAM//--- definisikan 8 warna untuk mewarnakan bahagian#property indicator_color1 clrCyan,clrRed,clrYellowGreen,clrBlue,clrYellow,clrNavy,clrGold,clrMediumSeaGreen#property indicator_style1 STYLE_SOLID#property indicator_width1 2//--- buffer indikator double HistogramBuffer[];double HistogramColors[]; //+------------------------------------------------------------------+//| Fungsi inisialisasi indikator khusus |//+------------------------------------------------------------------+
Warna ditentukan dalam baris berikut:
//--- definisikan 8 warna untuk mewarnakan bahagian#property indicator_color1 clrCyan,clrRed,clrYellowGreen,clrBlue,clrYellow,clrNavy,clrGold,clrMediumSeaGreen
Di sini, warna clrCyan mempunyai indeks "0", clrRed mempunyai indeks "1", dan seterusnya.
Pengurusan warna histogram dilakukan dengan menetapkan indeks warna yang berbeza untuk setiap indeks dalam buffer 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; }

Komen 0