<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[QUIK -> DDE &mdash; Запрос таблицы заявок и вывод названия акции по последней заявке]]></title>
		<link>https://quik2dde.ru/viewtopic.php?id=436</link>
		<atom:link href="https://quik2dde.ru/extern.php?action=feed&amp;tid=436&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Запрос таблицы заявок и вывод названия акции по последней заявке».]]></description>
		<lastBuildDate>Sat, 17 Jun 2023 16:59:03 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Запрос таблицы заявок и вывод названия акции по последней заявке]]></title>
			<link>https://quik2dde.ru/viewtopic.php?pid=4239#p4239</link>
			<description><![CDATA[<p>Просто супер все как хотел. Остается пилить напильником до следующего подводного камня.</p>]]></description>
			<author><![CDATA[null@example.com (Alexey89)]]></author>
			<pubDate>Sat, 17 Jun 2023 16:59:03 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?pid=4239#p4239</guid>
		</item>
		<item>
			<title><![CDATA[Re: Запрос таблицы заявок и вывод названия акции по последней заявке]]></title>
			<link>https://quik2dde.ru/viewtopic.php?pid=4238#p4238</link>
			<description><![CDATA[<p>Lua скрипт для Quik без дополнительных библиотек.</p><div class="codebox"><pre><code>-- получить параметры последней моей выставленной заявки
local n_orders = getNumberOf(&quot;orders&quot;)
local last_order = getItem(&quot;orders&quot;, n_orders - 1)
message(&#039;Заявка: &#039; ..last_order)</code></pre></div><p>выдает ошибку<br />lua:5: attempt to concatenate a table value (local &#039;last_order&#039;)</p><p>почему? какой правильный код?</p><p>Ошибка возникает, потому что переменная last_order содержит таблицу с параметрами заявки, а не строковое значение. Правильный способ получения информации о параметрах заявки и их вывода в сообщении выглядит так:</p><div class="codebox"><pre><code>-- получить параметры последней моей выставленной заявки
local n_orders = getNumberOf(&quot;orders&quot;)
local last_order = getItem(&quot;orders&quot;, n_orders - 1)
message(&#039;Заявка: &#039; ..last_order.order_num.. &#039; &#039; ..last_order.sec_code.. &#039; &#039; ..last_order.price)</code></pre></div><p>Обратите внимание, что мы обращаемся к конкретным параметрам заявки (номеру заявки, коду инструмента, цене и т.д.) через точку, что позволяет успешно сконкатенировать их значения в строку для вывода в сообщении.</p><br /><br /><br /><p>Lua скрипт для Quik без дополнительных библиотек.</p><div class="codebox"><pre><code>-- получить параметры последней моей выставленной заявки
local n_orders = getNumberOf(&quot;orders&quot;)
local last_order = getItem(&quot;orders&quot;, n_orders - 1)
message(&#039;Заявка: &#039; ..last_order.order_num.. &#039; &#039; ..last_order.sec_code.. &#039; &#039; ..last_order.price)</code></pre></div><p>добавить к коду что бы еще и число лотов выводил</p><div class="codebox"><pre><code>-- получить параметры последней моей выставленной заявки
local n_orders = getNumberOf(&quot;orders&quot;)
local last_order = getItem(&quot;orders&quot;, n_orders - 1)
message(&#039;Заявка: &#039; ..last_order.order_num.. &#039; &#039; ..last_order.sec_code.. &#039; &#039; ..last_order.price.. &#039; &#039; ..last_order.qty)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Alexey89)]]></author>
			<pubDate>Sat, 17 Jun 2023 16:57:53 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?pid=4238#p4238</guid>
		</item>
		<item>
			<title><![CDATA[Re: Запрос таблицы заявок и вывод названия акции по последней заявке]]></title>
			<link>https://quik2dde.ru/viewtopic.php?pid=4236#p4236</link>
			<description><![CDATA[<p>getQuoteLevel2 - это функция для получения стакана по указанному классу и бумаге.<br />Стакан котировок - он, конечно, формируется из заявок, но там не одна заявка, а все вместе. И там уже не только мои заявки, а зявки всей биржи.</p><p>А вы что хотите получить на самом деле? какие заявки?</p>]]></description>
			<author><![CDATA[null@example.com (swerg)]]></author>
			<pubDate>Sat, 17 Jun 2023 06:09:55 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?pid=4236#p4236</guid>
		</item>
		<item>
			<title><![CDATA[Re: Запрос таблицы заявок и вывод названия акции по последней заявке]]></title>
			<link>https://quik2dde.ru/viewtopic.php?pid=4235#p4235</link>
			<description><![CDATA[<p>trades - это сделки, а вы пишете про заявки.<br />Заявки - &quot;orders&quot;</p><p>getTradeByNumber - такой н бывает функции.</p><div class="codebox"><pre><code>-- получить параметры последней моей выставленной заявки
local n_orders = getNumberOf(&quot;orders&quot;)
local last_order = getItem(&quot;orders&quot;, n_orders - 1)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (swerg)]]></author>
			<pubDate>Sat, 17 Jun 2023 06:07:10 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?pid=4235#p4235</guid>
		</item>
		<item>
			<title><![CDATA[Re: Запрос таблицы заявок и вывод названия акции по последней заявке]]></title>
			<link>https://quik2dde.ru/viewtopic.php?pid=4234#p4234</link>
			<description><![CDATA[<p>-- Получаем максимальный ID заявки<br />local n_trades = getNumberOf(&quot;trades&quot;)<br />local last_trade = getTradeByNumber(n_trades)</p><p>-- Получаем информацию о последней заявке<br />local level2_info = getQuoteLevel2(&quot;TQBR&quot;, last_trade.sec_code, last_trade.price)<br />message(&quot;Название акции: &quot; .. level2_info)</p><p>lua:4: attempt to call a nil value (global &#039;getTradeByNumber&#039;)</p>]]></description>
			<author><![CDATA[null@example.com (Alexey89)]]></author>
			<pubDate>Fri, 16 Jun 2023 18:28:15 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?pid=4234#p4234</guid>
		</item>
		<item>
			<title><![CDATA[Re: Запрос таблицы заявок и вывод названия акции по последней заявке]]></title>
			<link>https://quik2dde.ru/viewtopic.php?pid=4233#p4233</link>
			<description><![CDATA[<p>-- Получаем максимальный ID заявки<br />local n_trades = getNumberOf(&quot;trades&quot;)<br />local last_trade = getTrade(n_trades)</p><p>-- Получаем информацию о последней заявке<br />local level2_info = getQuoteLevel2(&quot;TQBR&quot;, last_trade.sec_code, last_trade.price)<br />message(&quot;Название акции: &quot; .. level2_info)&nbsp; </p><br /><p>Ошибку пишет, как будто функция не стандартная и в каком-то доп пакете идет.<br />lua:4: attempt to call a nil value (global &#039;getTrade&#039;)</p>]]></description>
			<author><![CDATA[null@example.com (Alexey89)]]></author>
			<pubDate>Fri, 16 Jun 2023 18:21:24 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?pid=4233#p4233</guid>
		</item>
		<item>
			<title><![CDATA[Re: Запрос таблицы заявок и вывод названия акции по последней заявке]]></title>
			<link>https://quik2dde.ru/viewtopic.php?pid=4232#p4232</link>
			<description><![CDATA[<p>заявки<br /> Как будет запросить название акции и числа лотов последней заявки?</p>]]></description>
			<author><![CDATA[null@example.com (Alexey89)]]></author>
			<pubDate>Fri, 16 Jun 2023 17:17:58 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?pid=4232#p4232</guid>
		</item>
		<item>
			<title><![CDATA[Re: Запрос таблицы заявок и вывод названия акции по последней заявке]]></title>
			<link>https://quik2dde.ru/viewtopic.php?pid=4231#p4231</link>
			<description><![CDATA[<p><strong>Alexey89</strong>, рад приветствовать вас на форуме!</p><p>Уточните: речь про таблицу заявок или про таблицу сделок?<br />Вы запрашиваете сделки:<br /></p><div class="codebox"><pre><code>getNumberOf(&quot;trades&quot;)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (swerg)]]></author>
			<pubDate>Fri, 16 Jun 2023 12:51:33 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?pid=4231#p4231</guid>
		</item>
		<item>
			<title><![CDATA[Запрос таблицы заявок и вывод названия акции по последней заявке]]></title>
			<link>https://quik2dde.ru/viewtopic.php?pid=4230#p4230</link>
			<description><![CDATA[<p>Запрос таблицы заявок и вывод названия акции по последней заявке мэсэджем. Пытаю чат GPT, он дает тонны кода по подобным запросам. Такое ощущение что таблица заявок защищена чем-то. То функции nil, то не определены. </p><br /><p>Например </p><div class="codebox"><pre><code>-- определяем функцию для поиска последней исполненной заявки
function last_trade()
local last_trade = {}
local n = getNumberOf(&quot;trades&quot;)

while n &gt; 0 do
local trade = getItem(&quot;trades&quot;, n)
if trade.flags == 1 then
last_trade = trade
break
end
n = n - 1
end

return last_trade
end

-- получаем последнюю исполненную заявку
local trade = last_trade()

-- проверяем условия и выводим информацию
if trade.class_code == &quot;TQBR&quot; and trade.client_code == &quot;4X55N&quot; then
if trade.sec_code == &quot;LKOH&quot; then
message(&quot;Акция: ЛУКОЙЛ\nКупля/продажа: &quot; .. trade.dir .. &quot;\nЧисло лотов: &quot; .. trade.qty)
elseif trade.sec_code == &quot;ROSN&quot; then
message(&quot;Акция: РОСНЕФТЬ\nКупля/продажа: &quot; .. trade.dir .. &quot;\nЧисло лотов: &quot; .. trade.qty)
elseif trade.sec_code == &quot;MAGN&quot; then
message(&quot;Акция: ММК\nКупля/продажа: &quot; .. trade.dir .. &quot;\nЧисло лотов: &quot; .. trade.qty)
elseif trade.sec_code == &quot;SBER&quot; then
message(&quot;Акция: СБЕРБАНК\nКупля/продажа: &quot; .. trade.dir .. &quot;\nЧисло лотов: &quot; .. trade.qty)
elseif trade.sec_code == &quot;GAZP&quot; then
message(&quot;Акция: ГАЗПРОМ\nКупля/продажа: &quot; .. trade.dir .. &quot;\nЧисло лотов: &quot; .. trade.qty)
elseif trade.sec_code == &quot;AFKS&quot; then
message(&quot;Акция: СИСТЕМА\nКупля/продажа: &quot; .. trade.dir .. &quot;\nЧисло лотов: &quot; .. trade.qty)
elseif trade.sec_code == &quot;PLZL&quot; then
message(&quot;Акция: ПОЛЮС\nКупля/продажа: &quot; .. trade.dir .. &quot;\nЧисло лотов: &quot; .. trade.qty)
elseif trade.sec_code == &quot;MTLR&quot; then
message(&quot;Акция: МЕЧЕЛ\nКупля/продажа: &quot; .. trade.dir .. &quot;\nЧисло лотов: &quot; .. trade.qty)
elseif trade.sec_code == &quot;BANE&quot; then
message(&quot;Акция: БАШНЕФТЬ\nКупля/продажа: &quot; .. trade.dir .. &quot;\nЧисло лотов: &quot; .. trade.qty)
end
end</code></pre></div><p>Может есть что проще и надежней. За 2 недели мытарств ни разу не получил ни кусочка инфы из таблицы заявок. Из стакана цену последней сделки по конкретной бумаге могу получить. А из таблицы заявок ни кусочка информации.&nbsp; Заявки исполненные всегда в наличии в этой таблице.</p>]]></description>
			<author><![CDATA[null@example.com (Alexey89)]]></author>
			<pubDate>Fri, 16 Jun 2023 09:52:30 +0000</pubDate>
			<guid>https://quik2dde.ru/viewtopic.php?pid=4230#p4230</guid>
		</item>
	</channel>
</rss>
