Specifiche
Задание: Необходимо написать скрипт (фрагмент советника) строящий прямую линию по паре предопределенных ранее точек и на каждом тике возвращает значение цены в точке пересечения линией нулевого бара. При появлении новых значений этих точек — линия перерисовывается.
Исходные данные:
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, которая равняется значению построенной линии на нулевом баре.
------------------------------------------------------------------------------------------------------------------------------------
Вот, собственно, вся задача. Ну и естественно, таких скриптов в советнике может быть несколько. Каждый со своими именами переменных и их значений.
Исходные данные:
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, которая равняется значению построенной линии на нулевом баре.
------------------------------------------------------------------------------------------------------------------------------------
Вот, собственно, вся задача. Ну и естественно, таких скриптов в советнике может быть несколько. Каждый со своими именами переменных и их значений.
Con risposta
1
Valutazioni
Progetti
149
36%
Arbitraggio
29
3%
/
55%
In ritardo
35
23%
Gratuito
2
Valutazioni
Progetti
1349
59%
Arbitraggio
28
82%
/
0%
In ritardo
10
1%
Gratuito
3
Valutazioni
Progetti
106
52%
Arbitraggio
17
12%
/
65%
In ritardo
25
24%
Gratuito
4
Valutazioni
Progetti
66
23%
Arbitraggio
10
0%
/
60%
In ritardo
18
27%
Gratuito
5
Valutazioni
Progetti
395
28%
Arbitraggio
155
20%
/
52%
In ritardo
112
28%
Gratuito
6
Valutazioni
Progetti
189
54%
Arbitraggio
3
33%
/
33%
In ritardo
6
3%
Gratuito
7
Valutazioni
Progetti
830
73%
Arbitraggio
15
53%
/
13%
In ritardo
193
23%
In elaborazione
8
Valutazioni
Progetti
3
0%
Arbitraggio
0
In ritardo
1
33%
Gratuito
9
Valutazioni
Progetti
34
76%
Arbitraggio
1
100%
/
0%
In ritardo
6
18%
Gratuito
10
Valutazioni
Progetti
73
16%
Arbitraggio
13
8%
/
92%
In ritardo
37
51%
Gratuito
11
Valutazioni
Progetti
2
50%
Arbitraggio
1
0%
/
0%
In ritardo
0
Gratuito
12
Valutazioni
Progetti
134
27%
Arbitraggio
62
13%
/
53%
In ritardo
58
43%
Gratuito
Informazioni sul progetto
Budget