СХЕМА: Связь между объектами торговых циклов в QLua: 2 комментария
Получается что после вызова sendTransaction(Transaction); полюбому автоматом сначала должна выполниться function OnTransReply(trans_reply) и без её полного выполнения скрипт дальше не пойдёт? И не надо напрямую в рукопашную указывать на то чтобы она выполнилась?
Если в транзакции нет ошибок, то да, но нужно учитывать то, что функции обрвтного вызова могут вызываться терминалом в разном порядке, это зависит от того, какие данные приходят с сервера первыми, например, функция OnTrade практически всегда срабатывает раньше OnOrder, при рыночной заявке, хотя, по факту, сначала выставляется заявка, а только потом по ней совершается сделка. В ручную вызывать их нет смысла, механизм их работы сводится к следующему: в терминал пришла информация о заявке, терминал вызывает OnOrder и передает в нее полученные данные в виде таблицы order; пришла информация о сделке, терминал вызывает OnTrade и передает в нее поступившую информацию. Таким образом работает данный механизм.
Получается что после вызова sendTransaction(Transaction); полюбому автоматом сначала должна выполниться function OnTransReply(trans_reply) и без её полного выполнения скрипт дальше не пойдёт? И не надо напрямую в рукопашную указывать на то чтобы она выполнилась?
Если в транзакции нет ошибок, то да, но нужно учитывать то, что функции обрвтного вызова могут вызываться терминалом в разном порядке, это зависит от того, какие данные приходят с сервера первыми, например, функция OnTrade практически всегда срабатывает раньше OnOrder, при рыночной заявке, хотя, по факту, сначала выставляется заявка, а только потом по ней совершается сделка. В ручную вызывать их нет смысла, механизм их работы сводится к следующему: в терминал пришла информация о заявке, терминал вызывает OnOrder и передает в нее полученные данные в виде таблицы order; пришла информация о сделке, терминал вызывает OnTrade и передает в нее поступившую информацию. Таким образом работает данный механизм.