Получилось. Подскажите, а есть ли возможность из уже определенной расчётным временем свечи TIME_N, получить время свечи из системы т.е. вот таким образом это соответственно не сработает
Проблема с функцией GET_CANDLE Добрый день уважаемые специалисты, не могу понять почему не выполняется данный код: BUMAGA="ROSN" CLASS="TQBR" DATE_N=20160126 TIME_N=104000 Price_candle=GET_CANDLE(CLASS, BUMAGA, "", "10", "PRICE", DATE_N, TIME_N)+0 Price_candle_close = Get_Value (Price_candle,"close")+0 Price_candle_open = Get_Value (Price_candle,"open")+0
И я похоже понял откуда ноги растут опытным путем, выгрузил отчет по портфелю, там по сегодняшним сделкам вид лимита стоит Т365, поставил limit_kind =365 и получил текущий остаток, че за махинации и зачем. Теперь вопрос как limit_kind вытаскиввать или циклом на год делать от 1 то 365
Да, но сейчас таблицы клиента в квике совсем не информативные стали, в таблице "Клиентский портфель" вид лимита Тх (третья строка) вижу стоимость активов, а в "Таблице лимитов по бумагам", там совсем хаус, но там в трех позиция по сберу есть бумаги, но они там в любом случае есть
Прошу прощения просто не ту ф-ию скопировал, то есть в приведенном вами варианте тоже нулевое значение получается, там у меня часть в текст записана 'AND _ '(GET_VALUE(trade, "LIMIT_KIND")+0==limit_kind+0), это я просто пробовал без учета limit_kind, в противном случае тоже не получается
Константин пишет: trade = GET_ITEM ("MONEY_LIMITS", i)
Добрый день.
Константин, почему у Вас идет обращение к таблице лимитов по деньгам, когда Вам нужен остаток по бумагам?
Должно быть так:
FUNC DEPO_CURRENT_BALANCE_EX(client_code, firmid, seccode, account,limit_kind) n=GET_NUMBER_OF("DEPO_LIMITS") value=0 RESULT = "" FOR i FROM 1 to n trade = GET_ITEM ("DEPO_LIMITS", i) IF (GET_VALUE(trade, "CLIENT_CODE")==client_code&"") AND _ (GET_VALUE(trade, "FIRMID")==firmid&"") AND _ (GET_VALUE(trade, "SECCODE")==seccode&"") AND _ (GET_VALUE(trade, "TRDACCID")==account&"") AND _ (GET_VALUE(trade, "LIMIT_KIND")+0==limit_kind+0) RESULT = GET_VALUE(trade, "CURRENT_BALANCE")+0 BREAK END IF END FOR END FUNC
Согласен не ту ф-ию скопировал у меня она в таком виде: FUNC DEPO_CURRENT_BALANCE_EX(ClientCode, FirmId, Seccode, Account) n=GET_NUMBER_OF("DEPO_LIMITS") b=0 value=0 RESULT = "" FOR i FROM 1 to n trade = GET_ITEM ("DEPO_LIMITS", i) b=b+1 IF (GET_VALUE(trade, "CLIENT_CODE")==ClientCode) AND _ (GET_VALUE(trade, "FIRMID")==FirmId) AND _ (GET_VALUE(trade, "SECCODE")==Seccode) AND _ (GET_VALUE(trade, "TRDACCID")==Account) 'AND _ '(GET_VALUE(trade, "LIMIT_KIND")+0==limit_kind+0) RESULT = GET_VALUE(trade, "CURRENT_BALANCE") BREAK END IF END FOR END FUNC
Добрый день! Перестала работать функция возвращения значения «текущего остатка по бумагам», в чем может проблема, думаю как то связано с появлением в квике дополнительной строчки вида лимита. По итогу нулевое значение Код функции:
limit_kind = "2" DepoBL= DEPO_CURRENT_BALANCE_EX (Client, FIRM, BUMAGA, ACCOUNT,limit_kind)+0 FUNC MONEY_CURRENT_BALANCE_EX(ClientCode, FirmId, TAG, curr_code,limit_kind) n=GET_NUMBER_OF("MONEY_LIMITS") m=0 RESULT = "" FOR i FROM 1 to n trade = GET_ITEM ("MONEY_LIMITS", i) m=m+1 IF (GET_VALUE(trade, "CLIENT_CODE")==ClientCode&"") AND _ (GET_VALUE(trade, "FIRMID")==FirmId&"") AND _ (GET_VALUE(trade, "TAG")==TAG&"") AND _ (GET_VALUE(trade, "CURRCODE")==curr_code&"") AND _ (GET_VALUE(trade, "LIMIT_KIND")+0==limit_kind+0) RESULT = GET_VALUE(trade, "CURRENT_BALANCE")+0 BREAK END IF END FOR END FUNC