Обсуждение статьи "График PairPlot на основе CGraphic для анализа зависимостей между массивами данных (таймсериями)"

 

Опубликована статья График PairPlot на основе CGraphic для анализа зависимостей между массивами данных (таймсериями):

Часто в процессе технического анализа перед трейдерами ставится задача сравнения нескольких временных рядов. Проведение такого анализа требует соответствующих инструментов. В этой статье я предлагаю построить инструмент для графического анализа и поиска зависимостей между двумя и более временных рядов.

Прежде чем приступить к работе, давайте определимся с нашими целями. Какой инструмент мы хотим получить в итоге? Прежде всего, это должна быть графическая панель, содержащая графики зависимости переданных ей таймсерий. При этом инструмент должен быть достаточно универсальным и способным работать с разным количеством таймсерий.

Для анализа таймсерий на панели мы будем строить гистограмму распределения для каждой таймсерии, а для поиска корреляции будем строить попарно для анализируемых таймсерий графики рассеяния. В качестве визуального ориентира добавим на графики рассеяния трендовые линии.

Расположение графиков в виде перекрестной таблицы улучшит читаемость всего инструмента. Подобный подход позволит унифицировать представление информации и даст достаточную легкость восприятия.

Ниже вы можете видеть, как работает наш индикатор.

Демонстрация работы PairPlot

Автор: Dmitriy Gizlyk

 

Баг. Заменить в файле Histogram.mqh строку:

int width=fmax((e_orientation==HISTOGRAM_HORIZONTAL ? m_width-m_right-m_left : m_height-m_up-m_down)/((int)(i_cells)*(total+1)),1);

на:

int width = fmax((e_orientation == HISTOGRAM_HORIZONTAL ? m_width : m_height) / ((int)(i_cells) * (total + 1)), 1);

Поля m_right, m_left, m_up, m_down указаны здесь неверно и более того содержат в момент выполнения мусор (потому что заполняются позднее), из-за чего гистограмма может не выводиться (если мусор имеет большое положительное значение).