<?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>Sun, 03 May 2026 11:32:25 +0300</pubDate>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message58016/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_36hQy6sZ" href="/user/47/" bx-tooltip-user-id="47"><noindex><a href="mailto:s_mike@rambler.ru" target="_blank" rel="nofollow">s_mike@rambler.ru</a></noindex></a> написал:<br />привязаться к горизонтальному масштабу нет средств<br />=============<br />спасибо за ответ <br />
			<i>17.09.2021 23:31:14, QApplication.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message58016/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message58016/topic6417/</guid>
			<pubDate>Fri, 17 Sep 2021 23:31:14 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message58014/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Нет, не получится так. При масштабировании все съедет<br /><br />у меня ширина меток задаётся в настройках, привязаться к горизонтальному масштабу нет средств <br />
			<i>17.09.2021 23:23:35, s_mike@rambler.ru.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message58014/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message58014/topic6417/</guid>
			<pubDate>Fri, 17 Sep 2021 23:23:35 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message58013/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_VXgZxnV6" href="/user/9868/" bx-tooltip-user-id="9868">QApplication</a> написал:<br />Я хочу в итоге нарисовать прямоугольник между несколькими свечами с заданной высотой<br />=============<br />как-то так должно быть<br />[FILE ID=8383] <br />
			<img src="https://forum.quik.ru/bitrix/components/bitrix/forum.interface/show_file.php?fid=8383&" width="683" height="731" /><br /><i>17.09.2021 22:22:12, QApplication.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message58013/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message58013/topic6417/</guid>
			<pubDate>Fri, 17 Sep 2021 22:22:12 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message58012/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_2VrbgOYb" href="/user/47/" bx-tooltip-user-id="47"><noindex><a href="mailto:s_mike@rambler.ru" target="_blank" rel="nofollow">s_mike@rambler.ru</a></noindex></a> написал:<br />Вы про низкоуровневое рисование по пикселам?<br />=============<br />Я хотел спросить как вы нарисовали горизонтальные объемы <noindex><a href="http://www.bot4sale.ru/images/Articles/VolumeAtPrice/5680189.png" target="_blank" rel="nofollow">здесь</a></noindex> или прямоугольники <noindex><a href="http://www.bot4sale.ru/images/Articles/VolumeAtPrice/VAP-D.png" target="_blank" rel="nofollow">здесь</a></noindex>? Как задавали точки начала (это наверное понято - по меткам) и конца (вот это не понятно). <br />Я хочу в итоге нарисовать прямоугольник между несколькими свечами с заданной высотой. Вот не могу понять как задать координаты. <br />
			<i>17.09.2021 22:16:58, QApplication.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message58012/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message58012/topic6417/</guid>
			<pubDate>Fri, 17 Sep 2021 22:16:58 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message58010/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_3n87HVwm" href="/user/9868/" bx-tooltip-user-id="9868">QApplication</a> написал:<br /> <br />====quote====<br /> &nbsp; &nbsp;s_mike@rambler.ru написал:<br />Как привязаться к временным меткам - так время свечей нам доступно... Если я правильно понимаю вопрос.<br />=============<br /> это я понял. <br /><br />не понятно ка нарисовать линию:<br />QLua &nbsp; &nbsp; &nbsp;
====code====
<pre>&nbsp;&nbsp; line_id_1&nbsp;&nbsp;=&nbsp;&nbsp;line(Point(x1,y1), Point(x2,y2));&nbsp;&nbsp;// как это сделать&nbsp;&nbsp;</pre>
=============
 <br />=============<br />Вы про низкоуровневое рисование по пикселам? В отличие от современных терминалов и программ технализа наш бронтозавр не предоставляет средств низкоуровневого рисования. Можно самому извращаться с winapi, &nbsp;это тупиковая история.<br /><br />Единственные координаты, что мы имеем - это время и цена без возможности пересчеты в актуальные пикселы окна. Лет N назад, где N примерно равно 10, эта тема обсуждалась, помнится разработчик меня даже просил прислать список средств рисования mt5 и Amibrooker (гугл с яндексом в арке под запретом?) но результат мы знаем. <br />
			<i>17.09.2021 18:13:52, s_mike@rambler.ru.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message58010/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message58010/topic6417/</guid>
			<pubDate>Fri, 17 Sep 2021 18:13:52 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message58009/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Выводите метку в виде текста.<br /><br />Скажем |||||||||||||||||||||||||||||||| мелким шрифтом будет выглядеть как линия. Но вот длину придется подбирать опытным путем, т.к. у метки есть только одна координата - начало. <br />
			<i>17.09.2021 18:12:24, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message58009/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message58009/topic6417/</guid>
			<pubDate>Fri, 17 Sep 2021 18:12:24 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message58007/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_ov8Dm7cq" href="/user/47/" bx-tooltip-user-id="47"><noindex><a href="mailto:s_mike@rambler.ru" target="_blank" rel="nofollow">s_mike@rambler.ru</a></noindex></a> написал:<br />Как привязаться к временным меткам - так время свечей нам доступно... Если я правильно понимаю вопрос.<br />=============<br />это я понял. <br /><br />не понятно ка нарисовать линию:<br />QLua &nbsp; &nbsp; 
====code====
<pre> line_id_1 = line(Point(x1,y1), Point(x2,y2));&nbsp;&nbsp;// как это сделать</pre>
============= <br />
			<i>17.09.2021 16:53:16, QApplication.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message58007/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message58007/topic6417/</guid>
			<pubDate>Fri, 17 Sep 2021 16:53:16 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message58006/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_gYqrBqz3" href="/user/9868/" bx-tooltip-user-id="9868">QApplication</a> написал:<br /> <br />====quote====<br /> &nbsp; &nbsp;s_mike@rambler.ru написал:<br />Вот &nbsp;такой &nbsp;вариант. Но не в таблицу выводит, а рисует на графике.<br />=============<br /> &nbsp; &nbsp; s_mike@rambler.ru, как вы рисуете прямоугольники на графике через qlua?<br />Как привязаться к временным меткам (например, от свечи С1 до свечи С2) или работаете через пиксели?<br />=============<br />метки. Других инструментов нам qlua &nbsp;не предоставляет.<br /><br /><br />Как привязаться к временным меткам - так время свечей нам доступно... Если я правильно понимаю вопрос. <br />
			<i>17.09.2021 16:31:28, s_mike@rambler.ru.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message58006/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message58006/topic6417/</guid>
			<pubDate>Fri, 17 Sep 2021 16:31:28 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message58005/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_vyTVlGKC" href="/user/47/" bx-tooltip-user-id="47"><noindex><a href="mailto:s_mike@rambler.ru" target="_blank" rel="nofollow">s_mike@rambler.ru</a></noindex></a> написал:<br />Вот &nbsp;такой &nbsp;вариант. Но не в таблицу выводит, а рисует на графике.<br />=============<br /><a class="blog-p-user-name" id="bp_KRIc61lK" href="/user/47/" bx-tooltip-user-id="47"><noindex><a href="mailto:s_mike@rambler.ru" target="_blank" rel="nofollow">s_mike@rambler.ru</a></noindex></a>, как вы рисуете прямоугольники на графике через qlua?<br />Как привязаться к временным меткам (например, от свечи С1 до свечи С2) или работаете через пиксели? <br />
			<i>17.09.2021 16:13:59, QApplication.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message58005/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message58005/topic6417/</guid>
			<pubDate>Fri, 17 Sep 2021 16:13:59 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message55121/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_BXi0sxgs" href="/user/54/" bx-tooltip-user-id="54">Старатель</a>, в Lua5.1 лок снимается в кажом цикле ВМ, в последующих версиях - только когда это требуется. <br />
			<i>27.04.2021 14:58:51, Артем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message55121/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message55121/topic6417/</guid>
			<pubDate>Tue, 27 Apr 2021 14:58:51 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message55111/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_H1CM79rf" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br />Тогда это тоже атомарная операция:<br />
====code====
<pre>Volume&#91;alltrade.price&#93; = (Volume&#91;alltrade.price&#93; or 0) + alltrade.qty</pre>
=============
<br />=============<br /><br />Проверил в Lua 5.1. Скрипт:<br /><table class="forum-spoiler"><thead onclick="if (this.nextSibling.style.display=='none') { this.nextSibling.style.display=''; BX.addClass(this, 'forum-spoiler-head-open'); } else { this.nextSibling.style.display='none'; BX.removeClass(this, 'forum-spoiler-head-open'); } BX.onCustomEvent('BX.Forum.Spoiler:toggle', [{node: this}]); event.stopPropagation();"><tr><th><div>Скрытый текст</div></th></tr></thead><tbody class="forum-spoiler" style="display:none;"><tr><td>
====code====
<pre>local a = {}
function OnInit()
&nbsp;&nbsp;for i = 1, 100000 do a&#91;i&#93; = 1 end
end

local run = true
function OnStop()
&nbsp;&nbsp;a = nil
&nbsp;&nbsp;run = false
end

function OnAllTrade()
&nbsp;&nbsp;a = nil
&nbsp;&nbsp;run = false
end

function OnParam()
&nbsp;&nbsp;a = nil
&nbsp;&nbsp;run = false
end

function main()
&nbsp;&nbsp;local r
&nbsp;&nbsp;run = true
&nbsp;&nbsp;a&#91;0&#93;=(a&#91;1&#93;or 0)
&nbsp;&nbsp;+ (a&#91;2&#93;or 0)
&nbsp;&nbsp;+ (a&#91;3&#93;or 0)
&nbsp;&nbsp;...&nbsp;&nbsp;-- Тут много строк&nbsp;&nbsp;"+ (a&#91;i&#93;or 0)"
&nbsp;&nbsp;+ (a&#91;99999&#93;or 0)
&nbsp;&nbsp;+ (a&#91;100000&#93;or 0)

&nbsp;&nbsp;r = run
&nbsp;&nbsp;message(tostring(r) .. '; ' .. a&#91;0&#93;, 2)
end</pre>
=============
</td></tr></tbody></table>И получил ошибку типа <br />====quote====<br />16492: attempt to index upvalue 'a' (a nil value)<br />=============<br />Т.е., в Lua 5.1 лок может быть снят в процессе извлечения значения из таблицы.<br />Т.ч., как сказал Антон:<br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_IJwHaBbu" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a> написал:<br />Вероятность, что в версии луа 55.99 станет неатомарным - есть.<br />=============<br /><br />Также в Lua 5.1 при выполнении байт-кода блокировка может быть снята в таких местах:<br />
====code====
<pre>a = b + c
-- тут блокировка может быть захвачена другим потоком
x = y - z</pre>
=============
<br />Стоит также отметить, что в Lua 5.1 байт-код выполняется значительно дольше по сравнению с 5.4. Возможно как раз из-за постоянной борьбы за блокировку между потоками. <br />
			<i>27.04.2021 10:04:23, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message55111/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message55111/topic6417/</guid>
			<pubDate>Tue, 27 Apr 2021 10:04:23 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54913/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_NeiG0KtW" href="/user/13952/" bx-tooltip-user-id="13952">TGB</a>, Подобную реакцию я здесь уже видел (в разговоре с Антоном, кажется). <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> &nbsp;На что отвечал примерно так: &quot;Алгоритмически это именно прерывания, поэтому мне удобнее называть их именно так&quot;. <br />
			<i>18.04.2021 11:20:02, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54913/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54913/topic6417/</guid>
			<pubDate>Sun, 18 Apr 2021 11:20:02 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54912/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_8QS74gBZ" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />Разумеется, sleep там один (тот, который сейчас 300 мс). <br />=============<br /> &nbsp;Ну, так, конечно, понятно. Но все таки терминалогию лучше использовать общепринятую, а то вы меня, своми прерываниями напугали чуть ли не до смерти &nbsp;<img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> <br />
			<i>18.04.2021 11:16:27, TGB.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54912/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54912/topic6417/</guid>
			<pubDate>Sun, 18 Apr 2021 11:16:27 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54908/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_oZUgB9C9" href="/user/13952/" bx-tooltip-user-id="13952">TGB</a>, Разумеется, sleep там один (тот, который сейчас 300 мс). В цикле main вызывается именно этот, самый быстрый обработчик. А на каждые 5 срабатываний этого обработчика вызывается другой, полуторасекундный. А на каждые 10 срабатываний того... короче, всё очень просто: пара счётчиков - и нет проблем. <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> &nbsp;У меня даже три счётчика: 15-секундный, помимо прочего, используется ещё и для снятия несработавших заявок через 5 минут. <br />
			<i>18.04.2021 11:08:43, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54908/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54908/topic6417/</guid>
			<pubDate>Sun, 18 Apr 2021 11:08:43 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54904/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_d6NKrfpO" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />у меня целых три прерывания по таймеру<br />=============<br /> &nbsp; Все sleep, запускаемые в main, с любыми интервалами, будут выполняться последовательно. И мне стало интересно, что вы понимаете под прерыванием по таймеру (надеюсь это не аппаратные прерывания:smile: ). Поэтому, с этого места, пожалуйста, опишите поподробнее. Тела ваших циклов меня не интересуют, но схему их организации вы, наверное, смогли бы привести. <br />
			<i>18.04.2021 10:35:07, TGB.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54904/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54904/topic6417/</guid>
			<pubDate>Sun, 18 Apr 2021 10:35:07 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54899/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_74w6YjEB" href="/user/14644/" bx-tooltip-user-id="14644">Артем</a>, Колбеки-то пусть приходят когда им удобно. Но какая, в жопу, разница, ЧЕМ при этом занимается скрипт? Это же ПРЕРЫВАНИЯ!<br /><br />Ну, хорошо: вот Вам задачка на сообразительность: я недавно где-то писал, что у меня целых три прерывания по таймеру, и самое быстрое из них (я пробовал для него значения 150, 300, 500, 1000, 1500 миллисекунд, остановился на 300) предназначено для обслуживания действий юзера (мышка, клава). Вопрос: ЗАЧЕМ я это делаю, если на действия юзера приходят именно &quot;колбеки когда им удобно&quot;, а обработчики эти устанавливаются по SetTableNotificationCallback? ПРИ ЧЁМ тут вообще таймер, да ещё и самый быстрый? <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> <br /><br /><a class="blog-p-user-name" id="bp_3dYMq3rw" href="/user/13952/" bx-tooltip-user-id="13952">TGB</a>, Согласен, &quot;QLua по существу является однопоточным&quot;, а потому всей этой фигнёй с &quot;проблемами параллелизма (в том числе атомарностью)&quot; не следует озадачиваться. <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> &nbsp; <br />
			<i>18.04.2021 09:44:29, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54899/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54899/topic6417/</guid>
			<pubDate>Sun, 18 Apr 2021 09:44:29 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54896/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Наверное, стоит пояснить, что же представляет собой контекст выполнения функции. Это все, от чего зависит ее результат. &nbsp;А это, в некоторых случаях не только явно задаваемые ее параметры, но и среда, в которой она выполняется. Например, результат файловой операции зависит не только от ее параметров, но и от состояния, в котором находится файл. Если не учитывать остальной контекст файловой операции, а только ее параметры, то можно бы было сказать, что эта операция неоднозначная (при одних и тех же параметра результат может быть разным). При учете всего контекста файловая операция однозначная.<br /> &nbsp;Если бы вы работали без операционной системы (ОС), то в контекст выполнения ваших функций входило бы и все то, чем занимается ОС (прерывания, параллельно работающие ядра ЦП и т.д). На самом деле, корректно реализованные средства разработки программ, в том числе и &nbsp;QLua, локализуют (уменьшают) тот контекст, от которого зависят пользовательские функции. <br /> &nbsp;В QLua, в той реализации как он сейчас есть и в том виде как его используют большинство пользователи (main и колбеки), по существу является однопоточным. А если это так, то, при корректной реализации QLua, проблемами параллелизма (в том числе атомарностью) можно было бы не озадачиваться. <br />
			<i>18.04.2021 07:36:48, TGB.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54896/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54896/topic6417/</guid>
			<pubDate>Sun, 18 Apr 2021 07:36:48 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54894/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_7KM21m9v" href="/user/13952/" bx-tooltip-user-id="13952">TGB</a> написал:<br />являются атомарными.<br />=============<br /> &nbsp;Уточнение. Если скрипт &nbsp;выполняется &nbsp;без "падения". <br />
			<i>17.04.2021 23:33:36, TGB.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54894/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54894/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 23:33:36 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54892/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_nTJjbHPf" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> написал:<br />Volume[alltrade.price] = (Volume[alltrade.price] or 0) + alltrade.qty<br />=============<br /><br />1. Все операторы в QLua (включая функции, запускаемые в колбеках), в &nbsp;том числе с участием атомарных C-функций (выдающих однозначный результат в контексте их запуска), являются атомарными. <br />2. Взаимодействие колбеков с main подробно обсуждалось в ветке «Грядущие изменения на срочном рынке МБ: поддержка работы с 19-значными номе-рами заявок и сделок» и Антон там достаточно детально это описал. <br />
			<i>17.04.2021 23:02:29, TGB.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54892/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54892/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 23:02:29 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54891/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_QN2wK2U5" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a>, кстати вынужден согласиться что здесь колбеки действительно работают как прерывания. Когда я спорил по этому вопросу я допустил ошибку, что предрассудил будто в QUIK используется такая же простая и адекватная система многопоточности скриптовых языков как и во всём остальном мире. <br />
			<i>17.04.2021 22:25:49, Артем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54891/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54891/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 22:25:49 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54890/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Таки нет. Колбеки приходят когда им удобно. При этом тред скрипта может &nbsp;прерываться в любой точке либо не прерываться вообще (с зависанием QUIK) по &nbsp;велению левой пятки хоста и оптимизатора байткода. <br /><br />Судя по всему в примере просто sleep(0) занимает больше всего времени и вероятность что колбек выпадет в этот момент наивысшая. <br />
			<i>17.04.2021 22:22:01, Артем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54890/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54890/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 22:22:01 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54888/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_2tNiBLEc" href="/user/14644/" bx-tooltip-user-id="14644">Артем</a>, Колбеки дёргаются внутри sleep() - и это НОРМАЛЬНО! Фактически sleep есть инструкция интерпретатору: &quot;Скрипт спит - займись чем-нибудь полезным&quot;. У меня именно ВЕСЬ скрипт работает в одном потоке (кроме OnTrade, OnStop и обработчиков событий, повешенных на SetTableNotificationCallback). По-нормальному, там надо бы только проставить какие-то флаги, и обрабатывать их тоже в том же потоке, но этот козёл теряет управление, так что на код OnStop стыдно смотреть. А что делать? Код ужасен, но он, по крайней мере, РАБОТАЕТ! А на стеки, треды и прочую хрень - плевать. Пишем на девственно чистом &nbsp;Lua! <br />
			<i>17.04.2021 21:47:13, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54888/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54888/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 21:47:13 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54887/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			====code====
<pre>i = 1e8
s = ""
function OnStop ( )
&nbsp;&nbsp;&nbsp;&nbsp;i = -i
&nbsp;&nbsp;&nbsp;&nbsp;s = s .. " stop "
&nbsp;&nbsp;&nbsp;&nbsp;return 5000
end



function main ( )
&nbsp;&nbsp;&nbsp;&nbsp;-- sleep = function ( ) end
&nbsp;&nbsp;&nbsp;&nbsp;while i &#62; 0 do i = i - 1; s = "before "; sleep ( 0 ) s = s .. " after" end
&nbsp;&nbsp;&nbsp;&nbsp;message ( s )
end</pre>
=============
Колбеки дёргаются внутри sleep(). Я помнится говорил что можно так сделать, не знаю было ли уже так сделано к тому моменту. То что весь скрипт работает в одном потоке это хорошо. Теперь осталось отсоединить этот поток от главного треда QUIK. Впрочем <a class="blog-p-user-name" id="bp_QkYJIjaw" href="/user/54/" bx-tooltip-user-id="54">Старатель</a> вроде как поймал всю ту же старую ошибку с разрушением стека, может где-то что-то пытается прервать тред скрипта. С многопоточностью в скриптовых языках конечно есть только один надежный подход - не иметь её, на каждый тред создавать отдельную виртуалку. <br />
			<i>17.04.2021 21:30:49, Артем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54887/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54887/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 21:30:49 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54885/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_JW54LVpN" href="/user/14644/" bx-tooltip-user-id="14644">Артем</a>, Да, Вы неправильно поняли. До знакомства с Квиком я и в страшном сне не мог себе представить, что ИНТЕРПРЕТИРУЕМЫЙ код способен подвесить комп, и даже пытался спорить с Антоном. Я был неправ - нет ничего невозможного для нынешнего состава создателей софта! Кстати, реализация &quot;многопоточности&quot; здесь столь же идиотская. <br />
			<i>17.04.2021 20:52:38, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54885/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54885/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 20:52:38 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54884/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_o6rIfmRy" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a>, колбеки из главного треда, как в инструкции написано. Может я инструкцию неправильно понял?<br /><br />====quote====<br />Во время выполнения функции main() Lua скрипт не мешает работе основного функционала РМ QUIK, таким образом, внутри функции main() использование функции sleep() не приводит к «подвисанию» РМ QUIK<br /><br />При использовании событийной модели Lua скрипт выполняется в двух потоках: функции обратного вызова выполняются в основном потоке РМ QUIK, а функция main() в дополнительном потоке РМ QUIK<br />=============<br />А тут у нас подвисание если НЕ использовать sleep() в main(), и события не приходят. <br />
			<i>17.04.2021 20:47:12, Артем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54884/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54884/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 20:47:12 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54883/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_mt6cxYE0" href="/user/14644/" bx-tooltip-user-id="14644">Артем</a>, А чего же ещё Вы хотели при ТАКОМ коде? <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> &nbsp; <br />
			<i>17.04.2021 20:35:33, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54883/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54883/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 20:35:33 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54882/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Хм. При исполнении кода без sleep не то что колбеки не вызываются, а вообще терминал намертво зависает. 8.13.0<br /><br />
====code====
<pre>i = 1e5
run = true
function OnStop ( )
&nbsp;&nbsp;&nbsp;&nbsp;message ( "OnStop" )
&nbsp;&nbsp;&nbsp;&nbsp;run = false
&nbsp;&nbsp;&nbsp;&nbsp;return 5000
end

--sleep = function ( ) end
function main ( )
&nbsp;&nbsp;&nbsp;&nbsp;while run and i &#62; 0 do i = i - 1; sleep ( 0 ) end
&nbsp;&nbsp;&nbsp;&nbsp;message ( tostring ( i ) )
end</pre>
============= <br />
			<i>17.04.2021 20:28:26, Артем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54882/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54882/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 20:28:26 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54881/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_unkXyrdG" href="/user/14644/" bx-tooltip-user-id="14644">Артем</a>, а ещё можно перезаказать обезличенные сделки на боевом квике. <br />
			<i>17.04.2021 19:49:09, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54881/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54881/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 19:49:09 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54880/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_n5rfMvcX" href="/user/14644/" bx-tooltip-user-id="14644">Артем</a>, <br /><noindex><a href="https://arqatech.com/ru/products/quik/basic-sets/quik-broker-training-copy/#anchor-link" target="_blank" rel="nofollow">https://arqatech.com/ru/products/quik/basic-sets/quik-broker-training-copy/#anchor-link</a></noindex> <br />
			<i>17.04.2021 19:47:00, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54880/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54880/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 19:47:00 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Получать объемы сделок</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message54879/topic6417/">Получать объемы сделок</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_Rwkvw0VM" href="/user/54/" bx-tooltip-user-id="54">Старатель</a>, пардон за вопрос, а колбеки есть-ли вообще? В отсутствие торгов вроде нечему их дёргать. <br />
			<i>17.04.2021 19:42:47, Артем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message54879/topic6417/</link>
			<guid>http://forum.quik.ru/messages/forum10/message54879/topic6417/</guid>
			<pubDate>Sat, 17 Apr 2021 19:42:47 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
