Блог им. tsir

А почему клиринг теперь 10 минут вместо 5-ти?

Они опять там внесли непоправимые улучшения в свой софт, что он стал еще более тормозной? Любой средней руки программист без проблем напишет на с++ код, который за несколько секунд даже на слабо компе обсчитает несколько миллионов сделок, которые были за торговую сессию. Что там можно считать так долго и где они понабрали настолько некомпетентных прогеров?
    ★1
    43 комментария
    В экспирацию всегда клиринг дольше
    avatar
    SellBuySell, раньше был только вечерний…
    avatar
    SellBuySell, это где-то прописано? На монобирже видимо на счетах считают.
    avatar
    А вы знаток внутренностей биржи? Какие-то тупые претензии

    avatar
    А почитать правила работы мосбиржи?) Не?

    Ну прально, за чем?..
    ктоукралмойпробел, раньше ведь только вечерний продлевали? Или ошибаюсь?
    avatar
    Jame Bonds, ошибаетесь… квартальная отчетность, всегда требует больше времени) 
    Jame Bonds, в дневной валюту всегда делали на кварталке
    avatar
    Андрей К, на Si-12.18 вижу минутные бары 20.09 (предыдущая экспирация) с 14:05 по 14:09.
    Как минимум не всегда.
    avatar
    Jame Bonds, ну да, по 10 минуту — это единичный случай… сегодня в опцах разнос был с утра, видать подстраховались, увеличили время на обработку данных.
    avatar
    Jame Bonds, на Si-12.18 вижу минутные бары 20.09 (предыдущая экспирация) с 14:05 по 14:09.
    Так что ничего я не ошибаюсь.
    avatar
    Jame Bonds, сегодня сишка в обед закрывалась. Вот плюс 5 минут. Все нормально
    Tundrurat, доказано, что в прошлый раз такого не было.
    avatar
    Любой средней руки программист без проблем напишет на с++ код, который за несколько секунд даже на слабо компе обсчитает несколько миллионов сделок

    Сложные распределённые системы работают по иным законам. Несколько миллионов SQL-инсертов/апдейтов за несколько секунд? Это шутка недели, однозначно.

    И пока есть люди, которые думают подобным образом, у меня на столе есть кусок хлеба с икрой пармезан с гран-резервой. Подниму вечером бокал за ваше здоровье!
    avatar
    Lev, да что там возиться с запросами какими-то! тупо все в массив раскидать и все. А потом можно по циклу выводить кому надо.
    avatar
    Бог, методом пузырькового спуска?)))
    avatar
    Lev, про пармезан мне очень понравилось =))
    avatar
    Андрей К, люблю твёрдые и выдержанные сыры под бокал вина. Жена наоборот — мягкие и иногда с плесенью — камамберы, дорблю итп. Грешен, но что делать?

    avatar
    Я согласен с Автором — считать там нечего.
    Легко и быстро можно посчитать на памяти параллельно на нескольких серверах.

    А вот это 
    Несколько миллионов SQL-инсертов/апдейтов за несколько секунд? Это шутка недели
    — сохранение посчитанного в сторэйдж, тоже делается параллельно и легко закидывается в фоновый процесс.

    Нечего делать всякие перерывы на ровном месте и там где они не нужны.
    Это малина для всякого рожа манипуляций.
    avatar
    Lev, для подобных систем не используют скл, а нормальные быстрые базы.
    однорукий экономист, 
    для подобных систем не используют скл, а нормальные быстрые базы
    Oracle Hyperion разве не sql ориентированная платформа?
    avatar
    Андрей К, 
    Основная задержка возникает при подъеме необходимых для расчета данных на Память из сиквельных баз или других бд.

    Затем считаться должно все на памяти параллельно на нескольких серверах — это делается быстро.

    Результаты, которые посчитались,  могут сохраняться на СиквелСерверах уже при работающей торговой системе в фоновом режиме хоть до утра.
    avatar
    _sg_, спасибо за экскурс, буду теперь знать, что такое сиквел.
    avatar
    нормальные быстрые базы

    однорукий экономист, redis и mongodb что ли? Так для любых операций, где в одном месте убыло, а в другом прибыло нужна поддержка транзакций. Т.е. база должна быть ACID - https://ru.wikipedia.org/wiki/ACID
    Ни одна из «нормальных быстрых баз» не удовлетворяет этим требованиям полностью (частично — да). 

    С другой стороны, посмотрим на вакансии на МосБирже (вкладка IT) - https://www.moex.com/ru/career/vacancies/ 

    Значительный опыт работы с реляционными СУБД
    Firebird (предпочтительно) или Oracle (в меньшей степени)
    Свободное владение SQL
    Знание Transact-SQL

    Ни на что не намекает?
    avatar
    Lev, это не отменяет кривость программистов. Все данные можно зарание подготовить, до начала клиринга. Да и нормально спроектированные базы с грамотно расставленными индексами выгрузят миллион сделок за несколько секунд.
    однорукий экономист, как это «заранее подготовить»? Последняя транзакция была в 13:59:59

    Миллионные базы с правильными индексами у меня под рукой (вот в буквальном смысле, в соседней консоли). Но не удаётся выгружать «за несколько секунд». То в диски упирается, то в CPU, то в сеть. Прямо беда-беда.
    Кроме непосредственной выгрузки надо ещё и пометить, что в одном месте убыло, в другом прибыло и закоммитить эту транзакцию. Это довольно дорогостоящая операция, никакими «за несколько секунд» там и не пахнет.

    avatar
    Lev, это последняя, никто не мешает зарание начать выгружать предыдущие.
    А что комитить то собрался в базу и почему это минутами должно делаться?
    И кстати современные диски, кпу, и память имеют очень высокую производительность, миллион сделок прочитать займет меньше секунды(при условии что руки программиста растут из правильного места, а не оттуда откуда у разработчиков мосбиржи).
    однорукий экономист, транзакция в субд это атомарная операция, внутри которой может быть куча разных операций, и когда она успешно выполняется, то результат записывается на диск

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

    avatar
    meat, не нужно никакие пары искать, вообщето все расчеты идут через ЦК.
    однорукий экономист, тем не менее основная цель это посчитать все задолженности и ГО клиентов, если это делать 1 раз в день, то нужно увеличить ГО по всем инструментам, логично? :)
    avatar
    meat, вообще-то все задолжности и ГО итак на протяжении всех торгов расчитываются в реалтаме ;) Так чтоже они там считают 10мин, если все уже было посчитано до этого, причем очень быстро(при выставлении каждой заявки).
    однорукий экономист, http://nationalclearingcentre.ru/viewCatalog.do?menuKey=244
    посмотри тут в правилах, там pdf документ, возможно найдешь причину почему так долго
    avatar
    однорукий экономист, http://www.option.ru/glossary/market-today/na-FORTS-vvoditsya-promezhutochnyy-kliringovyy-seans
    avatar
    что комитить то собрался в базу

    однорукий экономист, похоже, что вы имеете очень слабое представление о механизме транзакций в реляционных БД и какое это имеет значение для финансовой сферы
    https://www.tutorialspoint.com/sql/sql-transactions.htm

    никто не мешает зарание начать выгружать предыдущие
    Куда и что выгружать? Что за ересь вы несёте? Вы хоть понимаете, как это работает и что такое консистентность данных? Пока не завершилась последняя транзакция — ничего делать нельзя.

    От дальнейшей дискуссии с вами я воздержусь, слишком разный уровень компетенции.
    Успехов в торговле!
    avatar
    Очень мне нравятся речи про с++, массивы, циклы =)
    avatar
    программистишки всегда были отстоем человеческой цивилизации.

    gans-spb.livejournal.com/33248.html
    avatar
    Kapeks, без программистов ты бы сейчас в каменном веке жил
    avatar
    siesta00, программистишка?
    avatar
    Kapeks, говнотрейдер? ;)
    avatar
    siesta00, засчитал тебе слив, как никчёмному программистишке.
    читай ганса_спб, может у тебя будет шанс стать человеком.
    avatar
    Kapeks, еще и в бан добавил)) сиди и сри в горшок, никчемный червь
    avatar
    Сразу видно средней руки программиста.
    avatar
    Да там делать 10 минут, просто у меня сейчас времени нет. Так, да? )))
    avatar

    теги блога однорукий экономист

    ....все тэги



    UPDONW
    Новый дизайн