Закрытая тема
03.07.2013, 15:04
Аватар для AlexeyVik
AlexeyVik AlexeyVik вне форума Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,660
Поблагодарили 3,789 раз(а) / Репутация: 3781

Скрытый текст

PHP код:
Параметры:
symbol      -      Символьное имя инструментана данных которого будет вычисляться индикаторNULL означает текущий символ.
timeframe      -      ПериодМожет быть одним из периодов графика0 означает период текущего графика.
name      -      Имя пользовательского индикатора.
...      -      
Список параметров (при необходимости). Передаваемые параметры должны соответствовать порядку объявления и типу внешних (externпеременных пользовательского индикатора.
mode      -      Индекс линии индикатораМожет быть от 0 до 7 и должен соответствовать индексуиспользуемому одной из функций SetIndexBuffer.
shift      -      Индекс получаемого значения из индикаторного буфера (сдвиг относительно текущего бара на указанное количество периодов назад).
Пример:
  
double val=iCustom(NULL0"SampleInd",13,1,0); 
[свернуть]

Ну вот документация. Все тоже самое что вы мне сказали. Больше в документации нечего нет. Никаких подробностей. Я перепробовал все. Но видимо где то делаю ошибку. А описание очень скудное чтобы понять.
Основное, что ты никак не можешь понять это строка документации
... - Список параметров (при необходимости). Передаваемые параметры должны соответствовать порядку объявления и типу внешних (extern) переменных пользовательского индикатора
Эти параметры надо смотреть в индикаторе к которому обращаешься посредством iCustom()
Сколько в индикаторе есть внешних параметров, столько и должно быть в этом списке.
Если строковые имеют пояснительный характер, то их можно вставить как пустую строку ""
Всё остальное либо переменными из внешних параметров советника либо числами или любыми другими переменными. Но обязательно совпадающими по типу.
03.07.2013, 15:42
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
В этом варианте зависания нет. Я прописал ваш iCustom.
Добавил по требованию:
PHP код:
extern int TimeFrame 0;
extern int P1 20;
extern int P2 21;
extern int P3 6;
extern double P4 0.8
В этом варианте у меня линии окончательно стали прямыми.
Основная идет отдельно по верхней кромке.
Остальные линии лежат по низу.

Насчет документации:
Мне надо увидеть хотя бы образец. Я не понимаю что от меня требуется? Если бы мог обойтись учебником, то не спрашивал бы.

Последний раз редактировалось sergh67; 03.07.2013 в 15:49.
03.07.2013, 16:00
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
Индекс получаемого значения из индикаторного буфера (сдвиг относительно текущего бара на указанное количество периодов назад).
Что вот это написано я не знаю. Я даже до сих пор не освоился с торговыми терминами. Я понятия не имею что такое лот. А вы хотите чтобы я эту строку на верху к примеру понял? Я не могу такое понимать. У меня нет даже воображаемого представления представления о том, что это такое.

Последний раз редактировалось sergh67; 03.07.2013 в 16:51.
03.07.2013, 16:09
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
Я шаблонный мастер. Есть шаблон я по нему могу работать. Если бы я смог написать индикатор хотя бы с одной строчкой кода, я все равно бы не смог даже объяснить как он работает и по какому алгоритму.
Для меня слово бар это ругательство. В лучшем случае просто японская свечка на графике и только.

Последний раз редактировалось sergh67; 03.07.2013 в 16:50.
03.07.2013, 18:30
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
Люди помогите мне с этим MACD. Мучаюсь с ним пол года безрезультатно. Устал. А он мне зараза очень нравиться.
Я периоды переносил не работает, Другие переносил переменные, - не работает. Может неправильно переношу. Не знаю.

Последний раз редактировалось sergh67; 03.07.2013 в 19:18.
03.07.2013, 19:23
Аватар для AlexeyVik
AlexeyVik AlexeyVik вне форума Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,660
Поблагодарили 3,789 раз(а) / Репутация: 3781
Я шаблонный мастер.

Индекс линии индикатора. Может быть от 0 до 7 и должен соответствовать индексу, используемому одной из функций SetIndexBuffer.

Индекс линии или другой формы отображения индикатора это номер буфера. Если индикатор имеет только одну линию или пусть будет стрелка или гистограмма, то индекс буфера только 0 (НУЛЬ). Если их больше, то индекс можно определить по цвету на закладке "Цвета" в окне свойств индикатора.

Индекс получаемого значения из индикаторного буфера (сдвиг относительно текущего бара на указанное количество периодов назад).

Текущий бар имеет индекс 0 (НУЛЬ). Слева от него первый, 2 и т.д. Счёт баров (свечей) идёт с права налево


Последний раз редактировалось chocolate; 04.07.2013 в 11:36.
03.07.2013, 20:42
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
Вот не обижайся, ради бога...
А с девками ты тоже по шаблону спишь?
А теперь серьезно: - Разве не вы говорили, что не любите писать код? И что предпочитаете шаблонно копировать?
На свете уже 10000 индикаторов, зачем чего-то придумывать? Я не стремлюсь познать язык. Мне это нужно просто в пределах манипулирования кодом. Если вдруг жизненные обстоятельства меня вынудят обратиться к изучению этого языка, это уже будет другая тема. В данных обстоятельствах мне нужны незначительные тонкости, которыми вы владеете. - Это типа как детям показать, где ключиком повернуть, чтобы игрушка завелась. Я не хочу вести подсчеты баров и тому подобное. Зачем мне изучать глубоко язык, если все мои потребности в нем, - это что-то подправить. Зачем тратить кучу времени на то, что мне в жизни скорее всего не пригодится?

Последний раз редактировалось chocolate; 04.07.2013 в 11:36.
04.07.2013, 05:23
Аватар для DiZin
DiZin DiZin вне форума Почётный гражданин
Регистрация: 06.10.2009 / Адрес: то тут, то там / Сообщений: 731
Поблагодарили 460 раз(а) / Репутация: 465
Не знаю? Я вымотался и терминал тоже. Он у меня уже раз сто завис. То ли я не правильно вписываю,то ли не то вписываю. И через запятую и через точку и в кавычках, и периоды и переменные. Только один сплошной висяк.
limit = Bars;

Вот из-за этого висит терминал. Постоянно обсчитывать все бары - это круто.
Добрею прямо на глазах
04.07.2013, 05:27
Аватар для DiZin
DiZin DiZin вне форума Почётный гражданин
Регистрация: 06.10.2009 / Адрес: то тут, то там / Сообщений: 731
Поблагодарили 460 раз(а) / Репутация: 465
В этом варианте зависания нет. Я прописал ваш iCustom.
Добавил по требованию:
PHP код:
extern int TimeFrame 0;
extern int P1 20;
extern int P2 21;
extern int P3 6;
extern double P4 0.8
В этом варианте у меня линии окончательно стали прямыми.
Основная идет отдельно по верхней кромке.
Остальные линии лежат по низу.

Насчет документации:
Мне надо увидеть хотя бы образец. Я не понимаю что от меня требуется? Если бы мог обойтись учебником, то не спрашивал бы.
Видимо есть проблемы со значениями. Как я уже говорил, их значения очень маленькие,поэтому они и кажутся прямыми....
И проблема в верхней линии.. видимо с ней что-то не так и она сбивает весь масштаб.
Если не против - вновь код в студию
Добрею прямо на глазах
04.07.2013, 06:40
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
Так я оба варианта выкладывал. Какой надо выложить?
limit = Bars - counted_bars; я сам удалил, как и во многих случаях у меня у меня из-за него либо линии ложились в ноль, либо MTF не работал. Надеялся что это решит вопрос. Но уверяю виснет у меня не из-за этого.

Последний раз редактировалось sergh67; 04.07.2013 в 06:46.
04.07.2013, 06:45
Аватар для DiZin
DiZin DiZin вне форума Почётный гражданин
Регистрация: 06.10.2009 / Адрес: то тут, то там / Сообщений: 731
Поблагодарили 460 раз(а) / Репутация: 465
Так я оба варианта выкладывал. Какой надо выложить?
Последний, где рисует у тебя просто несколько линий
Добрею прямо на глазах
04.07.2013, 06:53
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51

Скрытый текст

PHP код:
#property  indicator_separate_window
#property  indicator_buffers 5
#property  indicator_color1  Yellow    
#property  indicator_color2  C'0,47,0'   
#property  indicator_color3  FireBrick 
#property  indicator_color4  Silver    
#property  indicator_color5  Silver 
#property  indicator_width2 3
#property  indicator_width3 3

double a[];
double b[];  
double c[]; 
double d[];  
double e[]; 
extern int TimeFrame 0;
extern int P1 20;
extern int P2 21;
extern int P3 6;
extern double P4 0.8;

string INDNAME ="CM";
int init()
  { 
   
SetIndexBuffer(0a); 
   
SetIndexStyle(0DRAW_LINE);
   
SetIndexBuffer(1b); 
   
SetIndexStyle(1DRAW_LINE);
   
SetIndexBuffer(2c);
   
SetIndexStyle(2DRAW_LINE);
   
SetIndexBuffer(3d); 
   
SetIndexStyle(3DRAW_LINE);
   
SetIndexBuffer(4e); 
   
SetIndexStyle(4DRAW_LINE);
    
IndicatorShortName(INDNAME);
   return(
0);
  }
int start(){
  
int limit;
   
int counted_bars IndicatorCounted();
   
limit Bars;
   for(
int i 0limiti++){
   
a[i] = iCustom(NULL,0,"Cubb_Macd"P1P2P3P40i);
   
b[i] = iCustom(NULL,0,"Cubb_Macd"001i);
   
c[i] = iCustom(NULL,0,"Cubb_Macd"002i);
   
d[i] = iCustom(NULL,0,"Cubb_Macd"003i);
   
e[i] = iCustom(NULL,0,"Cubb_Macd"004i);
     }
   return(
0);
  } 
[свернуть]

Я эти P1, P2, P3, P4, и в кавычки брал и всем буферам раздавал и точки между ними ставил и так и сяк экспериментировал.
04.07.2013, 07:06
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
По ходу это не тот вариант, у меня с ним опять терминал завис. У меня с ним опять терминал завис. А у меня сейчас 3$ открыто в бай. Ситуация напряженная. Я весь на взводе. - Туда не туда? Стопы не ставлю.

Последний раз редактировалось sergh67; 04.07.2013 в 07:11.
04.07.2013, 07:10
Аватар для DiZin
DiZin DiZin вне форума Почётный гражданин
Регистрация: 06.10.2009 / Адрес: то тут, то там / Сообщений: 731
Поблагодарили 460 раз(а) / Репутация: 465

Скрытый текст

PHP код:
#property  indicator_separate_window
#property  indicator_buffers 5
#property  indicator_color1  Yellow    
#property  indicator_color2  C'0,47,0'   
#property  indicator_color3  FireBrick 
#property  indicator_color4  Silver    
#property  indicator_color5  Silver 
#property  indicator_width2 3
#property  indicator_width3 3

double a[];
double b[];  
double c[]; 
double d[];  
double e[]; 
extern int TimeFrame 0;
extern int P1 20;
extern int P2 21;
extern int P3 6;
extern double P4 0.8;

string INDNAME ="CM";
int init()
  { 
   
SetIndexBuffer(0a); 
   
SetIndexStyle(0DRAW_LINE);
   
SetIndexBuffer(1b); 
   
SetIndexStyle(1DRAW_LINE);
   
SetIndexBuffer(2c);
   
SetIndexStyle(2DRAW_LINE);
   
SetIndexBuffer(3d); 
   
SetIndexStyle(3DRAW_LINE);
   
SetIndexBuffer(4e); 
   
SetIndexStyle(4DRAW_LINE);
    
IndicatorShortName(INDNAME);
   return(
0);
  }
int start(){
  
int limit;
   
int counted_bars IndicatorCounted();
   
limit Bars;
   for(
int i 0limiti++){
   
a[i] = iCustom(NULL,0,"Cubb_Macd"P1P2P3P40i);
   
b[i] = iCustom(NULL,0,"Cubb_Macd"001i);
   
c[i] = iCustom(NULL,0,"Cubb_Macd"002i);
   
d[i] = iCustom(NULL,0,"Cubb_Macd"003i);
   
e[i] = iCustom(NULL,0,"Cubb_Macd"004i);
     }
   return(
0);
  } 
[свернуть]

Я эти P1, P2, P3, P4, и в кавычки брал и всем буферам раздавал и точки между ними ставил и так и сяк экспериментировал.
Среди этих вариантов нет
вот вариант кода
a[i] = iCustom(NULL,0,"Cubb_Macd", TimeFrame, P1, P2, P3, P4, 0, i); (фактически дважды используешь таймфрейм)
Добрею прямо на глазах
04.07.2013, 07:25
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
А это как раз тот вариант про который вы спрашивали. Линии стали прямыми.

Последний раз редактировалось sergh67; 04.07.2013 в 07:54.
04.07.2013, 07:27
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
Только вы обратите внимание. Терминал запрашивает у меня кто они такие P1, P2, P3, P4,
и я добавил:
extern int TimeFrame = 0;
extern int P1 = 20;
extern int P2 = 21;
extern int P3 = 6;
extern double P4 = 0.8;
04.07.2013, 08:25
Аватар для AlexeyVik
AlexeyVik AlexeyVik вне форума Программист mql4 mql5
Регистрация: 19.11.2009 / Сообщений: 2,660
Поблагодарили 3,789 раз(а) / Репутация: 3781
А теперь серьезно:
Ну если это серьёзно, то давать какие-либо советы бессмысленно.
По поводу копирования я если и говорил, то совсем не так. Писать заново код который уже есть написанный или этот кусок кода скопировать в другой индикатор -это одно. Но копировать не понимая происходящего и потом спрашивать почему не работает... Это уже слишком.

Впредь я буду посматривать в эту ветку только когда мне захочется посмеяться.
04.07.2013, 08:30
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
AlexeyVik: А для чего вы здесь вообще? Я могу тоже под вас закос сделать и делать вид умного. У вас был +. Вы в этот язык пришли уже зная С++. А я нет. Для вас не загадка.что написано в учебнике. А для меня загадка, потому что он нечего не растолковывает.
04.07.2013, 09:01
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
Ну если это серьёзно, то давать какие-либо советы бессмысленно.
Впредь я буду посматривать в эту ветку только когда мне захочется посмеяться.
Не обижайтесь. Лично я вообще не понимаю что вы здесь делаете? Наверно действительно сюда приходите посмеяться. Девки, шаблоны наверно ваша тема - но все это не то! Вы веткой ошиблись. Это ветка создана оказывать помощь в программировании. Что вы здесь делаете?
На мой взгляд это не самая веселая ветка.

Кстати приколитесь: Вы по делу еще нечего не сказали хотя мы с вами уже раз пятый встречаемся. Правда ржачная тема?

И могу поспорить, что лучший индикатор есть у меня!

Последний раз редактировалось sergh67; 04.07.2013 в 09:38.
04.07.2013, 16:45
Аватар для sergh67
sergh67 sergh67 вне форума Активный участник
Регистрация: 02.08.2012 / Сообщений: 193
Поблагодарили 50 раз(а) / Репутация: 51
Вообщем я кое как решил этот вопрос. Заменил iMA на iMACD. Теперь все выводится
и вроде как никакой разницы.
Закрытая тема


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.



Текущее время: 20:30. Часовой пояс GMT.


Перевод: zCarot
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO