Необходимо написать скрипт (фрагмент советника) строящий прямую линию по паре предопределенных ранее точек и на каждом тике возвращает значение цены в точке пересечения линией нулевого бара.

MQL4 Scripts Autre

Spécifications

Задание: Необходимо написать скрипт (фрагмент советника) строящий прямую линию по паре предопределенных ранее точек и на каждом тике возвращает значение цены в точке пересечения линией нулевого бара. При появлении новых значений этих точек — линия перерисовывается.

Исходные данные:

1. две последовательно зафиксикрованные точки на графике цены (point_1 и point_0), имеющие координаты:

point_1_price = <цена на тот момент>
point_1_time = <время на тот момент>*

point_0_price = <цена на тот момент>
point_0_time = <время на тот момент>*
------------------------------------
* цену я вычисляю так:  point_0_time = iTime(NULL,PERIOD_M1,0); Это правильно?

2. флаг — логическая переменная redraw_line = true / false

при возникновении новой пары точек переменная redraw_line переключается в состояние true и разрешает запуск скрипта, который необходимо написать:

------------------------------------------------------------------------------------------------------------------------------------
Скрипт строит прямую линию, проходящую через точки point_1 и point_0 на графике цены. Линия (графический объект) имеет заданное имя. Например "bear_line".

Скрипт стартует при условии, что переменная redraw_line = true и существуют две пары, не равных нулю, значений точек point_1_price, point_1_time, point_0_price, point_0_time.

1. если на графике цены уже существует линия bear_line, проведенная по координатам предыдущей пары точек, то удаляем (стираем) ее.

2. строим прямую линию от точки point_1 через точку point_0 вправо ("в бесконечность"). линия имеет параметры, которые задаются при ее создании: тип линии, толщина, цвет.

3. после того, как линия построена, скидываем флажок redraw_line = false до следующего обновления значений точек point_1 и point_0.

4. еще должна существовать переменная level_0, которая равняется значению построенной линии на нулевом баре.

------------------------------------------------------------------------------------------------------------------------------------
Вот, собственно, вся задача. Ну и естественно, таких скриптов в советнике может быть несколько. Каждый со своими именами переменных и их значений.

Répondu

1
Développeur 1
Évaluation
(107)
Projets
149
36%
Arbitrage
29
3% / 55%
En retard
35
23%
Gratuit
2
Développeur 2
Évaluation
(549)
Projets
1331
59%
Arbitrage
28
82% / 0%
En retard
10
1%
Gratuit
3
Développeur 3
Évaluation
(40)
Projets
106
52%
Arbitrage
17
12% / 65%
En retard
25
24%
Gratuit
4
Développeur 4
Évaluation
(35)
Projets
64
22%
Arbitrage
10
0% / 60%
En retard
18
28%
Gratuit
5
Développeur 5
Évaluation
(195)
Projets
395
28%
Arbitrage
155
20% / 52%
En retard
112
28%
Gratuit
6
Développeur 6
Évaluation
(126)
Projets
182
54%
Arbitrage
3
33% / 33%
En retard
6
3%
Travail
7
Développeur 7
Évaluation
(549)
Projets
826
73%
Arbitrage
15
53% / 13%
En retard
193
23%
Travail
8
Développeur 8
Évaluation
(1)
Projets
3
0%
Arbitrage
0
En retard
1
33%
Gratuit
9
Développeur 9
Évaluation
(13)
Projets
34
76%
Arbitrage
1
100% / 0%
En retard
6
18%
Gratuit
10
Développeur 10
Évaluation
(46)
Projets
73
16%
Arbitrage
13
8% / 92%
En retard
37
51%
Gratuit
11
Développeur 11
Évaluation
(1)
Projets
2
50%
Arbitrage
1
0% / 0%
En retard
0
Gratuit
12
Développeur 12
Évaluation
(49)
Projets
134
27%
Arbitrage
62
13% / 53%
En retard
58
43%
Gratuit

Informations sur le projet

Budget