Как 2 графика разного масштаба совместить в одном окне

 

Здравствуйте,

как можно 2 графика разного масштаба совместить в одном окне чарта.

Например график цены, который в окне колеблется от 1.1 до 1.2 и график некоего вычисленного значения, например проценты от 50 до 80.

Думаю нужно показать 1 график в родном масштабе, а второй пересчитать по некоей математической формуле, так чтобы его максимум и минимум, входили в диапазон  изменений 1-го графика. В Гугле искал, но там либо про Эксель, либо др. готовые продукты. Мат. формулу так и не нашел.

 
elibrarius:

Здравствуйте,

как можно 2 графика разного масштаба совместить в одном окне чарта.

Например график цены, который в окне колеблется от 1.1 до 1.2 и график некоего вычисленного значения, например проценты от 50 до 80.

Думаю нужно показать 1 график в родном масштабе, а второй пересчитать по некоей математической формуле, так чтобы его максимум и минимум, входили в диапазон  изменений 1-го графика. В Гугле искал, но там либо про Эксель, либо др. готовые продукты. Мат. формулу так и не нашел.

Фибку не пробовали?
 
pako:
Фибку не пробовали?

Нет, это как? Можно ссылку на формулу?

По идее должно быть что-то вроде

y2_new = y2_init * k1 + k2.

Но как эти К1 и К2 вычислить? Они должны вычисляться из у1_min... y1_max и у2_min... y2_max

 
elibrarius:

Нет, это как? Можно ссылку на формулу?

По идее должно быть что-то вроде

y2_new = y2_init * k1 + k2.

Но как эти К1 и К2 вычислить? Они должны вычисляться из у1_min... y1_max и у2_min... y2_max

1.2 =100%

1.1= 0 %

Фибку накиньте там все видно будет 

 https://www.mql5.com/ru/forum/152808

 для цен 1,3254 и 1,3896 как-то так:

 прямой  обратный 
161,80% Уровень: 1.42930,0% Уровень:1.3896
100,0% Уровень: 1.389623,60% Уровень:1.3744
61,8% Уровень: 1.365138,2% Уровень:1.3651
50,0% Уровень: 1.357550,0% Уровень:1.3575
38,2% Уровень: 1.349961,8% Уровень:1.3499
23,6% Уровень: 
 1.3406100,0% Уровень:1.3254
0,0% Уровень: 1.3254161,8% Уровень:1.2857


то есть (Цена(100%)-Цена(0%))*Уровень(в тысячных) + Цена(0%) для прямого расчёта и Цена(100%) - (Цена(100%)-Цена(0%)) * Уровень(в тысячных) - для обратного расчёта.

Уровни Фибоначчи в MQL4 (Евгений) - MQL4 форум - MQL4 форум
  • www.mql5.com
Уровни Фибоначчи в MQL4 (Евгений) - MQL4 форум - MQL4 форум
 
Посчитать WPR'ы от каждого индикатора и их рисовать.
 

Все не то.... Фибоначи вообще не в тему. WPR даст оба графика в относительных величинах. А хотелось бы прямо на графике цены построить любой другой график.

Это в принципе простая геометрия... 6 класс.

Если не ошибаюсь должно быть так.

Y1_new = Y1_init * K1 + K2

где:

К1 = (Ymax2 - Ymin2) / (Ymax1 - Ymin1)

K2 = Ymax2 - (Ymax1*K1)

1 - Ymax1 и Ymin1 - график, который надо отобразить в др. масштабе

2 - Ymax2 и Ymin2 - окно в котором надо показать график 1 (там может быть как имеющийся график цены, так и другие пересчитанные графики)

Завтра попробую построить - проверить


Проверено! Формулы рабочие.

Dmitry Fedoseev

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

Да, при прокрутке графика по горизонтали - надо делать перерасчет на новые уровни.

 
elibrarius:

Все не то.... Фибоначи вообще не в тему. WPR даст оба графика в относительных величинах. А хотелось бы прямо на графике цены построить любой другой график.

Это в принципе простая геометрия... 6 класс.

Если не ошибаюсь должно быть так.

Y1_new = Y1_init * K1 + K2

К1 = (Ymax2 - Ymin2) / (Ymax1 - Ymin1)

K2 = Ymax2 - (Ymax1*K1)

Завтра попробую построить - проверить

1.1=0   1.2=100 получили масштаб 

Y2 max=80   Y2 min=50 привязали к масштабу

та же самая фибка, только в левой руке :)
 

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

 
Dmitry Fedoseev:

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

Нет , зачем перерасчет?

1.1 =0   1.2 =100  получили масштаб

Y2min =50% привязали масштаб Y2min = 1.15 нанесли на график

Если увеличить график или уменьшить , пункты будут оставаться в одном масштабе

 
pako:

Нет , зачем перерасчет?

1.1 =0   1.2 =100  получили масштаб

Y2min =50% привязали масштаб Y2min = 1.15 нанесли на график

Если увеличить график или уменьшить , пункты будут оставаться в одном масштабе

График цены вписывает в окно только цены, а не индикаторы. Если чуть  прокрутить график индикаторные линии съедут.  

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

Причина обращения: