Сложные проценты - обратная задача - страница 2

 


Нет, мне не рисовать нужно, а расчитать значения индикатора например на завтра.
Для этого на баре 0+1 я хочу подставлять свои цены и так прогнозировать ситуацию.

Скорее всего ценовый ряд нужно загнать в массив, и там уже двигать.

Но тогда придется кардинально переписывать мои пользовательские индикаторы.

Поэтому и спросил совета, может есть готовая функция?

 
А зачем цены в массив загонять, если они и так уже в предопределенных массивах? Чей-то не понимаю я тебя, голова уже не так варит, видно. Ты поконкретнее спроси - и народ к тебе потянется...
 
Aleksey24:


Нет, мне не рисовать нужно, а расчитать значения индикатора например на завтра.
Для этого на баре 0+1 я хочу подставлять свои цены и так прогнозировать ситуацию.

Скорее всего ценовый ряд нужно загнать в массив, и там уже двигать.

Но тогда придется кардинально переписывать мои пользовательские индикаторы.

Поэтому и спросил совета, может есть готовая функция?


Для какого бара прогноз расчитывается, в элемент буфера с этим же индексом и запоминать, а в init'e использовать SetIndexShift()
 

Буду пробовать, но кажется это не то.

 

Математики! Выручайте.

Или я отупел после куриной отбивной на обед, или в МТ глюк.


Print("Xa-Xa ",1/((2007-2002)+1));

Печатает:
Xa-Xa 0

Почему НОЛЬ?

Бред!

 
Aleksey24:

Математики! Выручайте.

Ошибка снова и снова - думать, что результат целочисленных операций будет вещественным. 1 / 6 = 0 , а не 0.1666666
Чтобы получить вещественный результат, надо хотя бы один из операндов сделать вещественным.

Например, Print("Не Xa-Xa ",1/((2007-2002)+1.0));
 

Бред!
Разобрался!

Вот так правильно:
Print("Xa-Xa ",1.0/((2007-2002)+1.0));
Xa-Xa 1.1667

Обработка типов данных могла быть поинтеллектуальнее!
 
Aleksey24:
Обработка типов данных могла быть поинтеллектуальнее!

Это же стандартное поведение всех Си-подобных языков.
 
Renat:
Aleksey24:
Обработка типов данных могла быть поинтеллектуальнее!

Это же стандартное поведение всех Си-подобных языков.

Теперь буду знать.

Я в начале 90-х слишком много написал кода на Clipper (15Mb исходного кода для того времени),
там была более сильная защита от "дурака" и например таких проблем не было.

И к стати присутствовата очень полезная функция одна для всех типов данных:
if(условие,значение1,значение2)

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

А функцию, которой тебе не хватает, очень легко написать самостоятельно и вызывать именно с таким синтаксисом, если тебе так хочется.
Причина обращения: