Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
CurrencyIndexC - индикатор для MetaTrader 4
- Просмотров:
- 6733
- Рейтинг:
- Опубликован:
- 2010.07.14 06:54
- Обновлен:
- 2014.10.01 09:42
- Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Индикатор изменения индексов валют
Без деталей, кратко набросаю основные идеи, лежащие в построении индексов.
Индикатор основан на вычислении синтетических индексов V [i] [j],
где i – порядковый номер валюты, j – номер бара.
Синтетические индексы позволяют вычислить кросс любой валютной пары, как частного от деления индексов валют, т.е.,
C [i, k] [j] = V [i] [j] / V [k] [j],
где C [i, k] [j] кросс-курс валют с номерами i и k на баре j.
Для вычисления индексов используются доступные кросс-курсы валют. Сами по себе синтетические индексы, изображенные на графике, не будут иметь никакой практической ценности, так как их изменения визуально незаметны.
Но, для чего мы вычисляли индексы? Чтобы с их помощью наблюдать за кроссами.
Сделаем следующий шаг: будем наблюдать не индексы, а их логарифм.
Используется простая математика:
Ln(V [i] [j] / V [k] [j]) = Ln(V [i] [j]) – Ln(V [k] [j])
Более того, возьмем какую-нибудь точку истории в качестве исходного нулевого рубежа. Например, три дня назад, неделя, или месяц и т.п. Все отсчеты будем вести относительно этой точки истории. Индикатор будет выводить разность логарифмов синтетических индексов текущей и «исходной» точки. Тогда, разность, построенных таким образом, двух индексов валют, даст изменение кросса этой валютной пары за выбранный период истории. Поэтому, у индикатора всего один параметр – размер окна истории в барах.
Индикатор масштабирован так, что разность значений индексов для пары валют в окне индикатора примерно соответствует процентному изменению кросс-курса по отношению к исходному рубежу.
В данном варианте индикатор вычисляется для списка из 8 валют:
USD EUR GBP JPY AUD CHF CAD NZD
на основе доступных кроссов валют (отображаемых в обзоре рынка !!!).
Синтетические курсы валют не могут быть однозначно вычислены. Т.е., если V [i] [j] – матрица синтетических курсов, то для любого массива R[j], содержащего только ненулевые значения, матрица V*[i] [j] = V [i] [j] x R[j] тоже будет матрицей синтетических курсов. Поэтому, как вариант, можно задать синтетический индекс одной из валют, например, Индекс_доллара . Это реализовано в данном индикаторе. Для его вычисления нужно иметь в обзоре рынка USDSEC
При первоначальной загрузке индикатора существуют проблемы, связанные с подгрузкой истории для кроссов. Здесь придется набраться терпения. Индикатор приходится перезапускать (правая кнопка мыши на графике индикатора -> свойства CurrencyIndexC -> ОК, в крайних случаях удалять с графика и запустить заново), пока показания не стабилизируются. Часто, из-за отсутствия истории, происходит деление на ноль и индикатор не рисуется. Со временем это проходит.Также нужно смотреть ошибки на закладке «эксперты». Если программа выдает сообщение
…. Добавьте символ XXXYYY в обзор рынка
…. ошибка 4106 - неизвестный символ XXXYYY
То, если есть возможность (такой символ котируется), тогда добавить нужно. Ну, а нет, так нет.
Советник использует индикатор OsMA.
Линии Фибоначчи для измеренийСкрипт устанавливает на текущий график инструмент "линии Фибоначчи" с практически всеми значимыми уровнями.