Терминал > Проблема с вводом нецелых параметров индикаторов
-
- Сообщения: 535
- Зарегистрирован: 11 ноя 2018, 17:11
- Благодарил (а): 21 раз
- Поблагодарили: 92 раза
Проблема с вводом нецелых параметров индикаторов
Привет всем.
Попытки ввести нецелое значение параметра в индикаторе безуспешны.
После закрытия панели настройки индикатора и открытия ее заново введенное значение округляется до целого (или просто сбрасывается в дефолт? Сейчас терминала нет под рукой, точно не помню). Исключение составляет дефолтное значение параметра: если нецелое значение равно дефолтному, то оно сохраняется (и, наверное, даже работает).
Проверено как со встроенными, так и с пользовательскими индикаторами, в том числе в самой последней версии.
Эта странность не позволяет ввести оптимизированное нецелое (double) значение параметра.
Это только я такой несчастливый или у всех так?
Попытки ввести нецелое значение параметра в индикаторе безуспешны.
После закрытия панели настройки индикатора и открытия ее заново введенное значение округляется до целого (или просто сбрасывается в дефолт? Сейчас терминала нет под рукой, точно не помню). Исключение составляет дефолтное значение параметра: если нецелое значение равно дефолтному, то оно сохраняется (и, наверное, даже работает).
Проверено как со встроенными, так и с пользовательскими индикаторами, в том числе в самой последней версии.
Эта странность не позволяет ввести оптимизированное нецелое (double) значение параметра.
Это только я такой несчастливый или у всех так?
- evge
- Администратор
- Сообщения: 1811
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 366 раз
- Контактная информация:
Re: Проблема с вводом нецелых параметров индикаторов
В той версии что у меня проверил, всё сохраняется.
В другой версии на другой машине тоже сохранятеся.
На одной из них перезапустил терминал и значение с точкой осталось на месте
В другой версии на другой машине тоже сохранятеся.
На одной из них перезапустил терминал и значение с точкой осталось на месте
никогда такого не было и вот опять
-
- Сообщения: 535
- Зарегистрирован: 11 ноя 2018, 17:11
- Благодарил (а): 21 раз
- Поблагодарили: 92 раза
Re: Проблема с вводом нецелых параметров индикаторов
Привет, evge.
Спасибо за отклик.
Нда, странно...
Вечером дома соберу и пришлю подробную информацию (пример кода, скриншоты). Может что неправильно делаю, хотя всё вроде по уставу ...
Спасибо за отклик.
evge писал(а):В той версии что у меня проверил, всё сохраняется.
Нда, странно...
Вечером дома соберу и пришлю подробную информацию (пример кода, скриншоты). Может что неправильно делаю, хотя всё вроде по уставу ...
-
- Сообщения: 535
- Зарегистрирован: 11 ноя 2018, 17:11
- Благодарил (а): 21 раз
- Поблагодарили: 92 раза
Re: Проблема с вводом нецелых параметров индикаторов
Ну вот, как обещал.
Test.script
Исходно (дефолтное значение 4.0):
Настройка (новое значение 4.5):
Результат (опять 4.0):
Если открыть настройку - там ровно 4.
В чем проблема ?..
Test.script
Код: Выделить всё
function Initialize()
{
IndicatorName = "Test";
PriceStudy = true;
AddInput("Input", Inputs.Candle);
AddParameter("N", 4.0, "Dummy param");
AddSeries("Test", DrawAs.Line, Color.Black);
}
function Evaluate()
{
Test=N;
}
Исходно (дефолтное значение 4.0):
Настройка (новое значение 4.5):
Результат (опять 4.0):
Если открыть настройку - там ровно 4.
В чем проблема ?..
- evge
- Администратор
- Сообщения: 1811
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 366 раз
- Контактная информация:
Re: Проблема с вводом нецелых параметров индикаторов
В индикаторе, проверил, в настройках всё сохраняется. Перезапускал терминал после изменения на 4.5.
Речь только о том что на графике округляет?
Речь только о том что на графике округляет?
никогда такого не было и вот опять
-
- Сообщения: 535
- Зарегистрирован: 11 ноя 2018, 17:11
- Благодарил (а): 21 раз
- Поблагодарили: 92 раза
Re: Проблема с вводом нецелых параметров индикаторов
> В индикаторе, проверил, в настройках всё сохраняется.
У меня стабильно то ли округляет, то ли к дефолту кидает (надо дополнительно проверить, т.к. приведенные тестовые значения 4.5->4 могут получаться либо путем отброса дробной части, либо возвратом к дефолту).
> Речь только о том что на графике округляет?
Надо будет для порядка проверить логом (писать значение N в лог), но, кажется, что и в процессе вычислений N уже неправильное.
Да и сброс в целое при переоткрытии настройки индикатора тоже неприемлемая вещь.
У меня стабильно то ли округляет, то ли к дефолту кидает (надо дополнительно проверить, т.к. приведенные тестовые значения 4.5->4 могут получаться либо путем отброса дробной части, либо возвратом к дефолту).
> Речь только о том что на графике округляет?
Надо будет для порядка проверить логом (писать значение N в лог), но, кажется, что и в процессе вычислений N уже неправильное.
Да и сброс в целое при переоткрытии настройки индикатора тоже неприемлемая вещь.
- evge
- Администратор
- Сообщения: 1811
- Зарегистрирован: 04 фев 2016, 09:46
- Откуда: Млечный путь, планета Земля
- Благодарил (а): 83 раза
- Поблагодарили: 366 раз
- Контактная информация:
Re: Проблема с вводом нецелых параметров индикаторов
Может конечно в свежей версии добавили вкусности эти
Проверьте на предыдущих.
Новую удаляете, старую ставите.
При установленной новый не даст установить старее.
Проверьте на предыдущих.
Новую удаляете, старую ставите.
При установленной новый не даст установить старее.
никогда такого не было и вот опять
-
- Сообщения: 535
- Зарегистрирован: 11 ноя 2018, 17:11
- Благодарил (а): 21 раз
- Поблагодарили: 92 раза
Re: Проблема с вводом нецелых параметров индикаторов
> Может конечно в свежей версии добавили
Раньше была 1900, сейчас 2130.1557, поведение одинаковое.
Исправленный код (объявление параметра было на самом деле некорректным, хотя компилятор был доволен) + лог
Пробую вводить разные значения параметра, но в логе вижу только строки вида (с разными timestamp)
14.11 18:39:00 N: N n: 4.56 Test: 4.56
1) параметр сам по себе выводится как ... строка.
Странно, ведь это же может быть только число (других типов, кроме чисел, в качестве параметров по док-ции не бывает)...
Как напечатать параметр как число (кроме переприсвоения)?..
2) в области цен последнее значение индикатора выводится с одним знаком, хотя значения серии Input - с двумя знаками.
3) что ни вводи при настройке, в логе только дефолтное значение, несмотря на то, что на экране (до закрытия окна настройки) в окошке висит мой ввод (например, 200.56). После переоткрытия окна настройки значение опять выводится только дефолтное.
Что за ботва...
Система Win10, если что.
Раньше была 1900, сейчас 2130.1557, поведение одинаковое.
Исправленный код (объявление параметра было на самом деле некорректным, хотя компилятор был доволен) + лог
Код: Выделить всё
function Initialize()
{
IndicatorName = "Test";
PriceStudy = true;
AddInput("Input", Inputs.Candle);
AddParameter("N", 4.56);
AddSeries("Test", DrawAs.Line, Color.Black);
}
function Evaluate()
{
double n=N;
Test=N;
string Log="D:\\ADdebug\\"+IndicatorName+"("+Input.Name+").txt";
WriteLine(Log, String.Format("{0:dd/MM} {1} N: {2} n: {3} Test: {4}", BarDate(), BarTime(), N, n, Test[0]));
}
Пробую вводить разные значения параметра, но в логе вижу только строки вида (с разными timestamp)
14.11 18:39:00 N: N n: 4.56 Test: 4.56
1) параметр сам по себе выводится как ... строка.
Странно, ведь это же может быть только число (других типов, кроме чисел, в качестве параметров по док-ции не бывает)...
Как напечатать параметр как число (кроме переприсвоения)?..
2) в области цен последнее значение индикатора выводится с одним знаком, хотя значения серии Input - с двумя знаками.
3) что ни вводи при настройке, в логе только дефолтное значение, несмотря на то, что на экране (до закрытия окна настройки) в окошке висит мой ввод (например, 200.56). После переоткрытия окна настройки значение опять выводится только дефолтное.
Что за ботва...
Система Win10, если что.
-
- Сообщения: 535
- Зарегистрирован: 11 ноя 2018, 17:11
- Благодарил (а): 21 раз
- Поблагодарили: 92 раза
Re: Проблема с вводом нецелых параметров индикаторов
Привет всем.
Большая просьба к общественности проверить этот глюк.
Вот evge пишет, что у него ничего подобного нет. А у вас?..
В том виде, как написан тест, он будет отрабатываться долго за счет большого вывода в лог "вычисляемых" значений. Терминал при этом выглядит замороженным. Таймстампы в логе показывают, по какому интервалу пересчитывается индикатор, что само по себе, мне кажется, полезно знать.
Большая просьба к общественности проверить этот глюк.
Вот evge пишет, что у него ничего подобного нет. А у вас?..
В том виде, как написан тест, он будет отрабатываться долго за счет большого вывода в лог "вычисляемых" значений. Терминал при этом выглядит замороженным. Таймстампы в логе показывают, по какому интервалу пересчитывается индикатор, что само по себе, мне кажется, полезно знать.
- Indigo-On
- Сообщения: 61
- Зарегистрирован: 28 ноя 2018, 18:44
- Откуда: Russia
- Благодарил (а): 25 раз
- Поблагодарили: 9 раз
Re: Проблема с вводом нецелых параметров индикаторов
BugsDigger писал(а):Привет всем.
Большая просьба к общественности проверить этот глюк.
Вот evge пишет, что у него ничего подобного нет. А у вас?..
В том виде, как написан тест, он будет отрабатываться долго за счет большого вывода в лог "вычисляемых" значений. Терминал при этом выглядит замороженным. Таймстампы в логе показывают, по какому интервалу пересчитывается индикатор, что само по себе, мне кажется, полезно знать.
Доброго утра.
Проверил у себя. Работает. При выводе на график зачем то отбрасывает не отображаемые символы.
Код для тестирования был такой:
Код: Выделить всё
function Initialize()
{
IndicatorName = "A"; // Задайте название индикатора и сохраните с данным именем
PriceStudy = false; // Рисовать в области цены (true – да, false – нет)
AddInput("Input", Inputs.Candle); // Input - входной ряд (Inputs.Price) или свечи (Inputs.Candle)
AddSeries("A", DrawAs.Line, Color.Red); // Задаем вид линии индикатора A
AddParameter("X", 20.333); // Задаем имя изменяемого параметра и его значение
AddVariable("Z", 10); // Задаем имя глобальной переменной и её значение
}
function Evaluate()
{
A = Z + X;
}
При использовании дефолтного значения =20.333:
При изменении значения на =127.9912:
Попробуйте предварительно перед экспериментами загрузить какой нибудь не измененный конфигурационный файл из комплекта поставки АД. Меню Конфигурация->Загрузить.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 26 гостей