Производится расчет коэффициента корреляции между графиками котировок двух валютных пар (между валютной парой, к чарту которой прикреплен индикатор и парой, указанной в параметрах индикатора).
В окне индикатора отображается:
График коэффициента корреляции (можно отключить отображение, как на приведенных рисунках)
График скользящей средней от кривой коэффициента корреляции (можно отключить отображение)
Среднее значение коэффициента корреляции за указанное число последних баров
Гистограмма по значениям коэффициента корреляции (функция распределения)
Параметры индикатора
Mode = 0, 1, 2... - параметр, определяющий, для какого именно параметра ценового графика вычислять корреляцию (0 - для цены закрытия бара, 1 - для разности между ценой закрытия и ценой открытия, 2 - для отношения цены закрытия к максимальной цене бара,... полностью - см. комментарий в коде индикатора)
Pair = "USDCHF", "EURUSD"... - валютная пара, для которой требуется вычислить коэффицент корреляции
ShowCorrelation = true - если нужно отображать буфер коэффициента корреляции, = false, если не нужно
ShowMA = true - если нужно отображать буфер скользящей средней коэффициента корреляции, = false, если не нужно
CorrelationRadius = 15 - радиус корреляции
MA_Period = 10 - период скользящей средней
ResultingBars = 0 - количество баров, по которым вычисляется итоговое среднее значение коэффициента корреляции (это значение выводится в нижнем левом углу окна). Если ResultingBars = 0, то среднее считается по всем полученным значениям коэффициента корреляции
FontName = "Verdana" - фонт, которым выводится среднее значение коэф. корреляции
FontSize = 10 - размер фонта
FontColor = Black - цвет фонта
Дополнения
Добавлена возможность расчета автокорреляции (управляется параметром AutoCorrelation, параметр AutoCorrelationShift - величина смещения). В этом режиме параметр Pair игнорируется.
Выделяются существенные точки, т.е. экстремумы коэффициента (авто-)корреляции, которые превосходят некоторый заданный уровень (EssentialLevel)
ShowEssentialPoints - Количество существенных точек для отображения. Если =0, то отображаются все точки, если =-1, то не отображаются
В режиме автокорреляции на чарте отображаются области, для которых были получены существенные значения коэффициента
ShowEssentialRanges - Количество границ существенных интервалов (вертикальные линии) для отображения. Если =0, то отображаются границы, если =-1, то не отображаются
ShowEssentialRectangles - Количество существенных областей (прямоугольники на чарте) для отображения. Если =0, то отображаются все области, если =-1, то не отображаются
Добавлена возможность автоматического выбора параметров CorrelationRadius и AutoCorrelationShift в зависимости от тайм-фрейма (для этого нужно установить им нулевые значения)
Добавлены новые варианты базовой функции (т.е. возможные значения параметра Mode). Подробнее см. комментарий к коду индикатора.
В итоговой надписи выводится два вида среднего значения коэф. корреляции: первое число - это максимум гистограммы, а второе - это скользящее среднее с периодом на всю длину истории (или только по последним ResultingBars барам)
Что за гистограмма? можно поподробней, что типа функции распределения?
Да :). Я бы именно так и сказал "что-то типа".
Строится она так: весь интервал от -1 до +1 разбивается 200 участков. Каждому участку соответствует столбик гистограммы. Высота столбика (т.е. длина в данном случае) определяется количеством значений коэффициента корреляции, которые укладываются в участке, соответствующем столбику.
Там, кстати, кажется какой-то глюк со средним значением коэффициента корреляции. Оно, по идее, должно совпадать с максимумом гистограммы, но это далеко не всегда так. Когда разберусь, в чем там дело, обновлю версию.
Это не глюк,и не надо ничего обновлять. В теории вероятностей широко известен факт, что наиболее вероятное значение или, как его еще называют, "мода" (т.е. значение рассматриваемой величины, при котором плотность распределения вероятностей - ну или гистограмма в вашем случае - максимальна) и среднее значение (оно же математическое ожидание, оно же первый момент, оно же интеграл от x*W(x) по dx) той же величины не есть одно и то же. Они совпадают только в некоторых ситуациях, например, при равномерном распределении или гауссовом. Есть и еще одна интересная характеристика ряда - т.н. "медиана", т.е. то значение, которое делит вариационный ряд на две равные части: 50 % ряда имеет
значение признака не больше, чем медиана, а 50 % - не меньше, чем медиана. Какое из "средних" выбирать, зависит от того, какова задача и что именно надо оценить.
P.S. Кстати, несовпадение моды и матожидания - один из распространенных методов проверки распределения ряда на "негауссовость". А вообще, lotos4u, ваше бы рвение да на серьезное дело:)
Я не понял что значит сопоставляемые бары относились к одной дате? Вообще мне показалось что здесь дата не нужна... Типа дыры в графике что ли?
Да, именно дыры в истории. Бывает так, что по одному инструменту есть бар, а по другому инструменту бара с таким временем нет. Если пытаться сопоставить, валюту и, скажем, сою и т.п., то нестыковок может быть очень много.
А, кстати, что за результаты Эксель выдает? Сильные расхождения есть?
И еще, не знаю, как Эксель считает, но я смотрел, чтобы сопоставляемые бары относились к одной дате (времени). Если в Экселе это не учитывать (а там автоматом, кажется, это не учитывается и надо руками чистить данные), то значения, скорее всего, не совпадут.
Я имел ввиду что когда со статистикой вожусь какой-нибудь, то для проверки Exel использую... Индикатор не проверял, времени нет, но понравился...
Я не понял что значит сопоставляемые бары относились к одной дате? Вообще мне показалось что здесь дата не нужна... Типа дыры в графике что ли?
"Строится она так: весь интервал от -1 до +1 разбивается на 200 участков. Каждому участку соответствует столбик гистограммы. Высота столбика (т.е. длина в данном случае) определяется количеством " - это и есть функция распределения(почти ф-я рапр. вероятности). Разве не так?
А на счёт средней здесь на рисунке вроде совпадает, но для проверки я обычно данные выгружаю в EXEL и там вручную проверяю...
Ну, да, она и есть. Просто очень лихо звучит - "функция распределения вероятности значений коэффициента корреляции". Хотя, наверно, так правильнее.
А, кстати, что за результаты Эксель выдает? Сильные расхождения есть?
И еще, не знаю, как Эксель считает, но я смотрел, чтобы сопоставляемые бары относились к одной дате (времени). Если в Экселе это не учитывать (а там автоматом, кажется, это не учитывается и надо руками чистить данные), то значения, скорее всего, не совпадут.
Собственно, необходимость вручную править данные и была одной из причин написания данного индикатора.
"Строится она так: весь интервал от -1 до +1 разбивается на 200 участков. Каждому участку соответствует столбик гистограммы. Высота столбика (т.е. длина в данном случае) определяется количеством " - это и есть функция распределения(почти ф-я рапр. вероятности). Разве не так?
А на счёт средней здесь на рисунке вроде совпадает, но для проверки я обычно данные выгружаю в EXEL и там вручную проверяю...
Что за гистограмма? можно поподробней, что типа функции распределения?
Да :). Я бы именно так и сказал "что-то типа".
Строится она так: весь интервал от -1 до +1 разбивается 200 участков. Каждому участку соответствует столбик гистограммы. Высота столбика (т.е. длина в данном случае) определяется количеством значений коэффициента корреляции, которые укладываются в участке, соответствующем столбику.
Там, кстати, кажется какой-то глюк со средним значением коэффициента корреляции. Оно, по идее, должно совпадать с максимумом гистограммы, но это далеко не всегда так. Когда разберусь, в чем там дело, обновлю версию.