Ошибки, баги, вопросы - страница 3270

 
Sunriser #:

Выходит, что максимум 63 параметра, я в шоке. Мне вот реально не хватило)


А я в шоке от того, что кто-то реально столько параметров пытается методу передать. Вы не запутаетесь в них? Больше 3-х параметров уже нехорошо. Если требуется передать много данных, то их надо упаковать во что-нибудь типа структуры, или объекта, или массива структур или объектов.
 
ruslan #:

эта ошибка во всех языках такая ??? 8 вместо 1 ?

Да, на всех языках.

Емкости точности у float недостаточно для точного хранения числа  123 456 788 и оно представляется приблизительно.

Об этом и компилятор предупреждает:

truncation of constant value

В финансовой математике float категорически не рекомендуется использовать. Скорости по сравнению с double по факту не дает, а потеря точности запредельная.

Разве что при переходе в нейросети при полностью осознаваемых последствиях и лимитах, float является вынужденной мерой исключительно из-за ограничений графических карт.

 
Renat Fatkhullin #:

Да, на всех языках.

Емкости точности у float недостаточно для точного хранения числа  123 456 788 и оно представляется приблизительно.

Об этом и компилятор предупреждает:

В финансовой математике float категорически не рекомендуется использовать. Скорости по сравнению с double по факту не дает, а потеря точности запредельная.

Разве что при переходе в нейросети при полностью осознаваемых последствиях и лимитах, float является вынужденной мерой исключительно из-за ограничений графических карт.

ну тоесть идет при расчетах накопление ошибки ???

 
Sergey Gridnev #:
А я в шоке от того, что кто-то реально столько параметров пытается методу передать. Вы не запутаетесь в них? Больше 3-х параметров уже нехорошо. Если требуется передать много данных, то их надо упаковать во что-нибудь типа структуры, или объекта, или массива структур или объектов.

А чем плохо больше 3х параметров?

 
Sunriser #:

А чем плохо больше 3х параметров?

Тем, что очень легко ошибиться в параметрах.
 
ruslan #:

ну тоесть идет при расчетах накопление ошибки ???

В общем да, но в данном частном случае идёт прямая потеря значения младших разрядов.

Грубо, для понимания: представим, что у нас есть система, которая может работать с тремя десятичными разрядами (мантиссы).

Число 999 будет представлено как 9.99 * 10²

1000 - как 1.00 * 10³

1001 - тоже как 1.00 * 10³

ибо разрядов всего три.

С float примерно так же, только разряды - двоичные.

 
ruslan #:

ну тоесть идет при расчетах накопление ошибки ???

Да, любые вычисления во float генерируют запредельные уровни погрешностей.  На любом языке, в любом случае.

Использование float допустимо только в тех осознанных случаях, где накопление ошибки не важно. Да и то, в небольших диапазонах значений.

Используйте double.

 
Renat Fatkhullin #:

Здравствуйте!

На форуме несколько раз поднимались вопросы, некоторые участники плюсовали, но ответа к сожалению от MQ не было. Могли бы ответить, планируете по ним работу или нет? Просто, чтобы не поднимать раз в месяц эти темы.

Вопрос 1.

Сейчас до отправки ордера у эксперта отсутствует возможность понять - разрешены торги или нет. Если на бирже праздник, планка по фьючерсам, дискретный аукцион по акциям - до отправки ордера узнать об этом невозможно.  Не планировали добавить новое свойства символа - перечисление со статусом торговой сессии (торговля разрешена/разрешены только пассивные заявки/торговля запрещена/....)? МОЕКС эту информацию транслирует.

Вопрос 2. 

На МОЕКС (из-за изменения способа расчета комиссий) добавился новый вид заявок - заявка с признаком только пассивная (BoC - Book-or-Cancel). Такая заявка, поданная в торговую систему, никогда не будет тейкерской. Т.е. или становится в стакан или не выставляется. Подробнее по ссылке выше есть описание. Планируют ли MQ добавить необходимые изменения для возможности использования этого признака?

 

Последнее время от билда к билду разные результаты в тестере стратегий. Кроме этого почему-то не хочет тестироваться NZD ни в каких сочетаниях, с другими инструментами такой проблемы нет. Просто не открывает сделки, и все, Но перед этим тестер при подготовке истории и тиков (синхронизации и т.д.) над этим инструментом подолгу зависает. Например для теста использовались пары: NZDUSD, NZDJPY, USDJPY в одновременной торговле.

Также вылезла еще одна проблема с использование опции реквот. До реквот качество истории 99%, при использовании реквот - качество стало 71%, но при переходе в тест без реквот качество осталось на уровне 71%, а не 99%.

 

Напишите кусок кода ,кому не трудно, как научить осциллятор по закрытию свечи отличать зелёные свечки от красных и чтобы если свеча зелёная то он рассчитывал её по одной формуле, а если красная то по другой.

Причина обращения: