ChartBuilder MT5
60 USD
Demo indirildi:
170
Yayınlandı:
1 Ekim 2014
Mevcut sürüm:
2.64
Uygun bir robot bulamadınız mı?
Freelance üzerinden kendi
robotunuzu sipariş edin
Freelance'e git
Freelance üzerinden kendi
robotunuzu sipariş edin
Bir alım-satım robotu veya gösterge nasıl satın alınır?
Uzman Danışmanınızı
sanal sunucuda çalıştırın
sanal sunucuda çalıştırın
Satın almadan önce göstergeyi/alım-satım robotunu test edin
Mağazada kazanç sağlamak ister misiniz?
Satış için bir ürün nasıl sunulur?
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun

Индикатор предназначен для лёгкого построения синтетических графиков с участим различных финансовых инструментов. Каждый график задаётся в виде обычной математической формулы.
Например, если нужно построить график спрэда (разности) между EURUSD и GBPUSD с коэффициентами 4 и 3 соответственно, то задаём такую формулу:
EURUSD * 4 - GBPUSD * 3
И получаем график:
Это один из простейших примеров. Индикатор позволяет строить гораздо более сложные вещи, используя в том числе разнообразные функции.
Для построения доступно до 8 графиков в одном окне. Каждому из них в настройках индикатора задаётся своя формула.
Для написания формул используются стандартные математические операторы:
+ - * / ^ > < = ( ) (знак ^ означает возведение в степень)
Операции сравнения выдают соответственно 1 или 0 (истина/ложь)
Приоритет операций также стандартный: 1. ( ) 2. ^ 3. * / 4. + - 5. <=>
Если в формуле участвует название торгового инструмента (как в приведённом выше случае), то по умолчанию для него берутся цены закрытия свечи текущего таймфрейма. Более расширенные возможности предоставляются с помощью функций, которые также можно неограниченно использовать в формулах:
- ценовые функции
- индикаторные функции МТ4 (полный набор)
- математические функции
- функции получения информации о символе, и прочие функции
- а также возможность создавать свои собственные функции
Подробное описание всех функций приведено в конце.
Большинство функций поддерживают вложенные параметры, т.е. аргумент может быть задан в виде сложного выражения, в том числе с использование других функций.
В качестве примера приведу такую формулу:
Correl( Close(EURUSD,M1)-Close(EURUSD,M1,1), Close(1/USDCHF,M1)-Close(1/USDCHF,M1,1), M1, 100 )
Получаем график корреляции приращений цен закрытия EURUSD и 1/USDCHF за 100 минутных баров:
Хотя данный пример можно было бы написать и гораздо проще (например пользуясь специальной функцией CorrelD).
В формулах можно ссылаться на другие формулы, указывая это в виде F1, F2 и т.д. Например:
Formula1: EURUSD
Formula2: F1 ^ 2 (что эквивалентно EURUSD^2)
При этом можно передавать им некоторые параметры (аргументы), тем самым создавая свою функцию-шаблон. Для этого в исходной формуле должны быть заданы шаблонные аргументы в виде значка #
Formula1: # / # * #
Formula2: F1(EURUSD, GBPUSD, AUDUSD) (что эквивалентно EURUSD/GBPUSD*AUDUSD)
Для уточнения порядка аргументов, можно их указывать в виде #1, #2 и т.д.
Formula1: #1 / #3 * #2
Formula2: F1(EURUSD, AUDUSD, GBPUSD) (что эквивалентно EURUSD/GBPUSD*AUDUSD)
Также имеется возможность привязаться к определённому бару, выбранному пользователем на графике. Для этого предназначены функции LineOpen, LineClose, LineHigh и LineLow, LineVolume. При их использовании появляется вертикальная красная линия на графике, задающая положение бара. Её можно свободно двигать, выбирая нужный бар. Для выбранного момента времени функция получает соответствующую цену (Open, Close, High или Low) по символу, заданному в функции.
Например, с помощью такой линии можно связать несколько графиков в одной точке:
Formula1: #-LineClose(#)
Formula2: F1(EURUSD)
Formula3: F1(GBPUSD)
Formula4: F1(1/USDCHF)
Можно использовать и несколько линий. Для этого к названию функции добавляем индекс: LineClose1, LineClose2 и т.д. Получаем разные линии, работающие независимо друг от друга.
Все имена функций и торговых символов можно писать в любом регистре.
Пробелы между операторами/символами/функциями ставить необязательно.
Если в имени торгового символа присутствуют знаки, совпадающие с математическими, например символ GAZR-9.14, то его следует заключить в квадратные скобки:
([GAZR-9.14] + [GAZR-12.14] + [GAZR-3.15]) /3
При отсутствии требуемого символа в "Обзоре рынка" (и отсутствии истории по нему), производится попытка подгрузить историю для этого символа из соответствующего файла .hst в папке истории. Благодая этому можно использовать "чужую" историю для построения графиков.
Если какой-то график нужно скрыть (не рисовать на экране), то его формулу можно "закомментировать" с помощью значка ' перед началом формулы:
Formula1: 'GBPUSD/EURUSD
Чтобы узнать точную формулу, по которой строится той или иной график, нужно навести мышкой на его формулу в углу окна, и во всплывающей подсказке будет указана полная формула расчёта.
Все графики синхронизируются по времени. Используемые ценовые данные тоже. При расчёте графика в каждой точке используются только прошлые или текущие цены для данной точки, т.е. индикатор не может заглядывать в будущее.
ПАРАМЕТРЫ ИНДИКАТОРА
p.s. При этом сихронизация между всеми символами, входящими в формулу, всегда полная. Т.е. при сложении символа A с символом B складываются их значения на одном и том же баре.
- LINE (линия)
- BARS (бары)
- CANDLE (свечи)
- SECTION (отрезки между непустыми значениями)
- HISTOGRAM (гистограмма)
- POINTS (точки)
- AUTO (автоматический выбор в соответствии с выбранным режимом отображения в главном окне)
ФУНКЦИИ
Здесь приведён полный перечень функций, разделённый по группам. Описание параметров функций приведено в конце.
1. Группа ценовых функций
Получают указанный параметр бара.
Open (symbol, timeframe, shift)
Close (symbol, timeframe, shift)
High (symbol, timeframe, shift)
Low (symbol, timeframe, shift)
Volume (symbol, timeframe, shift)
LineOpen (symbol, timeframe, shift) - получают параметр бара для вертикальной линии
LineClose (symbol, timeframe, shift)
LineHigh (symbol, timeframe, shift)
LineLow (symbol, timeframe, shift)
LineVolume (symbol, timeframe, shift)
shift - это сдвижка в барах (влево) относительно текущего рассчитываемого бара
2. Группа стандартных индикаторных функций
Рассчитывают значение технических индикаторов, используемых в МТ4. Синтаксис почти у всех совпадает с принятым в MQL4: https://docs.mql4.com/ru/indicators
Отличия есть лишь у нескольких функций, имеющих в MQL4 параметр ma_shift, который здесь совмещён с параметром shift
ATR (symbol, timeframe, period, shift)
StdDev (symbol, timeframe, period, method, applied_price, shift)
AC (symbol, timeframe, shift)
AO (symbol, timeframe, shift)
AD (symbol, timeframe, applied_volume, shift)
ADX (symbol, timeframe, period, applied_price, adx_mode, shift)
Alligator (symbol, timeframe, jaw_period, jaw_shift, teeth_period, teeth_shift, lips_period, lips_shift, method, applied_price, gator_mode, shift)
Gator (symbol, timeframe, jaw_period, jaw_shift, teeth_period, teeth_shift, lips_period, lips_shift, method, applied_price, gator_mode, shift)
Bands (symbol, timeframe, period, , applied_price, bands_mode, shift)
BearsPower (symbol, timeframe, period, applied_price, shift)
BullsPower (symbol, timeframe, period, applied_price, shift)
BWMFI (symbol, timeframe, applied_volume, shift)
CCI (symbol, timeframe, period, applied_price, shift)
DeMarker (symbol, timeframe, period, shift)
Envelopes (symbol, timeframe, period, method, applied_price, , bands_mode, shift)
Force (symbol, timeframe, period, method, applied_price, applied_volume, shift)
Fractals (symbol, timeframe, bands_mode, shift)
Ichimoku (symbol, timeframe, period_tenkan, period_kijun, period_senkou, ichimoku_mode, shift)
MA (symbol, timeframe, period, method, applied_price, shift)
MACD (symbol, timeframe, fast_period, slow_period, signal_period, applied_price, mode, shift)
Momentum (symbol, timeframe, period, applied_price, shift)
MFI (symbol, timeframe, period, shift)
RSI (symbol, timeframe, period, applied_price, shift)
Stochastic (symbol, timeframe, k_period, d_period, , method, price_field, mode, shift)
OSMA (symbol, timeframe, fast_period, slow_period, signal_period, applied_price, shift)
OBV (symbol, timeframe, applied_volume, shift)
SAR (symbol, timeframe, , , shift)
RVI (symbol, timeframe, period, mode, shift)
WPR (symbol, timeframe, period, shift)
Maximum (symbol, timeframe, period, applied_mode, shift) - получает максимальную цену на заданном интервале
Minimum (symbol, timeframe, period, applied_mode, shift) - получает минимальную цену на заданном интервале
Следующие 10 функций дублируют функции максимума и минимума для частных случаев:
MaxClose (symbol, timeframe, period, shift) - максимальная цена закрытия
MinClose (symbol, timeframe, period, shift) - минимальная цена закрытия
MaxOpen (symbol, timeframe, period, shift) - максимальная цена открытия, и т.д.
MinOpen (symbol, timeframe, period, shift)
MaxHigh (symbol, timeframe, period, shift)
MinHigh (symbol, timeframe, period, shift)
MaxLow (symbol, timeframe, period, shift)
MinLow (symbol, timeframe, period, shift)
MaxVolume (symbol, timeframe, period, shift)
MinVolume (symbol, timeframe, period, shift)
Примечание: Не все индикаторные функции поддерживают вложенность аргумента symbol (т.е. заданного в виде выражения). Поддержка есть пока только у следующих функций ATR, Bands, CCI, Envelopes, MA, Momentum, StdDev, RSI, Maximum, Minimum. В дальнейшем планируется расширить этот список.
3. Группа дополнительных индикаторных функций.
Здесь пока только функция корреляции:
Correlation (symbol1, symbol2, timeframe, period, shift), либо можно писать сокращённо: Correl
рассчитывает коэффициент корреляции Пирсона между двумя символами (выражениями) на заданном таймфрейме и периоде. Необходимо учесть, что ценовые ряды symbol1 и symbol2 здесь используются как есть, т.е. корреляция считается по их абсолютным значениям, предполагая что они стационарны.
Для нестационарных рядов можно использовать функцию
CorrelationD (symbol1, symbol2, timeframe, period, shift), либо можно писать сокращённо CorrelD
которая считает корреляцию между дельтами (первыми разностями) symbol1 и symbol2
4. Группа математических функций
Abs (a) - модуль значения a
Log (a, b) - логарифм a по основанию b. Если b не задано, то берётся натуральный логарифм
Log10 (a) - десятичный логарифм
Exp (a) - экспонента
Rand () или Rnd () - случайная величина от 0 до 1
Round (a, b) - округление a до точности b (число знаков после запятой). Если b не задано, то округляется до целого
Sign (a) - «знак» аргумента (-1 для отрицательного числа, 1 для положительного, 0 для 0)
Sin (a) - синус
Cos (a) - косинус
Tan (a) - тангенс
Max (a, b, …) - максимальное значение из перечисленных аргументов (поддерживается до 8 аргументов)
Min (a, b, …) - минимальное значение из перечисленных аргументов
5. Группа функций для получения информации о символе
LotSize (symbol) - размер лота
Tick (symbol) - размер тика
Point (symbol) - размер пункта
Pip (symbol) - то же
Ask (symbol) - цена аск
Bid (symbol) - цена бид
Параметры функций:
В таблице приведена информация о параметрах. Их значения можно задавать как в числовом, так и в текстовом виде (при наличии)
Примечания:
Параметры почти всех функций можно опускать (пропускать). В этом случае для них берутся значения по умолчанию. Например:
MA(EURUSD, D1) что эквивалентно MA(EURUSD, D1, 100, 0, 0, 0)
Если после опущенных параметров идёт параметр со значением, то следует явно отделять все предшествующие параметры запятыми
MA (EURUSD, , 20, , , 1) что эквивалентно MA(EURUSD, 0, 20, 0, 0, 1)
И пара слов о параметре shift. Помимо указания в параметрах функции, его также можно задать в квадратных скобках следом за функцией:
Точно также его можно указать следом за одиночным символом:
Скажите, Алексей, почему после удаления индикатора с графика, продолжается запись истории?
Как удалить процесс из памяти?
Скажите, Алексей, почему после удаления индикатора с графика, продолжается запись истории?
Как удалить процесс из памяти?
не удалось посмотреть индикатор. кидаешь его в окно графика и ничего не происходит. как быть?
не удалось посмотреть индикатор. кидаешь его в окно графика и ничего не происходит. как быть?
Приветствую!
Взял в аренду на месяц. При создании любого графика возникает ошибка "array out of range in 'ChartBuilder_main.mqh' (1991,7)"
и ничего не отрисовывается. Пытаюсь достучаться до автора - он пока не отвечает. Может кто-то сталкивался с такой проблемой?
Буду благодарен за помощь!
Приветствую!
Взял в аренду на месяц. При создании любого графика возникает ошибка "array out of range in 'ChartBuilder_main.mqh' (1991,7)"
и ничего не отрисовывается. Пытаюсь достучаться до автора - он пока не отвечает. Может кто-то сталкивался с такой проблемой?
Буду благодарен за помощь!
Прошу прощения за заминку с ответом. Ответил в личку. Пока разбираюсь с ошибкой.
Добрый день!
Очень сильно тормозит в последнем билде МТ5. Проверьте, пожалуйста.
Добрый день!
Очень сильно тормозит в последнем билде МТ5. Проверьте, пожалуйста.
Сам нашёл и решил проблему: RefrashRate стоял слишком большой.
Hi,
I have a question with regard to creating Synthetic instrumnets. I am not getting enough history in Daily time frame although I have enough history for the symbols Iam using.
For Example: I type EURUSD + EURCAD
I can get a decent charted data all the way up to H4 Time Frame. But in Daily, I do not get enough data and in Weekly TF, it is just one or two bars.
I am attcahing a screenshot. I wait until the history is loaded by the indicator.
The same thing happens if I create a synthtic chart by MT5. But I thought the indicator will fix the problem and be better than the built-in feature of MT5.
Thanks
Hi,
I have a question with regard to creating Synthetic instrumnets. I am not getting enough history in Daily time frame although I have enough history for the symbols Iam using.
For Example: I type EURUSD + EURCAD
I can get a decent charted data all the way up to H4 Time Frame. But in Daily, I do not get enough data and in Weekly TF, it is just one or two bars.
I am attcahing a screenshot. I wait until the history is loaded by the indicator.
The same thing happens if I create a synthtic chart by MT5. But I thought the indicator will fix the problem and be better than the built-in feature of MT5.
Thanks
Hi mtharwat. Sorry for delay in response. You have a history in synthetic chart too. As you can see on your screenshot there is a dot plot at the left side. And if you mean why is it a dot plot but not a candle plot, then the reason is you don't have enought history of lower timeframes to build your daily or weekly candles in this area. Synthetic candles require a LOWER timeframe data for each symbol using in the formula. By default this lower timeframe is M1. But you can change it in the parameter "InterpolationTimeframe", for example H1. So the candles for synthetic chart D1 will only be built within the area where your both symbols (EURUSD and EURCAD) have H1 history. Otherwise you will see a dot plot only which doesn't require a lower timeframe.
Зравствуйте!
Я только начал осваивать ваш индикатор. Хочу посчитать значения RSI, но мне выдаёт ошибку: Unavailable function : RSI.
Можете помочь?
Зравствуйте!
Я только начал осваивать ваш индикатор. Хочу посчитать значения RSI, но мне выдаёт ошибку: Unavailable function : RSI.
Можете помочь?
Приветствую, Иван. Вероятно, это из-за того, что вы символ для RSI задаёте в виде формулы. Однако в текущей реализации RSI, к сожалению, может работать лишь на одиночном символе, т.е. например RSI(EURUSD, H1, 100). В дальнейшем я сделаю возможность её работы и с формулами.