Помогите с организацией кода - страница 4

 
Ihor Herasko:

Я же и говорю о том, что внутренний ID должен где-то храниться на предмет соответствия реальному. Вот и получаем, что не обойтись без записи данных локально. Тогда только один путь - вести свою БД.

Нигде он не хранится кроме как в самом магике.

 
Vitaly Muzichenko:

Вот это действительно плохая идея, худшей наверное не придумать. Работа с файлом так-же не блещет скоростью.

Если дергать файл на каждом тике...

У каждой программы, отдельно задачи, функции еще есть свой алгоритм, и вот от него зависит, как будут влиять медленный операции на работу всей программы в целом.  

К тому же, глобальные переменные позволят напрямую получить те или иные данные, относящиеся к тикету, без использования цикла. А если ордера связан, то и напрямую получить данные о втором ордере, тоже без цикла. Поэтому их медленность окупается повышением скорости в других местах. Да и не такие уж они медленные.   
 
Dmitry Fedoseev:

Если дергать файл на каждом тике...

У каждой программы, отдельно задачи, функции еще есть свой алгоритм, и вот от него зависит, как будут влиять медленный операции на работу всей программы в целом.  

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

При аварийном завершении работы терминала, пропадание того-же электричества, глобальные переменные очищаются - их нет, далее программа работает не по алгоритму.

 
Vitaly Muzichenko:

При аварийном завершении работы терминала, пропадание того-же электричества, глобальные переменные очищаются - их нет, далее программа работает не по алгоритму.

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


а... впрочем, есть одна настоящая проблема - термиты балку могут перегрызть могут))

 
Dmitry Fedoseev:

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


а... впрочем, есть одна настоящая проблема - термиты балку могут перегрызть могут))

Последний раз пропадало 30 декабря. Было что и терминал зависал и приходилось аварийно перезапускать в пятницу, когда набросил скрипт. Вот в этих 2-х случаях за неделю Я терял глоб.переменные терминала.

 

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

Еще есть функция GlobalVariableFlush().

 
Dmitiry Ananiev:
Это если надо сохранить всю цепочку.

Каждый ордер имеет данные на свой родительский ордер (по достижению стопа которого она сам открылся). Перебирая эти ордера, получаем всю цепочку. Причем гарантированно, т. к. с полем OrderComment не связаны.

 
Dmitry Fedoseev:

Нигде он не хранится кроме как в самом магике.

Тогда я чего-то не понимаю. Как можно идентифицировать тикет ордера по трем разрядам (пусть даже десятичным), если никакой дополнительной информации нет?

 
Если стоит задача хранить любые данные на торговом сервере, то это всегда можно сделать через информационные ордера в истории торгов.
 
fxsaber:
Если стоит задача хранить любые данные на торговом сервере, то это всегда можно сделать через информационные ордера в истории торгов.

Кстати, да, тоже неплохой вариант.

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