<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: move_orders]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме move_orders форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Sat, 18 Apr 2026 20:26:19 +0300</pubDate>
		<item>
			<title>move_orders</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message4400/topic201/">move_orders</a></b> <i>Send Transaction - замена заявки</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Здравствуйте! Сюда же еще несколько вопросов:<br />1) "FIRST_ORDER_NUMBER" мы взяли order.order_num , а "SECOND_ORDER_NUMBER" - можно подставить тот же номер и тогда при новом обращении order.order_num мы получим тот же номер. Это я правильно понимаю?<br />2) если 1-я лимит. заявка была выставлена на 2 лота, в OnOrder(order) программа увидела, что прошла сделка на один лот - я могу переставить на другую цену только оставшийся лот, указав "FIRST_ORDER_NEW_QUANTITY" = "2", а "SECOND_ORDER_NEW_QUANTITY" = "1" ?<br />3) что произойдет (что выдаст res=sendTransaction(transaction), если я, не проверяя исполнился ли второй лот, буду вызывать эту функцию (пытаться делать перестановку множество раз, меняя цену - для гарантированного получения второго лота)? в программе пытаюсь сделать так:<br /><br />NotBuy_OPT = true<br />function OnOrder(order)<br /> &nbsp; -- Если исполнилась заявка полностью<br /> &nbsp; if order.trans_id == trans_id_OPT and order.balance == 0 then<br /> &nbsp; &nbsp; &nbsp;-- Меняет значение флага<br /> &nbsp; &nbsp; &nbsp;NotBuy_OPT = false<br />end<br /><br />function perestavit_order_OPT()<br /> &nbsp; &nbsp; &nbsp;local transaction = {<br />		&#91;"ACTION"&#93;= "MOVE_ORDERS", -- изменить количество в заявках на новые<br />		&#91;"TRANS_ID"&#93;= tostring(trans_id_OPT),<br />		&#91;"CLASSCODE"&#93;=tostring(classcode),<br />		&#91;"SECCODE"&#93;=tostring(seccode),<br />		&#91;"FIRM_ID"&#93;="UNIKA",<br />		&#91;"MODE"&#93;="1",<br />		&#91;"FIRST_ORDER_NUMBER"&#93;=tostring(OrderNum_OPT_),<br />		&#91;"FIRST_ORDER_NEW_PRICE"&#93;=tostring(price_put),<br />		&#91;"FIRST_ORDER_NEW_QUANTITY"&#93;=tostring(vol_kratno),<br />		&#91;"SECOND_ORDER_NUMBER"&#93;= ?<br />		&#91;"SECOND_ORDER_NEW_PRICE"&#93;=tostring(price_put+10),<br />		&#91;"SECOND_ORDER_NEW_QUANTITY"&#93;="1"<br />	}<br />	local res=sendTransaction(transaction)<br />	sleep (50)<br />	if NotBuy_OPT then<br />		price_put = price_put + 10<br />		local res=sendTransaction(transaction)<br />	end; sleep (50);<br />	if NotBuy_OPT then<br />		price_put = price_put + 10<br />		local res=sendTransaction(transaction)<br />	end; sleep (50);<br />	if NotBuy_OPT then<br />		price_put = price_put + 10<br />		local res=sendTransaction(transaction)<br />	end; sleep (50);<br />	if NotBuy_OPT then<br />		price_put = price_put + 10<br />		local res=sendTransaction(transaction)<br />	end; sleep (50);<br />	local res=sendTransaction(transaction)<br />	if res~="" then<br />		return nil, "send_LimitFUT():"..res<br />	else<br />		return trans_id<br />	end<br />end<br />4) Хотя в программе и идет проверка на полное исполнение заявки (and order.balance == 0), но суть в быстром получении второго лота после первого и не использование маркет ордера<br />5) если думаю неправильно, пожалуйста подскажите (может пример)<br />6) возможно ли не использовать в примере sleep (50)? <br />
			<i>11.05.2015 17:35:02, Юрий.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message4400/topic201/</link>
			<guid>http://forum.quik.ru/messages/forum10/message4400/topic201/</guid>
			<pubDate>Mon, 11 May 2015 17:35:02 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>move_orders</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message1439/topic201/">move_orders</a></b> <i>Send Transaction - замена заявки</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Большое спасибо, Егор! <br />
			<i>26.02.2015 11:03:57, Сергей.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message1439/topic201/</link>
			<guid>http://forum.quik.ru/messages/forum10/message1439/topic201/</guid>
			<pubDate>Thu, 26 Feb 2015 11:03:57 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>move_orders</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message1427/topic201/">move_orders</a></b> <i>Send Transaction - замена заявки</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Добрый день.<br /><br />1. Две заявки. Более подробно в руководстве пользователя Quik Раздел 5. Торговые операции клиента/<B>Перестановка заявок </B><br />2. Trans_Id нужен всегда. Это уникальный идентификационный номер заявки. Если в скрипте будет несколько транзакций на отправку в Quik, то у каждой транзакции должен быть свой Trans_id, отличный от предыдущего.<br />3. Из OnOrder<br />4. То перестановку осуществить не сможете. <br />5. Пример такой заявки ниже. <br />
====code====
<pre>ACTION=MOVE_ORDERS; TRANS_ID=333; CLASSCODE=SPBFUT; SECCODE=EBM6; 
FIRM_ID=SPBFUT389; MODE=1; FIRST_ORDER_NUMBER=21445064; 
FIRST_ORDER_NEW_PRICE=10004; FIRST_ORDER_NEW_QUANTITY=4; 
SECOND_ORDER_NUMBER=21445065; SECOND_ORDER_NEW_PRICE=10004; 
SECOND_ORDER_NEW_QUANTITY=4; </pre>
============= <br />
			<i>26.02.2015 06:15:52, Egor Zaytsev.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message1427/topic201/</link>
			<guid>http://forum.quik.ru/messages/forum10/message1427/topic201/</guid>
			<pubDate>Thu, 26 Feb 2015 06:15:52 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>move_orders</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message1424/topic201/">move_orders</a></b> <i>Send Transaction - замена заявки</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Добрый день<br /><br />Не понятен механизм замены заявки на другую. Что именно не понятно:<br />1. почему там сразу для двух заявок цена, количество и номер? Их вообще две или больше? =)<br />2. нужен ли TRANS_ID или вместо него и используется один/два first/second_ORDER_NUMBER?<br />3. откуда брать номер заявок - из OnOrder(order_num) или OnTransReply (trans_id)?<br />4. что будет происходить, если одна из заявок уже исполнена?<br />5. вместо ответов можно одну ссылочку дать на исчерпывающее руководство... я такого пока просто не нашел, гуглю примеры, коих считанные штуки<br /><br />Спасибо! <br />
			<i>26.02.2015 02:17:36, Сергей.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message1424/topic201/</link>
			<guid>http://forum.quik.ru/messages/forum10/message1424/topic201/</guid>
			<pubDate>Thu, 26 Feb 2015 02:17:36 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
