Написать индикатор на основе SMA

Job finished

Execution time 5 days
Feedback from employee
Спасибо за заказ! Будут ещё идеи - обращайтесь!
Feedback from customer
Грамотный программист, подсказывал, учитывал даже то, чего не было в ТЗ, работу выполнил быстро. Советую! Андрей, спасибо Вам!

Specification

Общие сведения

Индикатор не перерисовывается. У индикатора всего три линии, которые представляют из себя трехпериодную SMA, по ценам либо High, либо Low (при условии, что они берут данные с того графика, на котором установлены).

Каждая линия берет данные со своего временного интервала и по ним строится. По умолчанию данные берутся с пятиминутного, часового и дневного графиков. Сам индикатор устанавливается на пятиминутный график.

Описание

Разберем работу одной линии установленной на пятиминутный график и берущей данные для отрисовки так же с пятиминутного графика. Предположим, что в настоящий момент времени, используется SMA с периодом 3 построенная по ценам High, а текущая цена находится ниже рисуемой линии. Пока цена находится ниже рисуемой линии, SMA с периодом 3 строится по ценам High, как только цена пробила линию снизу-вверх и закрепилась над ней (пятиминутная свеча закрылась выше SMA с периодом 3 построенной по ценам High), наша линия со следующей свечи после закрытой начинает строиться как SMA с периодом 3 построенная по ценам Low.

Как строится сама линия?

SMA для построения индикатора лучше не использовать, ее я привел за образец, так как она больше всего приближена к той линии которая будет строиться. Расчет для построения нашей линии производится следующим образом:

Точка нашей линии, которая рисуется в текущую нулевую свечу (по оси абсцисс; свеча, которая еще не закрыта). Данные для ее отрисовки берутся из суммы high (low) первой, второй и третьей свечи на пятиминутном графике, результат этой суммы делится на 3

Точка нашей линии, рисующая предыдущую первую свечу (которая уже закрыта). Данные для ее отрисовки берутся из суммы high (low) второй, третьей и четвертой свечи на пятиминутном графике, результат этой суммы делится на 3

Точка нашей линии, рисующая позапрошлую вторую свечу. Данные для ее отрисовки берутся из суммы high (low) третьей, четвертой и пятой свечи на пятиминутном графике, результат этой суммы делится на 3

И т.д.

После того как нулевая свеча становится первой, она берет данные уже со второй, третьей и четвертой свечи, которые раньше были первой, второй и третьей. Нумерация свеч поменялась, но расчетные данные должны остаться неизменными. Соответственно индикатор не должен перерисовываться.

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

Ниже приведен скриншот, как это будет выглядеть: черная линия берет данные с дневки, белая – с часовки, морская – с пятиминутки.

При успешном сотрудничестве в дальнейшем будет заявка на советник, на основе данного индикатора, я заинтересован, чтобы исполнитель был один.


Files:

PNG
1.png
94.5 Kb

Responded

1
Developer 1
Rating
(254)
Projects
572
36%
Arbitration
64
20% / 58%
Overdue
147
26%
Free
2
Developer 2
Rating
(351)
Projects
679
56%
Arbitration
33
15% / 39%
Overdue
63
9%
Free
3
Developer 3
Rating
(30)
Projects
45
16%
Arbitration
2
0% / 100%
Overdue
4
9%
Free
4
Developer 4
Rating
(117)
Projects
216
49%
Arbitration
1
0% / 0%
Overdue
25
12%
Free
5
Developer 5
Rating
(142)
Projects
280
42%
Arbitration
18
61% / 6%
Overdue
29
10%
Free
6
Developer 6
Rating
(236)
Projects
440
26%
Arbitration
125
21% / 57%
Overdue
96
22%
Working
7
Developer 7
Rating
(14)
Projects
22
59%
Arbitration
2
0% / 50%
Overdue
2
9%
Free
8
Developer 8
Rating
(50)
Projects
94
29%
Arbitration
3
33% / 0%
Overdue
4
4%
Free
9
Developer 9
Rating
(547)
Projects
757
46%
Arbitration
23
39% / 13%
Overdue
63
8%
Working
10
Developer 10
Rating
(586)
Projects
1047
49%
Arbitration
39
28% / 41%
Overdue
49
5%
Free
11
Developer 11
Rating
(46)
Projects
73
16%
Arbitration
13
8% / 92%
Overdue
37
51%
Free
12
Developer 12
Rating
(13)
Projects
34
76%
Arbitration
1
100% / 0%
Overdue
6
18%
Free
13
Developer 13
Rating
(356)
Projects
632
26%
Arbitration
89
73% / 13%
Overdue
12
2%
Free
14
Developer 14
Rating
(1)
Projects
1
0%
Arbitration
1
0% / 0%
Overdue
0
Free
15
Developer 15
Rating
(1)
Projects
1
100%
Arbitration
0
Overdue
0
Free
16
Developer 16
Rating
(19)
Projects
24
4%
Arbitration
0
Overdue
1
4%
Free
Similar orders
Есть советник, нужно только поменять название,описание, сделать привязку к счету, чтобы была защита,чтобы мы могли клиенту давать советник, и была привязка к 1-3 счетам только. Если возможно , сделать привязку к времени, чтобы была привязка лицензии еще на время, например на месяц, 2-3 по ценам договоримся отдельно
1. Понимание экспоненциальной и линейной функций: - Экспоненциальная функция имеет вид: y = a * b^x, где a - начальное значение, b - основание экспоненты. - Линейная функция имеет вид: y = mx + b, где m - коэффициент наклона, b - свободный член. 2. Определение целевых значений: - Необходимо определить, к каким значениям на линейном графике должны соответствовать точки на экспоненциальном графике. 3. Решение
1) Необходимо найти решение, чтобы индикатор выдавал уведомление на одну свечу раньше оригинала индикатора на всех таймфреймах без опоздание по времени в самом начале открытие свечи, и чтобы не перерисовывался индикатор как у оригинала

Project information

Budget
30 - 50 USD
For the developer
27 - 45 USD
Deadline
from 5 to 10 day(s)