Индикаторы: работа с буферами

Статус
Закрыто для дальнейших ответов.

DiZin

Местный знаток
У меня iRSI() почему-то так так не работает.
PHP:
buf1[i] = iCustom(NULL,0,"@DDL",Period1,Shift1,MODE_ASCEND,i);
Пробовал уже менять на irsi. Ошибка?
Не стесняемся жать F1 в редакторе. Такие вот параметры у функции iRSI

iRSI( string symbol, int timeframe, int period, int applied_price, int shift)
 

sergh67

Активный участник
Не стесняемся жать F1 в редакторе. Такие вот параметры у функции iRSI

iRSI( string symbol, int timeframe, int period, int applied_price, int shift)

Я не совсем понимаю. Это значит что у меня будет работать? Или у меня не будет работать?
 

qqmber

Почетный гражданин
У меня iRSI() почему-то так так не работает.
PHP:
buf1[i] = iCustom(NULL,0,"@DDL",Period1,Shift1,MODE_ASCEND,i);
Пробовал уже менять на irsi. Ошибка?

Код:
iRSI(NULL,0,RSIPeriod,0,i);
iCustom(NULL,0,"RSI",RSIPeriod,0,i);
Работают абсолютно одинаково.
А вот что такое "@DDL" непонятно.Тут имя файла вызываемого индикатора должно стоять.
 

sergh67

Активный участник
"@DDL" У меня в пользовательских индикаторах нет не RSI и не каких других. Я их все сразу удаляю после установки терминала. А "@DDL" это типа как обозначение файла вместо RSI, моя ассоциация с dll. Но я его делал год назад, может как нибудь во что нибудь другое переименую.
 
Последнее редактирование:

sergh67

Активный участник
фигасе :embrace:
все, отписываюсь от ветки

Я не про вас! Вы чего? Вы сами сказали, что игнорируете трейдеров которые все думают что у них грааль. Я просто переформулировал вашу фразу, не имея в виду вас. Это ваши слова.
В конце концов если вам такая поставка вопроса не нравится, почему вы на себя не обижаетесь?
 
Последнее редактирование:

sergh67

Активный участник
Проще говоря вот код.
PHP:
buf1[i] = iCustom(NULL,0,"@DDL",Period1,Shift1,MODE_ASCEND,i);
      buf2[i] = iCustom(NULL,0,"@DDL",Period2,Shift2,MODE_ASCEND,i);
      buf3[i] = (buf2[i] - buf1[i+1])+buf1[i];
      buf4[i] = -1*(buf2[i] -  buf3[i+1])+buf3[i];
      buf5[i] = iCustom(NULL,0,"@DDL",Period1,Shift1,MODE_DESCEND,i);
      buf6[i] = iCustom(NULL,0,"@DDL",Period2,Shift2,MODE_DESCEND,i);
      buf7[i] = (buf6[i] - buf5[i+1])+buf5[i];
      buf8[i] = -1*(buf6[i] - buf7[i+1])+buf7[i];
 

DiZin

Местный знаток
Я не про вас! Вы чего? Вы сами сказали, что игнорируете трейдеров которые все думают что у них грааль. Я просто переформулировал вашу фразу, не имея в виду вас. Это ваши слова.
В конце концов если вам такая поставка вопроса не нравится, почему вы на себя не обижаетесь?
А, ну ладно ;)
 

DiZin

Местный знаток
Проще говоря вот код.
PHP:
buf1[i] = iCustom(NULL,0,"@DDL",Period1,Shift1,MODE_ASCEND,i);
      buf2[i] = iCustom(NULL,0,"@DDL",Period2,Shift2,MODE_ASCEND,i);
      buf3[i] = (buf2[i] - buf1[i+1])+buf1[i];
      buf4[i] = -1*(buf2[i] -  buf3[i+1])+buf3[i];
      buf5[i] = iCustom(NULL,0,"@DDL",Period1,Shift1,MODE_DESCEND,i);
      buf6[i] = iCustom(NULL,0,"@DDL",Period2,Shift2,MODE_DESCEND,i);
      buf7[i] = (buf6[i] - buf5[i+1])+buf5[i];
      buf8[i] = -1*(buf6[i] - buf7[i+1])+buf7[i];
Вопрос №1.
Зачем MODE_ASCEND и MODE_DESCEND вместо значений номеров буферов.
Вопрос №2. Причем тут @DDL и RSI..
 

sergh67

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

sergh67

Активный участник
А у меня нет никаких номеров буферов. Я через iCustom получаю RSI. Почему то он на прямую с кодом не дружит.
 
Последнее редактирование:

AlexeyVik

Программист mql4 mql5
А у меня нет никаких номеров буферов. Я через iCustom получаю RSI.
Как-же нету??? А выделил я что?
Проще говоря вот код.
Код:
[COLOR=Red][B]buf1[i][/B][/COLOR] = iCustom(NULL,0,"@DDL",Period1,Shift1,MODE_ASCEND,i);
     [COLOR=Red][B] buf2[i][/B][/COLOR] = iCustom(NULL,0,"@DDL",Period2,Shift2,MODE_ASCEND,i);
      [COLOR=Red][B]buf3[i][/B][/COLOR] = (buf2[i] - buf1[i+1])+buf1[i];
      [COLOR=Red][B]buf4[i][/B][/COLOR] = -1*(buf2[i] -  buf3[i+1])+buf3[i];
      [COLOR=Red][B]buf5[i][/B][/COLOR] = iCustom(NULL,0,"@DDL",Period1,Shift1,MODE_DESCEND,i);
      [COLOR=Red][B]buf6[i][/B][/COLOR] = iCustom(NULL,0,"@DDL",Period2,Shift2,MODE_DESCEND,i);
      [COLOR=Red][B]buf7[i][/B][/COLOR] = (buf6[i] - buf5[i+1])+buf5[i];
     [COLOR=Red][B] buf8[i][/B][/COLOR] = -1*(buf6[i] - buf7[i+1])+buf7[i];
 

sergh67

Активный участник
А что толку мне смотреть? У меня индикатор только в таком виде и работает. Вы сами посмеялись зачем я по второму кругу iCustom хочу пустить. Вот!
 

AlexeyVik

Программист mql4 mql5
Почему ты решил что над тобой или твоим кодом смеялись? Я предложил тебе посмотреть документацию, как это должно быть написано.

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

sergh67

Активный участник
Я на этом языке не разговариваю. Проще! Вы мне все сказали, - зачем я использую iCustom а не iRSI. Я в свою очередь пытаюсь объяснить, что только так он у меня и работает. iRSI не поставляется. Иного варианта я не знаю. В учебнике я нечего не понимаю, иначе бы я не был здесь, как и вся та шайка-лейка трейдеров которая здесь тусуется прося помощи. Учебник мало доступен для индивидуального изучения. Без преподавателя предмета с учебником делать нечего.
 
Статус
Закрыто для дальнейших ответов.
Верх