Ответ
 
Опции темы
Старый 15.04.2012, 16:20   #201 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,252
Репутация: 1963
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 347
Поблагодарили 1,892 раз(а) в 1,069 сообщениях
Поинты: 1270
Отправить сообщение для Ugar с помощью ICQ
Сообщение от budazp Посмотреть сообщение
Христос Воскрес! Подскажите плиз кто
по кодам в теме! Мммм... на примере
стохастика, нужно чтоб он расчет вел
не за количество баров а с заданой
временной точки(условно с 00:00
часов вчерашнего дня)
Во истину воскрес.
Ищешь бар с заданным временем с помошью iBarShift. Результатом будет количество баров. После, как обычно считаешь индикатор за это количество баров.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
budazp (15.04.2012), eevviill (16.04.2012)
Старый 16.04.2012, 16:41   #202 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Добрый день. Подскажите что дальше писать. Задача такая, что индикатор должен рисовать стрелку при пересичении 2-ух МА. Я не могу понять логики по какой это делается. Если можно то попроще и поподробней объясните.

PHP код:
 
#property copyright "eevviill"
#property link      "itisallillusion@gmail.com"
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Lime
#property indicator_color2 OrangeRed
 
double ExtMapBuffer1[];
double ExtMapBuffer2[];
extern int MA_fast_period 40;
extern int MA_slow_period 60;
 
int init()
  {
 
   
SetIndexBuffer(0,ExtMapBuffer1);
   
SetIndexStyle(0,DRAW_ARROW);
   
SetIndexArrow(0,SYMBOL_ARROWUP); 
 
   
SetIndexBuffer(1,ExtMapBuffer2);
   
SetIndexStyle(1,DRAW_ARROW);
   
SetIndexArrow(1,SYMBOL_ARROWDOWN); 
 
   return;
  }
 
 
int start()
  {
   
int counted_bars=IndicatorCounted();
   
int pos Bars-counted_bars;
double MA1 iMA(Symbol(),0,MA_fast_period,0,MODE_LWMA,PRICE_CLOSE,1);
double MA11 iMA(Symbol(),0,MA_fast_period,0,MODE_LWMA,PRICE_CLOSE,2);
double MA2 iMA(Symbol(),0,MA_slow_period,0,MODE_LWMA,PRICE_CLOSE,1);
double MA22 iMA(Symbol(),0,MA_slow_period,0,MODE_LWMA,PRICE_CLOSE,2);
if(
MA11<MA22 && MA1>MA2ExtMapBuffer1[1] = ; //up
if(MA11>MA22 && MA1<MA2ExtMapBuffer2[1] = ; //down
 
 
   
return;
  } 
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 16.04.2012, 17:51   #203 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,252
Репутация: 1963
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 347
Поблагодарили 1,892 раз(а) в 1,069 сообщениях
Поинты: 1270
Отправить сообщение для Ugar с помощью ICQ
А чё индикаторы с буферами ещё не писал? Попробуй разобрать всё что я изменил в функции start.
Код:
int start()
  {
double MA1, MA11, MA2, MA22;
int counted_bars=IndicatorCounted();
   int pos = Bars-counted_bars;
for(int i=1; i<pos; i++)
{
MA1 = iMA(Symbol(),0,MA_fast_period,0,MODE_LWMA,PRICE_CLOSE,i);
MA11 = iMA(Symbol(),0,MA_fast_period,0,MODE_LWMA,PRICE_CLOSE,i+1);
MA2 = iMA(Symbol(),0,MA_slow_period,0,MODE_LWMA,PRICE_CLOSE,i);
MA22 = iMA(Symbol(),0,MA_slow_period,0,MODE_LWMA,PRICE_CLOSE,i+1);
if(MA11<MA22 && MA1>MA2) ExtMapBuffer1[i] = Low[i]; 
if(MA11>MA22 && MA1<MA2) ExtMapBuffer2[i] = High[i]; 
}
return;
  }  

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!

Последний раз редактировалось Ugar; 16.04.2012 в 17:54.
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (16.04.2012)
Старый 16.04.2012, 18:08   #204 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от Ugar Посмотреть сообщение
А чё индикаторы с буферами ещё не писал? Попробуй разобрать всё что я изменил в функции start.
Код:
int start()
{
double MA1, MA11, MA2, MA22;
int counted_bars=IndicatorCounted();
int pos = Bars-counted_bars; //Это проверка последнего бара
for(int i=1; i<pos; i++) //Цикл   1)начинаем с 1 2)цикл заканчивается когда мы подсчитали все бары 3)добавляем при следуещем кругу 1-у к і
{
MA1 = iMA(Symbol(),0,MA_fast_period,0,MODE_LWMA,PRICE_CLOSE,i //Это тот бар который проверяем);
MA11 = iMA(Symbol(),0,MA_fast_period,0,MODE_LWMA,PRICE_CLOSE,i+1);
MA2 = iMA(Symbol(),0,MA_slow_period,0,MODE_LWMA,PRICE_CLOSE,i);
MA22 = iMA(Symbol(),0,MA_slow_period,0,MODE_LWMA,PRICE_CLOSE,i+1);
if(MA11<MA22 && MA1>MA2) ExtMapBuffer1[i]//Это тот бар где выполнилось условие = Low[i]//Это ??? Вот этого понять не могу. Почему здесь Low High а не расчёты какие то; 
if(MA11>MA22 && MA1<MA2) ExtMapBuffer2[i] = High[i]; 
}
return;
}  
Не писал. И с for туговато.

ExtMapBuffer2[i]=High. Так в []надо писать какой бар, а после = где рисовать?

Последний раз редактировалось eevviill; 16.04.2012 в 18:11.
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 16.04.2012, 19:00   #205 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,252
Репутация: 1963
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 347
Поблагодарили 1,892 раз(а) в 1,069 сообщениях
Поинты: 1270
Отправить сообщение для Ugar с помощью ICQ
if(MA11<MA22 && MA1>MA2) ExtMapBuffer1[i] = Low[i];
В ячейку буфера [i] пишется значение Low этого же бара. Low[i]
В итоге на баре где произошло пересечение быстрой МА вверх будет поставлена стрелка на Low этого бара.

ps for надо осваивать. Без неё в индикаторы соваться не стоит. Да и в советниках её предпочтительней использовать чем while.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!

Последний раз редактировалось Ugar; 16.04.2012 в 19:06.
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (16.04.2012)
Старый 16.04.2012, 19:31   #206 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от Ugar Посмотреть сообщение
if(MA11<MA22 && MA1>MA2) ExtMapBuffer1[i] = Low[i];
В ячейку буфера [i] пишется значение Low этого же бара. Low[i]
В итоге на баре где произошло пересечение быстрой МА вверх будет поставлена стрелка на Low этого бара.

ps for надо осваивать. Без неё в индикаторы соваться не стоит. Да и в советниках её предпочтительней использовать чем while.
Большое спасибо.
Но вот если такая ситуация. Если допустим мне не надо чтобы по всей истории котировок на графике рисовались стрелки. А надо только чтобы свежие стрелки рисовались. Это будет так
if(MA11<MA22 && MA1>MA2) ExtMapBuffer1[1] = Low[1] или нет?
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 16.04.2012, 20:13   #207 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,252
Репутация: 1963
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 347
Поблагодарили 1,892 раз(а) в 1,069 сообщениях
Поинты: 1270
Отправить сообщение для Ugar с помощью ICQ
Сообщение от eevviill Посмотреть сообщение
Большое спасибо.
Но вот если такая ситуация. Если допустим мне не надо чтобы по всей истории котировок на графике рисовались стрелки. А надо только чтобы свежие стрелки рисовались. Это будет так
if(MA11<MA22 && MA1>MA2) ExtMapBuffer1[1] = Low[1] или нет?
Тогда цикл не нужен. И массивы то же смысла не имеют. Стрелку лучше ставить как объект.
Странный индикатор. Для чего такой может понадобиться, не понимаю.
Код:
#property copyright "eevviill"
#property link      "itisallillusion@gmail.com"
#property indicator_chart_window

 

extern int MA_fast_period = 40;
extern int MA_slow_period = 60;
 
int init()
  {
 
   return;
  }
 
 
int start()
  {
//Здесь удалить объкт стрелку если есть 

double MA1 = iMA(Symbol(),0,MA_fast_period,0,MODE_LWMA,PRICE_CLOSE,1);
double MA11 = iMA(Symbol(),0,MA_fast_period,0,MODE_LWMA,PRICE_CLOSE,2);
double MA2 = iMA(Symbol(),0,MA_slow_period,0,MODE_LWMA,PRICE_CLOSE,1);
double MA22 = iMA(Symbol(),0,MA_slow_period,0,MODE_LWMA,PRICE_CLOSE,2);
if(MA11<MA22 && MA1>MA2) 
{
//Здесь установка объекта стрелка покупки на Low[1] и Time[1]
}
if(MA11>MA22 && MA1<MA2)
{
//Здесь установка объекта стрелка на продажу на High[1] и Time[1]
}
 
 
   return;
  }

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!

Последний раз редактировалось Ugar; 16.04.2012 в 20:20.
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (16.04.2012)
Старый 16.04.2012, 20:22   #208 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от Ugar Посмотреть сообщение
Тогда цикл не нужен. И массивы то же смысла не имеют. Стрелку лучше ставить как объект.
Странный индикатор. Для чего такой может понадобиться, не понимаю.
Я же например написал. И тем более он же ничем не будет отличатся от буферного индикатора, кроме того что его не видно на истории.

Тогда возникает ещё один вопрос. Если сделать индикаторные стрелки через объект, то его уже через iCustom() не прицепишь.
А как прицепить в таком случае? Через ObjectFind?
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 17.04.2012, 06:59   #209 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,252
Репутация: 1963
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 347
Поблагодарили 1,892 раз(а) в 1,069 сообщениях
Поинты: 1270
Отправить сообщение для Ugar с помощью ICQ
Сообщение от eevviill Посмотреть сообщение
Я же например написал. И тем более он же ничем не будет отличатся от буферного индикатора, кроме того что его не видно на истории.
Если использовать буфера даже без цикла, то на истории он не будет рисовать только при запуске. В работе стрелки будут оставаться и уходить в историю.
Сообщение от eevviill Посмотреть сообщение
Тогда возникает ещё один вопрос. Если сделать индикаторные стрелки через объект, то его уже через iCustom() не прицепишь.
А как прицепить в таком случае? Через ObjectFind?
Через поиск объекта конечно можно, но тестироваться будет только в визуальном режиме, так как в остальных режимах объекты не работают вообще. Оптимизация в тестере будет невозможна.

Зачем такой индикатор нужен, не понятно. Так же не понятно, зачем его цеплять к советнику. Не проще ли вызвать эти МА в коде советника, работать будет гораздо быстрее.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (17.04.2012)
Старый 17.04.2012, 07:20   #210 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от Ugar Посмотреть сообщение
Если использовать буфера даже без цикла, то на истории он не будет рисовать только при запуске. В работе стрелки будут оставаться и уходить в историю.

Через поиск объекта конечно можно, но тестироваться будет только в визуальном режиме, так как в остальных режимах объекты не работают вообще. Оптимизация в тестере будет невозможна.

Зачем такой индикатор нужен, не понятно. Так же не понятно, зачем его цеплять к советнику. Не проще ли вызвать эти МА в коде советника, работать будет гораздо быстрее.
Вы меня не правильно поняли. У меня нет конкретной задачи. Я хочу понять структуру написания и её ньюансы.

Спасибо. Всё понял. Только ещё один вопрос.
Я написал в индикаторе
Alert(MapBuffer1[1]).
Если есть пересечение вверх на предыдущем баре, то выдаётся сообщение Цена где нарисовалась стрелка. А если нет пересечения, то там пишется каких то вроди бы 8 чисел. Что за числа?(цифры)
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 17.04.2012, 07:36   #211 (permalink)
◅ ♛ ♠ ♣ ♥ ♦ ♛ ▻
 
Аватар для tommy27
 
Регистрация: 16.10.2011
Адрес: Новосибирск
Сообщений: 1,054
Репутация: 3189
tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27
Сказал(а) спасибо: 2,326
Поблагодарили 3,184 раз(а) в 875 сообщениях
Поинты: 570
Отправить сообщение для tommy27 с помощью Skype™
Добрый день, нужна помощь. Есть определённый бар и цена его закрытия. Как реализовать следущий момент: сова должна открывать позицию после того как разница между текущей ценой и ценой закрытия пределённого бара станет больше заданной. У меня получается только вычислять разницу между ценой закрытия заданного и ценой закрытия текущего( а не с ценой в данный момент времени - чего и хочу добиться).

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
puretrade.ru
tommy27 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 17.04.2012, 08:00   #212 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,252
Репутация: 1963
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 347
Поблагодарили 1,892 раз(а) в 1,069 сообщениях
Поинты: 1270
Отправить сообщение для Ugar с помощью ICQ
Сообщение от eevviill Посмотреть сообщение
Вы меня не правильно поняли. У меня нет конкретной задачи. Я хочу понять структуру написания и её ньюансы.

Спасибо. Всё понял. Только ещё один вопрос.
Я написал в индикаторе
Alert(MapBuffer1[1]).
Если есть пересечение вверх на предыдущем баре, то выдаётся сообщение Цена где нарисовалась стрелка. А если нет пересечения, то там пишется каких то вроди бы 8 чисел. Что за числа?(цифры)
EMPTY_VALUE 0x7FFFFFFF Значение по умолчанию, указатель пустого значения. Используется в пользовательских индикаторах.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (17.04.2012)
Старый 17.04.2012, 08:07   #213 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,252
Репутация: 1963
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 347
Поблагодарили 1,892 раз(а) в 1,069 сообщениях
Поинты: 1270
Отправить сообщение для Ugar с помощью ICQ
Сообщение от tommy27 Посмотреть сообщение
Добрый день, нужна помощь. Есть определённый бар и цена его закрытия. Как реализовать следущий момент: сова должна открывать позицию после того как разница между текущей ценой и ценой закрытия пределённого бара станет больше заданной. У меня получается только вычислять разницу между ценой закрытия заданного и ценой закрытия текущего( а не с ценой в данный момент времени - чего и хочу добиться).
А какая разница? Цена закрытия текущего бара и есть текущая цена Bid.
if(MathAbs(Close[1]-Close[0])>заданное)

То же самое
if(MathAbs(Close[1]-Bid)>заданное)

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
eevviill (17.04.2012), tommy27 (17.04.2012)
Старый 17.04.2012, 08:11   #214 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от tommy27 Посмотреть сообщение
Добрый день, нужна помощь. Есть определённый бар и цена его закрытия. Как реализовать следущий момент: сова должна открывать позицию после того как разница между текущей ценой и ценой закрытия пределённого бара станет больше заданной. У меня получается только вычислять разницу между ценой закрытия заданного и ценой закрытия текущего( а не с ценой в данный момент времени - чего и хочу добиться).
Думаю так.
PHP код:
int level 12//количество пунктов
if(Close[8]-Close[0]>level*Pointто что то делаем 
Ха ха. Вот это написал. Close[0]. Да, точно. Bid надо.

Последний раз редактировалось eevviill; 17.04.2012 в 08:14.
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
tommy27 (17.04.2012)
Старый 17.04.2012, 08:23   #215 (permalink)
◅ ♛ ♠ ♣ ♥ ♦ ♛ ▻
 
Аватар для tommy27
 
Регистрация: 16.10.2011
Адрес: Новосибирск
Сообщений: 1,054
Репутация: 3189
tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27
Сказал(а) спасибо: 2,326
Поблагодарили 3,184 раз(а) в 875 сообщениях
Поинты: 570
Отправить сообщение для tommy27 с помощью Skype™
Сообщение от Ugar Посмотреть сообщение
А какая разница? Цена закрытия текущего бара и есть текущая цена Bid.
if(MathAbs(Close[1]-Close[0])>заданное)

То же самое
if(MathAbs(Close[1]-Bid)>заданное)
Вот не получается почему то на строчки кода:
Код:
R = MathAbs(Close[1]-Close[0]);
R1 = MathAbs(Close[1]-Bid);
Print ("Raznica= ",R,R1);
журнал отзывается стабильными и постоянными "00"

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
puretrade.ru
tommy27 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 17.04.2012, 08:38   #216 (permalink)
◅ ♛ ♠ ♣ ♥ ♦ ♛ ▻
 
Аватар для tommy27
 
Регистрация: 16.10.2011
Адрес: Новосибирск
Сообщений: 1,054
Репутация: 3189
tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27
Сказал(а) спасибо: 2,326
Поблагодарили 3,184 раз(а) в 875 сообщениях
Поинты: 570
Отправить сообщение для tommy27 с помощью Skype™
У меня считает так:
Код:
StartPrice1 = Close[0];
Delta1 = MathRound ((MathAbs (Price0 - StartPrice1))*10000);
Comment (Delta1);
Print ("Raznica= ",Delta1);
и результат обновляется только при появлении нового бара а хотелось бы видеть и фиксировать изменения на каждом тике.

alsu с мкл4 посоветовал использовать iClose(0,0,0), но результат тот же -обновляется только при появлении нового бара.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
puretrade.ru

Последний раз редактировалось tommy27; 17.04.2012 в 08:55.
tommy27 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 17.04.2012, 09:11   #217 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от tommy27 Посмотреть сообщение
У меня считает так:
Код:
StartPrice1 = Close[0];
Delta1 = MathRound ((MathAbs (Price0 - StartPrice1))*10000);
Comment (Delta1);
Print ("Raznica= ",Delta1);
и результат обновляется только при появлении нового бара а хотелось бы видеть и фиксировать изменения на каждом тике.

alsu с мкл4 посоветовал использовать iClose(0,0,0), но результат тот же -обновляется только при появлении нового бара.
PHP код:
extern int level 4
 
int start()
  {
 
double Price1 Bid//текущая цена
double Price2 Close[8]; //цена закрытия выбраного бара
double level1 level*Point//уровень когда надо что то делать
double Delta1 MathAbs(Close[8]-Bid); //разница между той ценой и текущей
if(Delta1>level1)Comment (Delta1);
if(
Delta1>level1)Print ("Raznica= ",Delta1);
if(
Delta1>level1)Alert (Delta1);
 
   return(
0);
  } 
Надо было хотя бы мои уроки не прогуливать

P.S. Так лучше. Чувствую потом будут вопросы когда надо сел, а когда бай...

Последний раз редактировалось eevviill; 17.04.2012 в 09:31.
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 17.04.2012, 09:15   #218 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,252
Репутация: 1963
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 347
Поблагодарили 1,892 раз(а) в 1,069 сообщениях
Поинты: 1270
Отправить сообщение для Ugar с помощью ICQ
Сообщение от tommy27 Посмотреть сообщение
У меня считает так:
Код:
StartPrice1 = Close[0];
Delta1 = MathRound ((MathAbs (Price0 - StartPrice1))*10000);
Comment (Delta1);
Print ("Raznica= ",Delta1);
и результат обновляется только при появлении нового бара а хотелось бы видеть и фиксировать изменения на каждом тике.

alsu с мкл4 посоветовал использовать iClose(0,0,0), но результат тот же -обновляется только при появлении нового бара.
Весь код покажи. Где объявлены переменные, где присвоено значение Price0???

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
eevviill (17.04.2012), tommy27 (17.04.2012)
Старый 17.04.2012, 09:35   #219 (permalink)
◅ ♛ ♠ ♣ ♥ ♦ ♛ ▻
 
Аватар для tommy27
 
Регистрация: 16.10.2011
Адрес: Новосибирск
Сообщений: 1,054
Репутация: 3189
tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27
Сказал(а) спасибо: 2,326
Поблагодарили 3,184 раз(а) в 875 сообщениях
Поинты: 570
Отправить сообщение для tommy27 с помощью Skype™
Сообщение от Ugar Посмотреть сообщение
Весь код покажи. Где объявлены переменные, где присвоено значение Price0???
Да причем тут весь код то ???
Вопрос то в том что
Цитата:
результат обновляется только при появлении нового бара а хотелось бы видеть и фиксировать изменения на каждом тике.
Пусть будут вот так объявлены переменные и присвоено значение Price0:
Код:
double 
       StartPrice1,
       Delta1,
       Price00;
...
Price00 = 5000;
StartPrice1 =  iClose(0,0,0);
//StartPrice1 = Close[0];
Delta1 = MathAbs (Price00 - StartPrice1);
//if (Delta1>1000) Delta1=0;
Comment (Delta1);
Print ("Raznica= ",Delta1);
И что?

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
puretrade.ru
tommy27 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 17.04.2012, 09:52   #220 (permalink)
◅ ♛ ♠ ♣ ♥ ♦ ♛ ▻
 
Аватар для tommy27
 
Регистрация: 16.10.2011
Адрес: Новосибирск
Сообщений: 1,054
Репутация: 3189
tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27 tommy27
Сказал(а) спасибо: 2,326
Поблагодарили 3,184 раз(а) в 875 сообщениях
Поинты: 570
Отправить сообщение для tommy27 с помощью Skype™
Сообщение от eevviill Посмотреть сообщение
Надо было хотя бы мои уроки не прогуливать

P.S. Так лучше. Чувствую потом будут вопросы когда надо сел, а когда бай...
Нет, не лучше так, так это тот же ... только вид сбоку ))) а вопрос как был так и остался: результат обновляется только при появлении нового бара а хотелось бы видеть и фиксировать изменения на каждом тике.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
puretrade.ru
tommy27 вне форума   Ответить с цитированиемОтветить с цитированием  
Ответ

Метки
mql4, mql4 помощь, вопросы mql4


Опции темы

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

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



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


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