<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: Определить очередь моей заявки в стакане в любой момент времени.]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме Определить очередь моей заявки в стакане в любой момент времени. форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Tue, 28 Apr 2026 18:27:53 +0300</pubDate>
		<item>
			<title>Определить очередь моей заявки в стакане в любой момент времени.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message17321/topic1402/">Определить очередь моей заявки в стакане в любой момент времени.</a></b> <i>Определение очереди.</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Здравствуйте.<br />Возможно, ранее обсуждался данный вопрос, Да, видимо, остался в архиве, который недоступен.<br />Суть в следующем.<br />Порой в OnQuote приходит количество строк на покупку/продажу больше нормального 20/50.<br />Пожалуйста посоветуйте как интерпретировать такие данные. Какие строки из 52-х bid (например) верны? Как понимать в этом случае спред?<br />Заранее спасибо. <br />
			<i>17.07.2016 16:28:46, PFelix.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message17321/topic1402/</link>
			<guid>http://forum.quik.ru/messages/forum10/message17321/topic1402/</guid>
			<pubDate>Sun, 17 Jul 2016 16:28:46 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Определить очередь моей заявки в стакане в любой момент времени.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message13052/topic1402/">Определить очередь моей заявки в стакане в любой момент времени.</a></b> <i>Определение очереди.</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			берете стакан и ищите свою заявку по цене. <br />это и будет ваш номер в стакане. <br />
			<i>20.02.2016 15:20:22, Николай  Камынин.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message13052/topic1402/</link>
			<guid>http://forum.quik.ru/messages/forum10/message13052/topic1402/</guid>
			<pubDate>Sat, 20 Feb 2016 15:20:22 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Определить очередь моей заявки в стакане в любой момент времени.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message13038/topic1402/">Определить очередь моей заявки в стакане в любой момент времени.</a></b> <i>Определение очереди.</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Простого решения нет, но первая мысль, которая приходит в голову следующая:<br />Предположим, что Вы выставили заявку на покупку (bid) по классу SPBFUT инструмент RIZ6, по цене 123.45 (my_order_price) с количеством 10 (my_order_qty)<br />
====code====
<pre>is_run = true

_bid = {}

function OnQuote(class, sec)
&nbsp;&nbsp;if class =="SPBFUT" and sec == "RIZ6" then
&nbsp;&nbsp;&nbsp;&nbsp;ql2_bid = getQuoteLevel2(class, sec).bid
&nbsp;&nbsp;&nbsp;&nbsp;table.insert(_bid, ql2_bid)
&nbsp;&nbsp;end
end

function OnStop(signal)
&nbsp;&nbsp;is_run = false
end

function main()
&nbsp;&nbsp;
&nbsp;&nbsp;while is_run do
&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;if #_bid == 1 then 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for k,q in ipairs(_bid&#91;1&#93;) do
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if q.price == my_order_price and q.quantity == my_order_qty then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(string.format("Моя заявка %i в очереди", k))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;elseif q.price == my_order_price and q.quantity &#62; my_order_qty then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(string.format("Моя заявка %i в очереди, но так же по данной цене еще %i лотов не моей заявки", k, q.quantity - my_order_qty))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_bid = {}
&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;sleep(100)
&nbsp;&nbsp;end
end
</pre>
=============
Код не проверял, это просто пример логики решения задачи, ее можно расширять, с учетом, что заявка может быть не только на покупку, а так же заявка может исполниться, т.е. нужно вводить проверку, что заявка еще активна, + нужно учесть, что некоторые рынки транслируют не полный стакан, например, 10x10 и Ваша заявка может выйти за эти границы и не отображаться в стакане, тогда уже точно не узнать какая она в очереди, но точно можно будет утверждать, что она больше 10. Также если торговля по инструменту оживленная, OnQuote() может сработать очень часто, и тогда в таблице _bid будет не одна запись, и в этом случае их придется обрабатывать все в цикле. Аналогично, можно реализовать проверку очередности при срабатывании OnOrder(), т.е. в тот момент, когда Ваша заявка только выставилась. <br />
			<i>20.02.2016 10:18:50, Nikolay Pavlov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message13038/topic1402/</link>
			<guid>http://forum.quik.ru/messages/forum10/message13038/topic1402/</guid>
			<pubDate>Sat, 20 Feb 2016 10:18:50 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Определить очередь моей заявки в стакане в любой момент времени.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message12694/topic1402/">Определить очередь моей заявки в стакане в любой момент времени.</a></b> <i>Определение очереди.</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Здравствуйте,<br />Никак. Ибо биржа эту информацию не транслирует <br />
			<i>16.02.2016 11:39:52, Sergey Gorokhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message12694/topic1402/</link>
			<guid>http://forum.quik.ru/messages/forum10/message12694/topic1402/</guid>
			<pubDate>Tue, 16 Feb 2016 11:39:52 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Определить очередь моей заявки в стакане в любой момент времени.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message12693/topic1402/">Определить очередь моей заявки в стакане в любой момент времени.</a></b> <i>Определение очереди.</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Добрый день.<br /><br />Вопрос в названии темы. При постановке заявки я могу посчитать какое количество контрактов до меня по этой же цене. Но стакан ведь &quot;живой&quot;, данные меняются, кто-то снимает заявки, кто-то ставит. Как в любой момент времени посчитать сколько контрактов передо мной? <br />
			<i>16.02.2016 11:36:20, Дмитрий Минеев.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message12693/topic1402/</link>
			<guid>http://forum.quik.ru/messages/forum10/message12693/topic1402/</guid>
			<pubDate>Tue, 16 Feb 2016 11:36:20 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
