Vitaliy (Автор тем)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
MySQL и кириллица
 
Добрый день
Пытаюсь занести из qlua в mysql название бумаги. С кириллицей поймал проблему
БД и таблицы в кодировке UTF8
- Получаю название бумаги (да или просто пробую "Привет"), сую в базу и:
nilLuaSQL: error executing query. MySQL: Incorrect string value: '\xD1\xE1\xE5\xF0\xE1\xE0...' for column 'shortname' .........
- Пробую перед вставкой указать SET NAMES 'cp1251'; получаю:
nilLuaSQL: error executing query. MySQL: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UPD ATE engine1.tickers SE T shortname='????????' ......
Как подружить кириллицу lua и mysql подскажите
Выбор функции
 
Добрый день
Объясните плз, разницу: getItem (depo_limits) и getDepoEx.
getDepoEx делает тоже самое, перебирает таблицу и выбирает нужное? или у нее другой канал запроса данных? Что предпочтительнее?
Получение параметров
 
Добрый вечер.
Многие параметры, для примера минимальный шаг цены, можно получить как через
getItem так и через getParamEx.
Какой способ предпочтительнее использовать? (меньше ошибок, меньше грузит канал и проц)

Зачем при наличии этих двух способов, для таблицы инструментов еще есть отдельно getSecurityInfo ?
не актуальный TRADINGSTATUS
 

Доброго времени суток.

Нужно останавливать работу с инструментом, который не торгуется в вечерней сессии, или у него выходной день

Никак не разберусь с TRADINGSTATUS.

Опрашиваю в цикле getParamEx(class, sec, "TRADINGSTATUS").param_image

9-00 - "не торгуется"

10-05 - "не торгуется"

10-15 - "не торгуется"

Перезапускаю скрипт - "торгуется"... Т.е. актуальные значения получаю только при запуске скрипта.

В OnInit() добавил ParamRequest(class, sec, "TRADINGSTATUS"), ничего не поменялось.

getParamEx цену (LAST) возвращает правильно, в реальном времени, а TRADINGSTATUS только при запуске скрипта

Что я делаю не так? Как правильно?

Прошу пояснений про получение цены
 

Добрый день, прошу помочь с пониманием процесса получения цены.

1) Пробовал использовать getParamEx(class_code, sec_code, "last").param_valueЧем не устроил: выдает цену с задержкой (разнообразной). Я вызываю его раз в секунду, цена на графике уже изменилась, а getParamEx возвращает старое значение. Если запустить на выходных, выдает старую цену игнорируя изменения цены в не торговой сессии. Т.е. на графике инструмента у меня 10,14, но getParamEx выдает 9,98, как было во время торгов. Почему?

Стал разбираться с CreateDataSource. Почитал форум, возникли вопросы и хотелось бы ответов: правильно я понял или нет.

2) Чтобы один раз получить актуальные данные (при закрытых графиках) достаточно только

Код
ds_sber, error_desc = CreateDataSource("TQBR","SBER", INTERVAL_M5);

или это не правильно, на удачу?

3) Чтобы в ds_sber ВСЕГДА были актуальные данные, нужно ОДИН РАЗ, именно из main() надо вызвать CreateDataSource+ SetEmptyCallback

Код
function main()ds_sber, error_desc = CreateDataSource("TQBR","SBER", INTERVAL_M5);ds_sber:SetEmptyCallback();sleep(5000); --ждем пока данные прилетятwhile IsRun doprice_sber=ds_sber:C(ds:Size());-- далее обработка цены-- т.к. подписаны, то будем всегда иметь актуальный набор свечей?sleep(1000);end;ds_sber:Close();end;

после этого в любой момент работаю с последними данными в ds_sber? Все верно?

4) Какие будут последствия если при завершении скрипта не делать ds_sber:Close()

5) Можно как-то определять для интервала, например М30, что свеча закрылась и началась новая свеча?

6) У меня в цикле 1сек обсчитываются 10-20 инструментов ( массив ), инструменты меняются, т.е. статичные ds не сделать. Как правильно организовать запрос данных (свечей) в таком случае ?

Страницы: 1
Наверх