линия 3 делит прямоугольник на две равные части по диагонали.
нужно реализовать способ нахождения соотношения баров в данном прямоугольнике в зонах 1 и 2 соответственно без построения функции прямой типа y = kx+b.
язык программирования MQL4.
без функции прямой - это примерно как ? телепатией что-ли.. :-)
прямую можно не рисовать, но внутри ОНО всё равно kx+b или впрямую или замаскированный в виде пропорций
без функции прямой - это примерно как ? телепатией что-ли.. :-)
прямую можно не рисовать, но внутри ОНО всё равно kx+b или впрямую или замаскированный в виде пропорций
ну... может есть метод проще и надежнее... а я о нем не знаю..)
линия 3 делит прямоугольник на две равные части по диагонали.
нужно реализовать способ нахождения соотношения баров в данном прямоугольнике в зонах 1 и 2 соответственно без построения функции прямой типа y = kx+b.
язык программирования MQL4.
Что-то вроде разности двух интегралов - от котировок и линейной функции, которая затем делится на площадь прямоугольника для нормировки.
без функции прямой - это примерно как ? телепатией что-ли.. :-)
прямую можно не рисовать, но внутри ОНО всё равно kx+b или впрямую или замаскированный в виде пропорций
Думаю, он имел в виду не заполнять последовательно массив точек. Да там простейшая формула, вот, код нафик писать не буду, лень.
L - длина прямоугольника в барах, например 213, H - высота в величине котировки, например, H = 1.12654 - 1.05214 = 0.0744
1. deltaL = H/L = 0.0744/213 = 3,4929577464788732394366197183099e-4 это приращение цены на 1 бар
2. Проходимся в цикле по 213 барам, на каждом вычисляем цену, как price = PriceStart + deltaL*nBar и смотрим, в этой точке бар выше или ниже
Чего тут думать?
Думаю, он имел в виду не заполнять последовательно массив точек. Да там простейшая формула, вот, код нафик писать не буду, лень.
L - длина прямоугольника в барах, например 213, H - высота в величине котировки, например, H = 1.12654 - 1.05214 = 0.0744
1. deltaL = H/L = 0.0744/213 = 3,4929577464788732394366197183099e-4 это приращение цены на 1 бар
2. Проходимся в цикле по 213 барам, на каждом вычисляем цену, как price = PriceStart + deltaL*nBar и смотрим, в этой точке бар выше или ниже
Чего тут думать?
Ты прав так и сделаю)
спасибо!)
дело в том что необходимо было вычислить угол наклона линии 3. Но в силу того, что я это уже ранее делал и столкнулся с проблемой ошибочного определения из за зависимости от масштаба графика, даже если программно выставлял в свойствах графика 1 к 1. все равно была существенная погрешность даже с использованием библиотек winAPI ("user32.dll") и расчет в пикселах самого окна отрисовки окна и прочей жести. Так что задача перетекла в исполнение описанное в данной теме.столкнулся с проблемой ошибочного определения из за зависимости от масштаба графика, даже если программно выставлял в свойствах графика 1 к 1. все равно была существенная погрешность даже с использованием библиотек winAPI ("user32.dll") и расчет в пикселах самого окна отрисовки окна и прочей жести. Так что задача перетекла в исполнение описанное в данной теме.
пиксели не нужно, цены и номера бара достаточно для построения линии
вот давным давно делал ЗигЗаг который строится точками, а не отрезками, это один в один задача - построение прямой по школьной формуле y = kx+b
![Может быть эти индикаторы надо в Code Base ? Может быть эти индикаторы надо в Code Base ?](https://c.mql5.com/36/24/mozhet-bit-eti-indikatori-nado.jpg)
- 2010.07.04
- www.mql5.com
пиксели не нужно, цены и номера бара достаточно для построения линии
вот давным давно делал ЗигЗаг который строится точками, а не отрезками, это один в один задача - построение прямой по школьной формуле y = kx+b
Спасибо Игорь!) Глянул - думаю пригодится)
Спасибо Игорь!) Глянул - думаю пригодится)
в моем примере формула тебе нужна
Py = (lasttmp-tmp)/((lasti-i)+Point/10000);
это будет приращение которое нужно будет добавлять от точки с координатами [ lasttmp , lasti ] до [ tmp , i ] , где tmp - это цена, i - это № бара
давно было, не помню, почему к этой формуле пришел, но линии по точкам строит правильно, проверял в прошлом году сам себя )))
в моем примере формула тебе нужна
Py = (lasttmp-tmp)/((lasti-i)+Point/10000);
это будет приращение которое нужно будет добавлять от точки с координатами [ lasttmp , lasti ] до [ tmp , i ] , где tmp - это цена, i - это № бара
давно было, не помню, почему к этой формуле пришел, но линии по точкам строит правильно, проверял в прошлом году сам себя )))
агась я тоже внимание на эту формулу обратил)
уже почти доделал)
линия 3 делит прямоугольник на две равные части по диагонали.
нужно реализовать способ нахождения соотношения баров в данном прямоугольнике в зонах 1 и 2 соответственно без построения функции прямой типа y = kx+b.
язык программирования MQL4.
И еще, что бы математика не использовалась, особенно действия + - * /
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
линия 3 делит прямоугольник на две равные части по диагонали.
нужно реализовать способ нахождения соотношения баров в данном прямоугольнике в зонах 1 и 2 соответственно без построения функции прямой типа y = kx+b.
язык программирования MQL4.