У вас не стоит Flash Player
Настройки
#3332 - Wed Mar 24 2010 12:03 PM Ошибка: cannot convert from 'double' to 'int'
ast Offline
addict

Registered: Tue Mar 23 2010
Записи: 415
Пытаюсь указать через переменную порядковый номер предыдущего бара (в формуле):
Close[i - ChangeBars]

ChangeBars - соответственно константа.

Появляется ошибка:

\TSLab\temp\code25.cs(86,20) : error CS1503: Argument '1': cannot convert from 'double' to 'int'

\TSLab\temp\code25.cs(86,14) : error CS1502: The best overloaded method match for 'System.Collections.Generic.IList<double>.this[int]' has some invalid arguments

Смысл ошибки понятен. Но как конвертировать double в int? Есть какой-то специальный конвертор?
Может быть, по умолчанию вообще сделать, чтобы в данном случае происходило автоматическое преобразование?

Наверх
#3338 - Wed Mar 24 2010 04:20 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: ast]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
Как я понимаю ChangeBars - это константа. Используйте такую запись:
"Close[i - (int)ChangeBars]"

Наверх
#3340 - Wed Mar 24 2010 04:39 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: Nektodron]
ast Offline
addict

Registered: Tue Mar 23 2010
Записи: 415
Спасибо, так работает.

Наверх
#86479 - Fri Jun 26 2020 04:40 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: ast]
aaTrade Offline
stranger

Registered: Thu Jun 25 2020
Записи: 7
У меня такая же ошибка, cannot convert from 'double' to 'int'.
Пытаюсь указать номер бара close[i+BarNumber].

И функция (int) не работает close[i+(int)BarNumber]. - выдает ошибку: Не найден блок с именем 'Int'.

Так же не работает close[i+Convert.ToInt32(BarNumber)]
- ошибка: Не найден блок с именем 'Convert.ToInt32'.

Кто может помочь ?

Наверх
#86486 - Thu Jul 02 2020 11:47 AM Re: Ошибка: cannot convert from 'double' to 'int' [Re: aaTrade]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8139
i+ это заглядывание в будущее.
Так использовать нельзя.
Только i-

Наверх
#86491 - Mon Jul 06 2020 11:34 AM Re: Ошибка: cannot convert from 'double' to 'int' [Re: ViL]
aaTrade Offline
stranger

Registered: Thu Jun 25 2020
Записи: 7
Согласен. Но проблема в другом.
cannot convert from 'double' to 'int'
Ни как не хочет конвертировать ! Помогите pls

Наверх
#86493 - Mon Jul 06 2020 04:17 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: aaTrade]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8139
в блоке BarNumber
попробуйте стандартным NET методом

Math.Round(Выражение)

И в результирующей формуле уже просто

close[i-BarNumber]

При этом "Начинать С" поставить вручную, заведомо больше BarNumber

Наверх
#86500 - Thu Jul 09 2020 11:47 AM Re: Ошибка: cannot convert from 'double' to 'int' [Re: ViL]
aaTrade Offline
stranger

Registered: Thu Jun 25 2020
Записи: 7
Тоже не работает....
close[i-i+BarNumber]
cannot convert from 'double' to 'int'

Хочу всего лишь указать номер определенного бара
Как еще это можно сделать?

Наверх
#86502 - Thu Jul 09 2020 06:07 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: aaTrade]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8139
а как i-i ? это 0 так работать не будет

Наверх
#86512 - Fri Jul 17 2020 11:59 AM Re: Ошибка: cannot convert from 'double' to 'int' [Re: ViL]
aaTrade Offline
stranger

Registered: Thu Jun 25 2020
Записи: 7
А как тогда указать номер бара от начала, а не от конца ? Например 20-й бар ?
И как все таки перевести с dbl то int??? Math.Round не помогает....

Наверх
#86515 - Mon Jul 20 2020 04:50 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: aaTrade]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8139
Close[-i]
Это будет закрытие первого бара.
convert from 'double' to 'int' не вижу что делаете, сложно сказать.

Наверх
#86540 - Tue Aug 18 2020 02:32 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: ViL]
aaTrade Offline
stranger

Registered: Thu Jun 25 2020
Записи: 7
Все очень просто.Я всего лишь хочу найти/указать через номер бара который double значение MACD. Проблема, как я и писал выше, в конвертации с dbl то int. MACD[i-Convert.ToInt32(BarNumber)]
Тслаб не находит функцию Convert и Int. - ошибка: Не найден блок с именем 'Convert.ToInt32'.
В чем проблема?

Наверх
#86542 - Tue Aug 18 2020 04:56 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: aaTrade]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8139
В отдельной Формула написать Math.Round(Выражение)
Во второй формуле уже пишем
MACD[i-Формула1]

Наверх
#86543 - Tue Aug 18 2020 10:45 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: ViL]
aaTrade Offline
stranger

Registered: Thu Jun 25 2020
Записи: 7
Math.Round(Выражение) Тоже не работает.... Есть другой способ?

Наверх
#86544 - Wed Aug 19 2020 07:08 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: aaTrade]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8139
Посмотрите пожалуйста:




Attachments
Round.tscript (119 downloads)
iii.png (266 downloads)


Наверх
#86547 - Fri Aug 21 2020 04:25 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: ViL]
aaTrade Offline
stranger

Registered: Thu Jun 25 2020
Записи: 7
PexlBAR это номер бара (dbl) от начала,а не с конца, поэтому использую i-i+bar.
тслаб выдает ошыбку и не находит функцыи int() и ConvertToInt


Attachments
Cap1.PNG (89 downloads)


Наверх
#86548 - Fri Aug 21 2020 07:04 PM Re: Ошибка: cannot convert from 'double' to 'int' [Re: aaTrade]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8139
Я писал вроде бы выше. Так работать не будет.
Значение с первого бара это просто [-i] получить можно, посчитать так не получиться.

Наверх


Moderator:  ViL, sar