В общем у вас эта версия вообще не рабочая, утечка памяти где-то. Потому что, в 10:01 послано заявка на продажу, и ваша система отвечает скрипту продано, хотя заявка не исполнена, как такое может быть. Это после добавления CalcBuySell, начало такая фигня.
да ваш глюк, всё переустановил и всё равно то выскакивает, то нет.
Код дать не могу проверьте самостоятельно, в цикле запрос поставьте и в случае ошибки записывайте, а так если 7.2 имела аналогичную ошибку скорее всего это она и есть.
ну здесь увы, только если вы сами getParamEx(class_code, security, "BID") , а что у вас на 7.2 не работало, а на 7.14 работает? Просто мы 7.14 поверх 7.2 установили там, может имеет смысл переустановить ...
Suntor, я не маленький мальчик, сам знаю куда и зачем хожу, в ПО Квика есть серьёзный глюк и его нужно исправить, а не догатками тыка, а что если там на облачных фьючерсных БИДа нет вообще, каким боком мне это поможет, если то что должно не показывает - с карт торо что ли я должен правильное значение вытаскивать если его нет?
Ну вот сегодня косяк: из-за того что нельзя было получить аск вместо 117 204 купил по 118 052, разница - целая тысяча. Ребята, ну что это за ерунда. Мне нужно строчное решение!
Suntor, не я не против проверки, всё правильно говорите. просто у меня по другому обрабатывается, это глюк не пожизненный, надеюсь ребята сейчас решат.
тьфу извиняюсь торопясь писать нельзя :). getParamEx(class_code,security,"SEC_PRICE_STEP").param_value - всё равно 0 или правильное значение. Можно поставить проверку на result, но это ситуацию не изменит, так как понятно что 0 это уже ошибка. Поэтому жду отклика от Егора о решении этой проблемы.
з.ы. не разобрал до конца: getParamEx(class_code,security,"bid").param_value возвращает всё равно 0, чего не должно быть. Понятно что там проверку прописать нужно корректно, но суть проблемы это не меняет! бид возвращает с нулём.
Suntor, з.ы. он step = getParamEx(class_code, security, "SEC_PRICE_STEP") то возвращает правильное значение, то нет. В тех вариантах где оно правильный вариант отдаёт, получается что возвращаемая структура меняется? вместо {result == "1", param_value = "10"} отправляет {"10} - так что ли по вашему?
вот так полностью: price = tonumber(getParamEx(class_code,security,"bid").param_value+(11*getParamEx(class_code,security,"SEC_PRICE_STEP").param_value))
да, но во первых getParamEx(class_code,security,"bid").param_value может вернуть цену, а может вернуть 0. - это глюк.
В ручном режиме выставляется, но это разные вещи. Хотя ещё рз замечу что: CalcBuySell - 0.1% выставляется, должен срабатывать без проблем, так как цена 0.1% не проходит за это время.
getParamEx(class_code,security,"bid").param_value+(11*getParamEx(class_code,security,"SEC_PRICE_STEP").param_value) возвращает 110 (то есть getParamEx = 0), но может и верную и точную цену, не знаю от чего это зависит.
Уточните работает в 7.2 CalcBuySell?
Ставлю заявку -0.1% от CalcBuySell, выдаёт ошибку:
Ошибка создания заявки [GW]{332] не хватка средств по лимитам клиента
Хотя цена заявке та же что и при расчёте CalcBuySell - 0.1%.
На сервере брокера и у вас нет 32 битных дистрибьюторов, только Версия 7.16 / 19.01.2018 для 64 битного виндовс. Куда 32 битные версии исчезли, они уже не обслуживаються?
в общем с NULL не работает, это глюк? Если нет, то вопрос остался, как по торговому счёту узнать код клиента? (вообще зачем он нужен в этой функции, что номер счёта и код клиента бывают разные).
>> Да. - Без client_code вы не получите результат расчета. Егор, я правильно вас понял, если client_code будет равен NULL он не рас читает правильно??? Просто, не могу поставить это значение, нужно всю цепочку запросов переписывать ...
Спасибо, за уточнении! Небольшая ремарка к производителю: CalcBuySell и CalcBuyBuy - расчёт ведётся самой программой (не сервером) и в случае изменения биржей формулы расчёта, нужно обновлять Квик с доработкой этих функций?