что оценивает гистограмма распределения

Гистограмма распределения в EXCEL

history 15 ноября 2016 г.

Гистограмма поможет визуально оценить распределение набора данных, если:

Примечание : Для удобства написания формул для диапазона А8:А57 создан Именованный диапазон Исходные_данные.

Построение гистограммы с помощью надстройки Пакет анализа

Как видно из рисунка, первый интервал включает только одно минимальное значение 113 (точнее, включены все значения меньшие или равные минимальному). Если бы в массиве было 2 или более значения 113, то в первый интервал попало бы соответствующее количество чисел (2 или более).

Почему 7? Дело в том, что количество интервалов гистограммы (карманов) зависит от количества данных и для его определения часто используется формула √n, где n – это количество данных в выборке. В нашем случае √n=√50=7,07 (всего 7 полноценных карманов, т.к. первый карман включает только значения равные минимальному).

Примечание : Похоже, что инструмент Гистограмма для подсчета общего количества интервалов (с учетом первого) использует формулу =ЦЕЛОЕ(КОРЕНЬ(СЧЕТ( Исходные_данные )))+1

Если выбор количества интервалов или их диапазонов не устраивает, то можно в диалоговом окне указать нужный массив интервалов (если интервал карманов включает текстовый заголовок, то нужно установить галочку напротив поля Метка ). что оценивает гистограмма распределения

Для нашего набора данных установим размер кармана равным 100 и первый карман возьмем равным 150. что оценивает гистограмма распределения

Построение гистограммы распределения без использования надстройки Пакет анализа

Порядок действий при построении гистограммы в этом случае следующий:

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

Одной из разновидностей гистограмм является график накопленной частоты (cumulative frequency plot). что оценивает гистограмма распределения

На этом графике каждый столбец представляет собой число значений исходного массива, меньших или равных правой границе соответствующего интервала. Это очень удобно, т.к., например, из графика сразу видно, что 90% значений (45 из 50) меньше чем 495.

Примечание : Когда количество значений в выборке недостаточно для построения полноценной гистограммы может быть полезна Блочная диаграмма (иногда она называется Диаграмма размаха или Ящик с усами ).

Источник

Нормальное распределение: понимание гистограмм и вероятностей

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

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

В прошлой статье мы представили нормальное распределение в электротехнике, заложив основу для нашего текущего обсуждения: понимание вероятностей в измеренных данных.

Понимание гистограмм

В предыдущей статье мы начали обсуждение нормального распределения, обратившись к форме этой гистограммы:

что оценивает гистограмма распределения Рисунок 1 – Гистограмма, иллюстрирующая нормальное или гауссово распределение

Я думаю, что большинство людей, работающих в области науки или техники, хотя бы смутно знакомы с гистограммами, но давайте сделаем шаг назад.

Что такое гистограмма?

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

Представим, что она представляет собой распределение значений, полученных нами при измерении разницы, округленной до ближайшего милливольта, между номинальным и фактическим выходным напряжением линейного стабилизатора, который подвергался различным температурам и условиям эксплуатации. Так, например, примерно 8000 измерений показали разницу в 0 мВ между номинальным и фактическим выходными напряжениями, а примерно 1000 измерений показали разницу в 10 мВ.

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

Гистограммы с интервалами

Когда набор данных содержит так много разных значений, что мы не можем удобно связать их с отдельными столбцами гистограммы, мы используем объединение в интервалы (биннинг). То есть мы определяем диапазон значений как интервал, группируем результаты измерений в эти интервалы и создаем по одному столбцу для каждого интервала.

Следующая гистограмма, которая была сгенерирована из нормально распределенных данных со средним значением 0 и стандартным отклонением 0,6, использует интервалы вместо отдельных значений:

что оценивает гистограмма распределения Рисунок 2 – Гистограмма с использованием интервалов вместо отдельных значений

Горизонтальная ось разделена на десять интервалов одинаковой ширины, и каждому интервалу назначен один столбец. Все результаты измерений, попадающие в числовой интервал, влияют на высоту соответствующего столбца (метки на горизонтальной оси показывают, что интервалы не одинаковой ширины, но это просто потому, что значения меток округлены).

Гистограммы и вероятность

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

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

Это серьезное ограничение, потому что вероятность отвечает на чрезвычайно распространенный вопрос: каковы шансы, что…?

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

Если мы знаем размер выборки, мы можем разделить количество появлений на размер выборки и таким образом определить вероятность. Давайте рассмотрим пример.

что оценивает гистограмма распределения Рисунок 3 – Пример того, как гистограмма может помочь нам определить вероятность путем деления количества появлений на размер выборки

Красные пунктирные линии заключают в себя столбцы, которые указывают на погрешности напряжения менее 2 мВ, а числа, написанные внутри столбцов, указывают точное количество появлений этих трех значений погрешности напряжения. Сумма этих трех чисел составляет 23 548. Таким образом, на основе этого примера по сбору данных вероятность получения погрешности менее 2 мВ составляет 23 548/100 000 ≈ 23,5%.

Функция массы вероятности

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

Полученный график является аппроксимацией функции массы вероятности. Например:

что оценивает гистограмма распределения Рисунок 4 – Гистограмма, изображающая приблизительную функцию массы вероятности, полученную путем деления количества всех вхождений на размер выборки

Всё, что мы на самом деле выполнили, это изменили числа на вертикальной оси. Тем не менее, теперь мы можем посмотреть на отдельное значение или на группу значений и легко определить вероятность появления.

Хочу прояснить следующую деталь: я сказал, что мы аппроксимируем функцию массы вероятности, когда берем гистограмму и делим значения на размер выборки. Истинная функция массы вероятности представляет собой идеализированное распределение вероятностей, что означает, что для этого потребуется бесконечное количество измерений.

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

Масса вероятности против плотности вероятности

Стоит подчеркнуть, что функция массы вероятности является дискретным эквивалентом функции плотности вероятности (о которой мы говорили в предыдущей статье).

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

Эти две функции передают одну и ту же общую статистическую информацию о переменной или о сигнале, но делают это по-разному.

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

Заключение

Мы рассмотрели функции массы и плотности вероятности, и теперь мы готовы изучить кумулятивную функцию распределения и исследовать вероятности нормального распределения с точки зрения стандартного отклонения. Об этом мы поговорим в следующей статье.

Источник

Графическое представление статистического распределения. Гистограмма

что оценивает гистограмма распределения

Графическое представление статистического распределения. Гистограмма.

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

Наиболее часто встречающиеся виды распределений:

2) показательное (экспоненциальное);

что оценивает гистограмма распределения

Рис. 1. Плотность нормального распределения

По нормальному закону распределены рост, масса человека, систолическое давления, содержание холестерина в крови пациента и д. р.

что оценивает гистограмма распределения

Рис. 2. Плотность показательного распределения.

По показательному закону распределён интервал между однотипными случайными событиями: вызовами медсестры пациентами, число заказов лекарственных средств аптеками, страховые случаи.

что оценивает гистограмма распределения

Рис. 3. Плотность равномерного распределения

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

что оценивает гистограмма распределения

Рис. 4. Плотность Рэлеевского распределения

Плотность Рэлеевского распределения отлична от нуля только для неотрицательных значений x. Это распределение однопараметрическое: оно зависит от одного параметра σ. По Рэлеевскому закону распределено расстояние от точки попадания в мишень до её центра.

Таким образом, необходимо внимательно посмотреть на построенную гистограмму и выбрать подходящее распределение значений случайной величины.

2. Предыстория и суть метода. Гистогра́мма (от др.-греч. ἱστός — столб + γράμμα — черта, буква, написание) — способ графического представления табличных данных. Следовательно, термин следует интерпретировать, как некую форму записи, состоящую из ‘столбиков’, т. е. продолговатых, вертикально расположенных фигур. Термин ‘гистограмма’ был введен знаменитым статистиком Карлом Пирсоном (Karl Pearson) для обозначения «общей формы графического представления».

что оценивает гистограмма распределения

Пирсон (Pearson) Карл (27.3.1857, Лондон,— 27.4.1936, там же), английский математик, биолог, философ-позитивист. Профессор прикладной математики и механики (с 1884), а затем евгеники (с 1911) Лондонского университета.

3. План построения гистограммы:

3) Все данные распределить по интервалам в порядке возрастания: левая граница первого интервала должна быть меньше наименьшего из имеющихся значений. Данные обработки результатов представить в виде таблицы (таблица1).

4) Подсчитать частоту mi значений параметра, попавших в каждый из интервалов.

5) Вычислить плотность частот mi / Δx попадания данных в каждый из интервалов.

Плотности частот, mi / Δx

Плотности относительных частот,

Гистограмма частот (нормальное распределение)

что оценивает гистограмма распределения

Гистограмма плотности относительных частот (нормальное распределение)

что оценивает гистограмма распределения

8). Проанализировать гистограмму:

a) определить тип распределения данных (нормальное и т. д.);

b) нарисовать линию по верхушкам полосок гистограммы и получить сглаживающую кривую, наилучшим образом представляющую данное статистическое распределение;

d) Ответить на вопрос: «Почему распределение именно такое, и о чем это говорит?»

Примеры анализа гистограмм:

что оценивает гистограмма распределения

что оценивает гистограмма распределения

что оценивает гистограмма распределения

что оценивает гистограмма распределения

    Симметричная (пример А). Большинство значений находятся по обе стороны от центра распределения (центральной тенденции) с отклонением, сбалансированным по обе стороны от центра. С наклоном (пример Б). Большинство значений находятся слева от центральной тенденции. Такой тип распределения данных может произойти, если есть естественное препятствие в случаях сортировки данных (результаты, которые не соответствуют определенному стандарту, удаляются из набора данных). Асимметричная (пример В). На таком графике имеется длинный «хвост» по одну сторону от центральной тенденции. По одну сторону имеется больше отклонений, чем по другую, указывая на то, что в течение процесса произошел сдвиг некоторых переменных значений. Двухмодальная (пример Г). В двух модальном типе имеется две вершины. Это обычно происходит, когда смешиваются две различные группы данных (категория невысоких людей смешивается с категорией очень высоких людей). В действительности, мы имеем две гистограммы, объединенные вместе.

· Наглядность, простота освоения и применения.

· Анализ на основании фактов, а не мнений.

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

Интерпретация гистограммы, построенная по малым выборкам, не позволяет сделать правильные выводы.

Применение метода гистограмм в информатике:

что оценивает гистограмма распределения

Цветовая глубина определяет, как много цветов может быть представлено пикселом (какова палитра цветов). Например, если цветовая глубина равна 1 бит, то пиксел может представлять только один из двух возможных цветов, например, белый или черный. Если цветовая глубина равна 8 бит, то количество возможных цветов равно 28 = 256. При глубине цвета 24 бит на кодирование каждого цвета выделяется по 8 бит, а полное количество цветов количество цветов превышает 16 млн. Связь между битовой глубиной цвета и количеством цветов проста:

Количество цветов = 2 битовая глубина цвета

что оценивает гистограмма распределения

Глубина цвета и количество цветов в палитре

Источник

Гистограмма

Гистограмма, это способ представления статистических данных в графическом виде – в виде столбчатой диаграммы. Она отображает распределение отдельных измерений параметров изделия или процесса. Иногда ее называют частотным распределением, так как гистограмма показывает частоту появления измеренных значений параметров объекта.

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

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

Порядок построения гистограммы следующий:

1. Собираются статистические данные – результаты измерений параметра объекта. Для того, чтобы гистограмма позволяла оценить вид распределения случайной величины предпочтительно иметь не менее тридцати результатов измерений.

2. Выявляется наибольшее и наименьшее значение показателя среди полученных результатов измерений.

3. Определяется ширина диапазона значений показателя – из наибольшего значения показателя вычитается наименьшее значение.

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

5. Устанавливаются границы интервалов. Границы интервалов необходимо установить так, чтобы значения данных не попадали ни на одну из границ интервала. Например, если были выбраны интервалы с границами от 0,5 до 5,5 от 5,5 до 10,5 и т.д. то значение данных 5,5 будет попадать как в первый, так и во второй интервал. Чтобы избежать этой проблемы можно изменить интервалы от 0,51 до 5,50 от 5,51 до 10,50 и так далее, таким образом ни одно значение данных не попадет на границу интервала.

6. Подсчитывается число попаданий значений результатов измерений в каждый из интервалов.

7. Строится гистограмма – на оси абсцисс (горизонтальной оси) отмечаются интервалы, а на оси ординат (вертикальной оси) отмечается частота попаданий результатов измерений в каждый интервал. Интервалы можно устанавливать в натуральных единицах (если позволяет масштаб), т.е. в тех единицах, в которых проводились измерения, либо каждому интервалу можно присвоить порядковый номер и отмечать на оси абсцисс номера интервалов. В результате получается столбчатая диаграмма, представленная на рисунке ниже.

что оценивает гистограмма распределения

Если на контролируемый параметр существует поле допуска, то гистограмма может содержать верхнюю и нижнюю границы поля допуска. Это позволяет увидеть в какую сторону и как смещается значение контролируемого показателя относительно поля допуска. Границы наносятся по оси абсцисс.

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

Некоторые, часто встречающие отклонения и их причины представлены ниже.

что оценивает гистограмма распределения

Гистограмма смещена влево (асимметрия влево):

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

что оценивает гистограмма распределения

Гистограмма смещена вправо (асимметрия вправо):

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

что оценивает гистограмма распределения

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

что оценивает гистограмма распределения

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

что оценивает гистограмма распределения

Гистограмма не имеет центра:

Центр распределения был отсортирован из набора данных результатов измерений. Такая ситуация может возникнуть из-за недостаточных требований в инженерной спецификации.

что оценивает гистограмма распределения

Гистограмма содержит выступы на границах:

Часть измерений на удаленных от центра сторонах распределения была изменена, чтобы привести характеристики процесса в соответствие с установленным полем допуска или измерения, выходящие за пределы поля допуска были записаны как входящие в поле допуска.

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

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

Инструмент «гистограмма» входит в состав сборника «Семь инструментов качества». Сборник можно приобрести в интернет-магазине «Менеджмент качества».

что оценивает гистограмма распределения

Семь инструментов качества

Семь инструментов качества

Брошюра «Семь инструментов качества» содержит справочную информацию об основных инструментах менеджмента качества. В брошюре представлено описание и даны примеры применения следующих инструментов менеджмента качества:

Источник

Статистические распределения в виде гистограмм без индикаторных буферов и массивов

что оценивает гистограмма распределения

что оценивает гистограмма распределения

Введение

Гистограмма — инструмент, позволяющий зрительно оценить распределение статистических данных, сгруппированных по частоте их попадания в определённый (заранее заданный) интервал.

Построение гистограмм и использование их в анализе статистических данных — достаточно изученная тема, которой посвящено множество статей [1, 2, 3, 4, 5, 6, 7] и по которой создано изрядное количество примеров в CodeBase [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]. Однако используемые алгоритмы базируются на применении индикаторных буферов или массивов. В данной статье рассмотрена возможность построения статистических распределений различных характеристик рынка без сложных расчётов, сортировок, выборок и т.п. Для этого воспользуемся «графической» памятью — тем разделом, где хранятся свойства графических объектов. Дело в том, что при построении пользовательских гистограмм так или иначе используются графические объекты, так почему бы не задействовать их «скрытые» возможности на полную мощь и не воспользоваться имеющимся богатым функционалом?

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

Принцип построения гистограмм

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

В данной статье остановимся на вертикальных гистограммах вариационных рядов: ценовые значения исследуемых характеристик будут находиться на вертикальной оси в порядке возрастания, а частоты — на горизонтальной (Рис. 1). Поступающие в терминал ценовые данные распределяются и группируются на текущем баре и могут быть отображены относительно его оси слева, справа или одновременно с обеих сторон.

что оценивает гистограмма распределения

Рис. 1. Вертикальная гистограмма распределения цен Bid и Ask.

Рассмотрим конкретную задачу:

Теперь усложним условие: нельзя использовать индикаторные буферы, массивы или структуры.

Как решить эту проблему?

Во-первых, нужно придумать, где сохранять накопленные частоты для каждого столбца гистограммы. Даже на рис. 1. видно, что таких столбцов может быть сколько угодно, и первое что приходит в голову — это использовать массив. Причём динамический, т.к. заранее неизвестен возможный диапазон цен (количество столбцов) на выбранном временном участке ценового графика. Но по условию задачи это запрещено.

Во-вторых, нужно решить задачу поиска и сортировки: где и как искать данные для пересчёта и перерисовки гистограммы.

Оказывается, что разработчиками языка MQL5 уже давно создан необходимый для решения поставленной задачи функционал, причём достаточно мощный. Да, уважаемый читатель, предлагается использовать «скрытые» (неочевидные) возможности группы функций графических объектов. У каждого объекта есть свойства — это такие переменные, которые создаются вместе с объектом и служат для хранения множества различных параметров. Некоторые свойства можно использовать не совсем по назначению, и при этом функциональность не будет потеряна. Назовём такие свойства «графической» памятью. Другими словами, если нам нужно сохранить какую-то переменную и при необходимости получить её значение, то создаём графический объект и присваиваем определённому свойству значение переменной.

Свойства графических объектов — это своего рода аналог глобальных переменных терминала, только лучше. Глобальные переменные существуют в клиентском терминале 4 недели от времени последнего обращения к ним, а потом автоматически уничтожаются. Графическая память существует до тех пор, пока графический объект не будет удалён. Представляете, какие возможности нам это открывает?

Какие свойства графических объектов можно задействовать в графической памяти

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

Функция состоит из двух аналогичных блоков: отдельно для Bid и Ask. Поэтому комментарии есть только в первом блоке.

У внимательного читателя наверняка возник резонный вопрос: а зачем дублировать цену в имени объекта, если она и так доступна в свойстве OBJPROP_PRICE? В чём смысл этой работы?

На этом моменте остановимся поподробнее. При поступлении новой цены необходимо определить, в какой столбец она попадёт, и там, соответственно, увеличить значение частоты. Если бы использовалась координата цены непосредственно из своего свойства, то пришлось бы перебрать все графические объекты, запросить значение этого свойства, сравнить с поступившей ценой и только после этого записать новое значение частоты в нужный столбец. А сравнивать действительные числа типа double — это та ещё «засада». В общем, очень неэффективный алгоритм. Другое дело, когда при поступлении нового значения цены мы сразу записываем изменившуюся частоту туда, куда надо. Каким образом? Дело в том, что при создании нового графического объекта с таким же именем, с которым уже есть существующий, новый объект не создаётся и поля свойств не обнуляются. Другими словами, мы создаём объекты, не задумываясь о том, что они будут дублироваться. Не нужно делать дополнительных проверок, потому что копии и клоны создаваться не будут. Об этом позаботится функционал терминала и графических объектов. Остаётся только лишь определить, впервые эта цена попала в выборку или нет. Для этого в рассматриваемой функции DrawHistogram() используется префикс «звёздочка» (*) в свойстве объекта OBJPROP_TEXT. Если «звёздочки» нет, то такая цена поступила впервые. Действительно, когда мы создаем объект впустую, это поле пусто. При последующих обращениях там будет храниться значение частоты с заданным префиксом.

Следующим шагом мы делаем смещение гистограмм вправо. При появлении нового бара график сдвигается влево, а надо, чтобы гистограмма всегда отображалась на текущем баре, т.е. сдвигалась в противоположную сторону. Рассмотрим, как это сделать:

Вот, собственно, и всё. Гистограмма цен Bid и Ask строится на графике, и программа не использует ни одного массива или индикаторного буфера. Полностью код этого решения находится в приложении к статье.

На видео показано готовое решение аналогичной задачи с использованием графической памяти. Сам код можно найти в CodeBase: индикатор «Histogram bid and ask prices».

Примеры построения гистограмм в главном окне

Технология программирования функционала с использованием графической памяти рассмотрена, теперь давайте построим несколько гистограмм для стандартных индикаторов. Принцип построения аналогичен рассмотренному, только вместо цен Bid и Ask будем использовать значения индикаторов на текущем баре.

1. Индикатор iMA. Возьмём два индикатора с разными периодами усреднения и построим гистограммы. Вот как выглядит код:

что оценивает гистограмма распределения

Рис. 2. Гистограмма 2-х индикаторов iMA.

2. Индикатор iBands. Для этого индикатора построим гистограммы для верхней (UPPER_BAND) и нижней (LOWER_BAND) границ. Сокращённый код показан ниже.

что оценивает гистограмма распределения

Рис. 3. Гистограмма полос Боллинджера индикатора iBands.

что оценивает гистограмма распределения

Рис. 4. Гистограмма полос Боллинджера на 3 индикаторных буферах.

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

До сих пор были рассмотрены примеры вариационных рядов, в которых интервал значений исследуемой величины (варианты) равнялся размеру пункта текущего инструмента _Point. Иначе говоря, все значения цены рисовались отдельным столбиком гистограммы.

Следует подчеркнуть, как изящно и незаметно для читателя вариационные ряды были отсортированы (ранжированы) встроенным функционалом терминала. Для этого не пришлось написать ни одной строчки кода.

А теперь посмотрим, как изменить интервал распределения, в котором будет несколько значений варианты, используя всего одну переменную и мощь функционала графических объектов. В рассмотренной выше функции DrawHistogram() есть входной параметр span — разрядность исследуемого параметра. Так вот, варьируя разрядность, мы можем изменять интервал для расчёта частот гистограммы. Поскольку в имя графического объкта влючена цена, то отбор происходит автоматически на этапе создания и корректировки свойств объектов. Посмотрите, как легко решаются задачи сортировки и группировки с использованием графической памяти без программирования.

что оценивает гистограмма распределения

Рис. 5. Гистограмма цен Bid и Ask с увеличенным интервалом столбиков.

Итак, построить гистограммы в главном окне графика оказалось очень просто. Теперь разберёмся с тем, как сделать подобные диаграммы в дополнительных окнах графика.

Гистограммы в дополнительных окнах

Принцип создания статистических распределений в дополнительных окнах такой же, как и в главном. Разница в том, что значения исследуемых величин могут иметь отрицательные величины и произвольную разрядность. Так, в главном окне ценовая шкала имеет заранее известную разрядность, которую можно получить с помощью переменной _Digits. В дополнительных окнах переменные могут принимать как положительные, так и отрицательные значения. Кроме того, количество значащих цифр после запятой может быть каким угодно. Поэтому эту особенность нужно учесть при задании входных параметров функции DrawHistogram() для построения гистограмм, а также указать номер дополнительного окна. По умолчанию, в функции используется главное окно, которое равно нулю.

Примеры построения гистограмм в дополнительных окнах

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

что оценивает гистограмма распределения

Рис. 6. Гистограмма индикатора Chaikin Oscillator.

Сокращённый код для этого индикатора:

что оценивает гистограмма распределения

Рис. 7. Гистограмма индикатора Commodity Channel Index.

3. Индикаторы: iEnvelopes, iATR, iMACD. Комбинация гистограмм для трёх индикаторов, каждый из которых будет отображаться в своём окне.

что оценивает гистограмма распределения

Рис. 8. Гистограммы 3-х индикаторов: iEnvelopes, iATR and iMACD.

Сокращённый код, реализующий набор гистограмм, изображенный на рис. 8.

Итак, рассмотрев технологию построения различных гистограмм статистических распределений характеристик рынка, можно утверждать, что:

позволяют рассчитать и визуализировать накопительные гистограммы множества индикаторов — от стандартных до пользовательских. Впрочем, для более детального анализа рыночных характеристик этого недостаточно.

Численные характеристики статистических распределений

В первой части статьи был показан способ построения гистограмм для начинающих программистов. Приведённые примеры легко проецируются на большой класс задач, связанных с исследованием статистических распределений и их визуализацией. Но для более глубокого анализа гистограмм необходимы наиболее универсальные и прогрессивные методы программирования, а именно — ООП. Итак, рассмотримкакие параметры статистических распределений будут небезынтересны читателям.

В первую очередь, нас интересуют численные характеристики вариационных рядов:

Во вторую очередь, необходима визуализация указанных характеристик. Конечно, всё это можно реализовать и в процедурном стиле, но в данной статье решим поставленные задачи с применением объектно-ориентированного программирования.

Класс CHistogram

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

Метод: конструктор класса CHistogram.

Инициализирует экземпляр класса.

[in] Уникальный префикс имени для всех столбцов гистограммы.

[in] Масштаб отображения гистограммы.

[in] Толщина линий столбцов гистограммы.

[in] Цвет столбцов гистограммы, обновлённых на текущем баре.

[in] Цвет столбцов гистограммы, которые на текущем баре не обновлялись.

[in] Направление отображения гистограммы. false — гистограмма расположена слева от текущего бара, true — справа.

[in] Метод учёта значений частот. false — абсолютные значения частот, true — относительные значения частот.

[in] Индекс окна для построения гистограммы. 0 — главное окно графика.

Нет возвращаемого значения. В случае успеха создаётся экземпляр класса с заданными параметрами.

Метод: отображения гистограммы DrawHistogram.

Отображает столбцы гистограммы: создаёт новые, редактирует имеющиеся, сохраняет значения частот в графической памяти. отображает гистограмму на текущем баре.

[in] Значение варианты исследуемой характеристики рынка.

[in] Время текущего бара. На этом баре будет ось гистограммы.

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

Метод: расчёт характеристик гистограммы HistogramCharacteristics.

Возвращает рассчитанные характеристики вариационного ряда в переменной типа sVseries.

Нет входных параметров.

В случае успеха возвращает значение переменной типа sVseries.

Структура для получения текущих значений характеристик гистограммы (sVseries).

Структура для хранения последних значений характеристик статистического распределения. Предназначена для получения наиболее востребованной информации о вариационном ряде.

Переменная типа sVseries позволяет за один вызов функции HistogramCharacteristics() получить значения всех основных характеристик вариационного ряда, отображённого в виде гистограммы.

Метод: визуализация значения средней DrawMean.

Отображает значение взвешенной средней арифметической вариационного ряда на графике.

[in] Значение взвешенной средней арифметической.

[in] Время текущего бара. На этом баре будет фиксироваться значение взвешенной средней арифметической.

[in] Отображать маркер на графике или нет. false — маркер не отображается, true — маркер отображается на графике.

[in] Сохранять значение взвешенной средней арифметической в истории. false — не отображать, true — отображать значение на графике.

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

Метод: визуализация среднеквадратического отклонения DrawSD.

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

[in] Значение переменной типа sVseries.

[in] Время текущего бара.

[in] Коэффициент, на который будет увеличено значение среднеквадратического отклонения.

[in] Цвет прямоугольника визуализирующего среднеквадратического отклонения.

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

Пример построения гистограмм с использованием класса CHistogram

В качестве примера построим гистограммы статистических распределений цен Bid и Ask, а также двух индикаторов ATR и MACD (рис. 9). В отличие от предыдущих примеров, с помощью рассмотренного класса можно создавать относительные диаграммы. Для цен, кроме самой гистограммы, создадим графическое отображение взвешенной средней арифметической и среднеквадратического отклонения. При этом среднюю будем сохранять с помощью индикаторных буферов. На рисунке среднеквадратические отклонения изображены в виде прямоугольников, ширина которых соответствует средней частоте, а высота равна двум отклонениям, увеличенным для наглядности в несколько раз.

что оценивает гистограмма распределения

Рис. 9. Гистограммы 2-х индикаторов: iATR, iMACD и цен Bid и Ask.

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *