Общие вопросы по разработке > Прошу помочь с написанием индикатора

Общие вопросы по разработке в Альфа-Директ 4. Обсуждение разработки пользовательских индикаторов, стратегий.
Marcello
Сообщения: 17
Зарегистрирован: 31 авг 2017, 11:42
Благодарил (а): 3 раза
Поблагодарили: 3 раза

Прошу помочь с написанием индикатора

Непрочитанное сообщение Marcello » 31 авг 2017, 11:48

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

Код: Выделить всё

Per = 13;
Med = MA( ( H + L ) / 2, Per );
Range = Max( C - Ref( C, -1 ), H - L );
LRange = MA( Range, Per ) / Per;
ROpen = ( O - Med ) / LRange;
RHigh = ( H - Med ) / LRange;
RLow = ( L - Med )  /LRange;
RClose = ( C - Med ) / LRange;
PlotOHLC( ROpen, RHigh, RLow, RClose, "", colorBlack, styleCandle );

Аватара пользователя
evge
Администратор
Сообщения: 1811
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 366 раз
Контактная информация:

Re: Прошу помочь с написанием индикатора

Непрочитанное сообщение evge » 31 авг 2017, 12:07

а можно ещё скриншот индикатора на графике или в отдельной области?
никогда такого не было и вот опять

Аватара пользователя
evge
Администратор
Сообщения: 1811
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 366 раз
Контактная информация:

Re: Прошу помочь с написанием индикатора

Непрочитанное сообщение evge » 31 авг 2017, 12:10

тут видно что считает MA через среднее значение свечки от (High+Low)/2, в АД4 придётся добавлять ещё один индикатор чтобы рассчитать от него MA, либо без индикатора считать самим. Непонятна пока функция ref().
никогда такого не было и вот опять

Аватара пользователя
evge
Администратор
Сообщения: 1811
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 366 раз
Контактная информация:

Re: Прошу помочь с написанием индикатора

Непрочитанное сообщение evge » 31 авг 2017, 12:12

C ref разобрался это просто обращение к данным в истории назад, как в АД4 Input1.Close[1] - это аналог в данном примере для Ref(C, -1).
никогда такого не было и вот опять

Аватара пользователя
evge
Администратор
Сообщения: 1811
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 366 раз
Контактная информация:

Re: Прошу помочь с написанием индикатора

Непрочитанное сообщение evge » 31 авг 2017, 12:14

Если я правильно понимаю, он на выходе должен свечки отрисовать. Вот это в АД4 не совсем можно на сегодня, придётся рисовать что-то похожее на бар или другим способом индикации производить (линии, например). На сегодняшний момент нет функции в скриптах АД4 для отрисовки бара с хвостами.
никогда такого не было и вот опять

Marcello
Сообщения: 17
Зарегистрирован: 31 авг 2017, 11:42
Благодарил (а): 3 раза
Поблагодарили: 3 раза

Re: Прошу помочь с написанием индикатора

Непрочитанное сообщение Marcello » 31 авг 2017, 12:16

Непонятна пока функция ref()

Это ссылка на предыдущее значение. В данном случае это сравнение текущего закрытия с предыдущим. Предполагаю, что в синтаксисе АД4.0 это может выглядеть так:

Код: Выделить всё

Range = Math.Max( Input.Close[0] - Input.Close[-1], Input.High[0] - Input.Low[0] )

Картинка выглядит так: Вверху обычный график. Внизу - индикатор.
Вложения
2017-08-31_125939.png
Вверху обычныый график. Внизу - индикатор.

Аватара пользователя
evge
Администратор
Сообщения: 1811
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 366 раз
Контактная информация:

Re: Прошу помочь с написанием индикатора

Непрочитанное сообщение evge » 31 авг 2017, 13:49

никогда такого не было и вот опять

Аватара пользователя
evge
Администратор
Сообщения: 1811
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 366 раз
Контактная информация:

Re: Прошу помочь с написанием индикатора

Непрочитанное сообщение evge » 31 авг 2017, 18:13

evge писал(а):Если я правильно понимаю, он на выходе должен свечки отрисовать. Вот это в АД4 не совсем можно на сегодня, придётся рисовать что-то похожее на бар или другим способом индикации производить (линии, например). На сегодняшний момент нет функции в скриптах АД4 для отрисовки бара с хвостами.


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


Вернуться в «Общие вопросы по разработке»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя