Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Я хочу иметь возможность контролировать исторические данные, которые я использую, чтобы я мог повторять тесты (Strategy Tester) в контролируемых условиях.
Какие контролируемые условия?
Спасибо
Какие контролируемые условия?
Спасибо.
Условия, которые выбираю я, а не те, которые выбирает мой брокер. Как еще вы предлагаете тестировать? Случайный набор условий для каждого теста? но давайте не будем отходить от темы.
Понятно.
Спасибо
Нет. Если бы вы прочитали мою ссылку и/или ссылку RaptorUK, это было бы вам более понятно. Если нет, прочитайте еще раз :-D
1.000000000006551e-005 - это просто другое обозначение для 0.00001000000000006551.
Здравствуйте, angevoyageur,
1.000000000006551e-005
0.00001000000000006551
Десятичная дробь второго дубля сдвигается влево пять раз НО ;) не может быть возвращена в тестере в этом формате, потому что дубли возвращают максимальное значение шестнадцать цифр (значащих цифр) справа от десятичной дроби.
Модератор
1651
Здравствуйте сообщество MQL5,
https://www.mql5.com/en/docs/common/comment
"Данные типа double выводятся с точностью до 16 цифр после десятичной точки и могут быть выведены как в традиционном, так и в научном формате, в зависимости от того, какая нотация будет более компактной. Данные типа float выводятся с точностью до 5 цифр после запятой. Для вывода вещественных чисел с другой точностью или в заданном формате используйте функцию DoubleToString()".
Представление цены USDJPY в 98.370 - это данные типа float (выводятся в 5 разряде после десятичной).
Представление цены USDJPY в -0.001999999999995339 - это данные типа double, традиционного формата (выводятся до 16 цифр после запятой).
Почему double -0.001999999999533[9] возвращает 18-ю цифру после запятой, если вывод double осуществляется только до 16 цифр после запятой?
Спасибо
Цены всегда двойные, 98.370 - это двойка. Есть 16 значащих цифр. Нули не являются значащими.
Если нули не существенны, то почему в тестере нельзя было вернутьзначение 0.00001000000000006551 вместо 1.000000000006551e-005? Я бы предпочел вычисления в формате 0.00001000000000006551 !
Спасибо
Если нули не являются значимыми, почему в тестере нельзя было вернутьзначение 0.00001000000000006551 вместо 1.000000000006551e-005? Я бы предпочел вычисления в формате 0.00001000000000006551 !
Число с плавающей точкой (double) всегда хранится внутри в этом формате... 1.000000000006551e-005, вы прочитали и поняли информацию по приведенным ссылкам?
Отсюда:числа с плавающей точкой
"Плавающее число IEEE-754 (4 байта) или двойное число (8 байт) состоит из трех компонентов (существует также аналогичный 96-битный формат с расширенной точностью IEEE-854): знаковый бит, определяющий, является ли число положительным или отрицательным, экспонента, определяющая порядок величины, и мантисса, определяющая фактические цифры числа. На примере плавающих чисел одинарной точности можно увидеть следующее расположение битов:"
3 части
Если вы хотите видеть 0.00001000000000xyz, используйте DoubleToStr(), чтобы отформатировать вывод по своему вкусу.
Число с плавающей точкой (double) всегда хранится внутри в этом формате... 1.000000000006551e-005, Вы прочитали и поняли информацию по приведенным ссылкам?
Отсюда:числа с плавающей точкой
"Плавающее число IEEE-754 (4 байта) или двойное число (8 байт) состоит из трех компонентов (существует также аналогичный 96-битный формат с расширенной точностью IEEE-854): знаковый бит, определяющий, является ли число положительным или отрицательным, экспонента, определяющая порядок величины, и мантисса, определяющая фактические цифры числа. На примере плавающих чисел одинарной точности можно увидеть следующее расположение битов:"
3 части
Если вы хотите видеть 0.00001000000000xyz, используйте DoubleToStr(), чтобы отформатировать вывод по своему вкусу.
Да, я прочитал все ваши ссылки и нашел их полезными, еще раз спасибо за их предоставление. Мне больше нравится использовать DoubleToString и выбирать в качестве второго параметра DoubleToString предпоследнее значение двойки (пример: CADJPY 95.9[5]9). Я не думаю, что эту проблему "can price!=price" слишком сложно решить! Что вы скажете по этому поводу?
Спасибо
Да, я прочитал все ваши ссылки и нашел их полезными, еще раз спасибо за их предоставление. Мне бы хотелось использовать DoubleToString и выбрать значение double на предпоследнем месте (пример:CADJPY 95.9[5]9) в качестве второго параметра DoubleToString. Я не думаю, что эту проблему "can price!=price" слишком сложно решить! Что вы скажете на это?
То есть вы имеете в виду что-то вроде этого?
Can price != price - это другая, но немного связанная проблема. Ее нельзя решить, сначала нужно понять, в чем проблема... а потом ее обойти.
То есть вы имеете в виду что-то вроде этого?
Может ли цена != цена - это другая, но немного связанная проблема. Ее нельзя решить, сначала нужно понять, в чем проблема... затем работать над ней.
Каковы ваши мысли по поводу того, что это за проблема "can price != price"?
Спасибо.
WhooDoo22:
...
Цены всегда двойные, 98.370 - двойная. Есть 16 значащих цифр. Нули не являются значащими.
Если нули не существенны, то почему в тестере нельзя было вернуть значение 0.00001000000000006551 вместо 1.000000000006551e-005? Я бы предпочел вычисления в формате 0.00001000000000006551 !
Спасибо
Это может быть, это только выбор форматирования выходного значения.
Именно потому, что нули не являются значимыми.
Да, я прочитал все ваши ссылки и нашел их полезными, еще раз спасибо за их предоставление. Мне больше нравится использовать DoubleToString и выбирать в качестве второго параметра DoubleToString предпоследнее значение двойки (пример:CADJPY 95.9[5]9). Я не думаю, что эту проблему "can price!=price" слишком сложно решить! Что вы скажете по этому поводу?
Спасибо.
Это может быть, это только выбор форматирования выходного значения.
Именно потому, что нули не являются значимыми.
Извините, но я не понимаю этого предложения."Извините, но я не понимаю этого предложения".
Спасибо