<?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>Sat, 04 Apr 2026 02:29:52 +0300</pubDate>
		<item>
			<title>Помогите найти ошибку.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message28795/topic3339/">Помогите найти ошибку.</a></b> <i>После срабатывания стопзаявки</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_JSJI8daF" href="/user/2495/" bx-tooltip-user-id="2495">sav 312</a> написал:<br /><br />			<br />			<br />			<br />				<br />=============<br />Чтобы искать быстро, могу посоветовать искать не сначала таблицы сделок, <br />а с конца, <br />так как искомая сделка скорее всего последняя. <br />
			<i>26.01.2018 20:19:43, Николай  Камынин.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message28795/topic3339/</link>
			<guid>http://forum.quik.ru/messages/forum10/message28795/topic3339/</guid>
			<pubDate>Fri, 26 Jan 2018 20:19:43 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Помогите найти ошибку.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message28749/topic3339/">Помогите найти ошибку.</a></b> <i>После срабатывания стопзаявки</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_1xF34bn2" href="/user/17/" bx-tooltip-user-id="17">Sergey Gorokhov</a> написал:<br />Здравствуйте,<br />Не рекомендуем использовать циклы в колбеках.<br />Т.к. колбеки выполняются в основном &nbsp;потоке терминала, т.е. пока колбек не закончит работу, терминал будет виснуть.<br />Все тяжелые циклы, следует использовать только в main.<br />В самом же колбеке, следует добавить флаг, приводящий к нужным действиям в main<br />Пример<br />
====code====
<pre>&nbsp;&nbsp;work&nbsp;&nbsp;=&nbsp;&nbsp; false 
 function&nbsp;&nbsp; OnStopOrder ( .. .)
 work&nbsp;&nbsp;=&nbsp;&nbsp; true 
 end 

 function&nbsp;&nbsp; main ()
&nbsp;&nbsp;.. .
&nbsp;&nbsp; if&nbsp;&nbsp;work&nbsp;&nbsp;then 
&nbsp;&nbsp;&nbsp;&nbsp;.. .
&nbsp;&nbsp; end 
 .. .
 end 

&nbsp;&nbsp;</pre>
=============
<br />=============<br />Спасибо за совет. Сейчас переделаю и буду тестить. <br />
			<i>25.01.2018 12:34:13, sav 312.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message28749/topic3339/</link>
			<guid>http://forum.quik.ru/messages/forum10/message28749/topic3339/</guid>
			<pubDate>Thu, 25 Jan 2018 12:34:13 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Помогите найти ошибку.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message28748/topic3339/">Помогите найти ошибку.</a></b> <i>После срабатывания стопзаявки</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Здравствуйте,<br />Не рекомендуем использовать циклы в колбеках.<br />Т.к. колбеки выполняются в основном &nbsp;потоке терминала, т.е. пока колбек не закончит работу, терминал будет виснуть.<br />Все тяжелые циклы, следует использовать только в main.<br />В самом же колбеке, следует добавить флаг, приводящий к нужным действиям в main<br />Пример<br />
====code====
<pre>
work = false
function OnStopOrder(...)
 work = true
end

function main()
 ...
&nbsp;&nbsp;if work then
&nbsp;&nbsp; ...
&nbsp;&nbsp;end
...
end

</pre>
============= <br />
			<i>25.01.2018 12:30:03, Sergey Gorokhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message28748/topic3339/</link>
			<guid>http://forum.quik.ru/messages/forum10/message28748/topic3339/</guid>
			<pubDate>Thu, 25 Jan 2018 12:30:03 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Помогите найти ошибку.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message28746/topic3339/">Помогите найти ошибку.</a></b> <i>После срабатывания стопзаявки</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			После срабатывания стопзаявки, запоминаем номер созданной заявки, по этому номеру путем перебора таблицы сделок находим нашу. Запоминаем цену исполнения сделки. Иногда все срабатывает как надо, а иногда скрипт подвешивает квик. Логи иногда заканчиваются строкой &quot;стопзаявка исполнена&quot;, а иногда &quot;запомнили номер заявки&quot;.<br /><br />Кусочек скрипта:<br /><br />if bit.band(stop_order.flags,0x2)==0x0 and bit.band(stop_order.flags,0x1)==0x0 then<br />to_log(tostring(SECCODE)..&quot; Cтоп-заявка № &quot;..tostring(NO)..&quot; исполнена.&quot;)<br /> &nbsp; <br />if stop_order.linkedorder &gt; 0 then<br />OrderNum_CLOSE = stop_order.linkedorder;<br />to_log(tostring(SECCODE)..&quot; Запоминаем номер созданной стоп-заявкой заявки - № &quot;..tostring(OrderNum_CLOSE))<br />while Run and close_pos == 0 do<br />for i=0,getNumberOf(&quot;trades&quot;)-1 do<br />local trade = getItem(&quot;trades&quot;, i);<br />if trade.order_num == OrderNum_CLOSE then<br />EPSL = trade.price<br />to_log(tostring(SECCODE)..&quot; Цена исполнения стоп-заявки - &quot;..tostring(EPSL))<br />close_pos = 2<br />break;<br />end;<br />end;<br />sleep(100); <br />end<br />end<br />end <br />
			<i>25.01.2018 11:13:21, sav 312.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message28746/topic3339/</link>
			<guid>http://forum.quik.ru/messages/forum10/message28746/topic3339/</guid>
			<pubDate>Thu, 25 Jan 2018 11:13:21 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
