<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ? форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Sun, 03 May 2026 05:26:40 +0300</pubDate>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66994/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_pngoB2ZH" href="/user/14523/" bx-tooltip-user-id="14523">BlaZed</a>, Я тоже ленивый, но я люблю максимально автоматизировать все что нужно. Да, бывают проблемы у провайдера, но по мне лучше торговать при полной уверенности, что все проблемы решены, а данные не потеряны. Да, лучше пропустить время торговли - велика беда: она и так прерывается на перерывы в сессиях, выходные и праздники. И у моего скрипта нет проблем с удачными моментами для входа. Да и для выхода, пожалуй, тоже. И на месяц свалить на отдых и быть уверенным что скрипт не оставит тебя без штанов из-за каких-то страшных сбоев. Например, было у меня пару раз: включаю комп, а у меня там акций нет, денег нет, куда всё подевалось - непонятно. Потом проходит время - всё восстановилось, можно торговать. В конце концов, можно и удалённо запустить всё, что нужно.<br /><br />У меня у одного брокера двухфакторная авторизация, а у другого по ключу. Если уж автоматизировать, то лучше без двухфакторной. При моей технике торговли, конечно, почти по барабану, но автоматизировать это дело - нафиг, нафиг. <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>20.11.2022 20:03:31, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66994/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66994/topic7726/</guid>
			<pubDate>Sun, 20 Nov 2022 20:03:31 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66993/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_Asgrm81u" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />А зачем?<br />=============<br />Как вам ответить, ленивый я, и люблю максимально автоматизировать все что можно.<br />Чтобы не было необходимости постоянного ручного контроля.<br />Не хочу я каждое утро включать комп как вы, у меня он всегда включен.<br />Бывают же проблемы у провайдера, например порвалась интернет сессия потом восстановилась.<br />В моем случае скрипт просто заново подключится к брокеру.<br />А у вас? Руками подключаться, пропустив время торговли, когда возможно были удачные моменты для входа?<br /><br />Ну или у меня настроено автоматическое получение обновлений винды, после которых при необходимости по ночам перезагружается система.<br />Абсолютно пофигу, комп перезагрузится, пользователь автоматом залогинится, квик стартанет и подключится к брокеру, а утром продолжит торговлю как ни в чем не бывало.<br /><br />Да даже банально свет выключили, а ИБП не выдержала долгого отключения. Когда дадут свет, все заведется и будет работать.<br /><br />Или на месяц свалить на отдых и быть уверенным что торговля идет как и задумано.<br /><br />По мне так сплошные плюсы<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_5CSIeCCF" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />зачем автоматизировать потенциально аварийную ситуацию?<br />=============<br />А где тут вы увидели &quot;потенциально аварийную ситуацию&quot;?<br />Пару лет, если не больше работает так, аварий не наблюдал ни разу.<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_KeK6RyJv" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />Не говоря уже про двухфакторную аутентификацию - там ведь и обратную связь нужно иметь, причём по независимому каналу.<br />=============<br />Вот тут есть ваша правда, полностью независимого канала я этим лишился, комп имеет доступ к СМСкам, но это осознанные потери.<br />Скажем так, автоматическая двухфакторная авторизация лучше чем полное отсутствие двухфакторной авторизации, но хуже чем через независимый канал. <br />
			<i>20.11.2022 19:26:29, BlaZed.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66993/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66993/topic7726/</guid>
			<pubDate>Sun, 20 Nov 2022 19:26:29 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66991/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_F6ukBuv5" href="/user/14523/" bx-tooltip-user-id="14523">BlaZed</a>, А зачем? У меня сейчас торгующий комп вообще выключен, завтра утром включу. У Бориса, насколько я знаю, собственный сервер, и у него скрипт может вообще не выключаться долгое время, но, во-первых, это довольно редко встречается и, во-вторых, зачем автоматизировать потенциально аварийную ситуацию? Не говоря уже про двухфакторную аутентификацию - там ведь и обратную связь нужно иметь, причём по независимому каналу. <br />
			<i>20.11.2022 18:04:15, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66991/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66991/topic7726/</guid>
			<pubDate>Sun, 20 Nov 2022 18:04:15 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66990/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_4VpRehyf" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />Какое отношение скрипт имеет к авторизации?<br />Это дело Квика, но никак не скрипта - автоматическая авторизация не может быть реализована на любом языке.<br />=============<br />Ну если квик не умеет автоматическую авторизацию, то приходится реализовывать это самостоятельно.<br />====quote====<br /><a class="blog-p-user-name" id="bp_250Hk021" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />А скрипту она совершенно по барабану (моему, во всяком случае).<br />=============<br />Так моему тоже )))<br /><br />Есть торговый скрипт, а есть скрипт для авторизации.<br />И это совершенно разные скрипты с разным функционалом. <br />
			<i>20.11.2022 17:44:19, BlaZed.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66990/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66990/topic7726/</guid>
			<pubDate>Sun, 20 Nov 2022 17:44:19 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66989/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_T7TR1QJC" href="/user/15842/" bx-tooltip-user-id="15842">Рустем</a> написал:<br />А чм вы автологинитесь ? <br />При помощи w32.dll ?<br />=============<br />Скриптом, используя функционал библиотеки w32.dll<br />Тут на форуме есть пользователь swerg, его сборкой библиотеки пользуюсь, отличная вещь. <br />
			<i>20.11.2022 17:39:12, BlaZed.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66989/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66989/topic7726/</guid>
			<pubDate>Sun, 20 Nov 2022 17:39:12 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66955/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_KDkNHeP2" href="/user/14523/" bx-tooltip-user-id="14523">BlaZed</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/14299/" target="_blank" rel="nofollow">Владимир</a></noindex> написал:<br />А что, собссно, нельзя реализовать на луа?<br />=============<br /> Например автологин и прохождение двухфакторной авторизации на &quot;чистом&quot; луа без доп. библиотек и сторонних утилит даже на представляю как сделать.<br />А это весьма нужный функционал для автоматизации на мой взгляд.<br />=============<br />А чм вы автологинитесь ? <br />При помощи w32.dll ? <br />
			<i>19.11.2022 14:14:37, Рустем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66955/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66955/topic7726/</guid>
			<pubDate>Sat, 19 Nov 2022 14:14:37 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66948/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_DGQ2r5Ex" href="/user/14523/" bx-tooltip-user-id="14523">BlaZed</a>, Какое отношение скрипт имеет к авторизации? Это дело Квика, но никак не скрипта - автоматическая авторизация не может быть реализована на любом языке. По крайней мере, НЕ ДОЛЖНА - на то она и авторизация. А скрипту она совершенно по барабану (моему, во всяком случае). Если авторизация не прошла, значит, данные перестали поступать, скрипт работает, но не торгует. Для него это точно такая же ситуация, когда торговая сессия закончилась. А когда данные пошли, скрипт встрепенулся и начал торговать. Авторизация - В ПРИНЦИПЕ не его собачье дело. <br />
			<i>19.11.2022 11:57:50, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66948/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66948/topic7726/</guid>
			<pubDate>Sat, 19 Nov 2022 11:57:50 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66945/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_4sND8MMr" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />А что, собссно, нельзя реализовать на луа?<br />=============<br />Например автологин и прохождение двухфакторной авторизации на &quot;чистом&quot; луа без доп. библиотек и сторонних утилит даже на представляю как сделать.<br />А это весьма нужный функционал для автоматизации на мой взгляд. <br />
			<i>19.11.2022 09:08:08, BlaZed.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66945/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66945/topic7726/</guid>
			<pubDate>Sat, 19 Nov 2022 09:08:08 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66931/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_jsL8OWF7" href="/user/14523/" bx-tooltip-user-id="14523">BlaZed</a>, Нет, совершенно серьёзно спрашиваю. У меня тоже четверть, если не треть кода посвящена компенсации глюков системного софта, но это всего лишь объём кода, а не алгоритмические навороты. Концептуально их совсем немного, и практически все их я не раз перечислял. Если их соблюдать, то и кода они требуют не так уж много. У меня вот Ваш пример выполняется так:<br />a&#91;i&#93;&#91;2&#93;&#91;0&#93;=tonumber(getParamEx(a&#91;i&#93;&#91;0&#93;&#91;0&#93;,a&#91;i&#93;&#91;0&#93;&#91;1&#93;,&quot;LAST&quot;).param_value);<br />И НИКАКИХ дополнительных проверок не делается - алгоритм торговли достаточно устойчив к тому, что бы там ни пришло. Единственное - в некоторых местах эта падла иногда возвращает nil - алгоритм бы и с этим справился, но при всяких там сравнениях скрипт начинает вылетать, а это совсем уж свинство, так что приходится извращаться вроде:<br />if n==nil or n.trans_id==nil or n.order_num==nil or n.trade_num==nil or n.sec_code==nil or n.flags==nil or n.qty==nil or n.price==nil then ...<br />Но это ТОЛЬКО при обращении к библиотечным функциям, которые у меня минимизированы до безобразия - в основном, именно по этой причине. По той же причине и обилию версий я с самого начала постановил: &quot;никаких библиотек - только голый Луа&quot;. Потом &quot;никаких потоков - всё делаем в потоке мейна&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" /> <br /><br />Нет, это не Квика &quot;основная беда в том, что нет гарантии что &nbsp;ты получишь данные, а если получил их, то это еще не значит, что они &nbsp;будут корректными&quot; - это любой многопроцессорный комплекс с ними сталкивается. В любой системе &quot;клиент-сервер&quot; нет гарантии ни в том, что запрос дойдёт по назначению, ни что ответ прибудет, а если прибудет, то без ошибок. Вот за динамическую типизацию действительно яйца бы пообрывал. Тем не менее, согласен: &quot;скрипт как-то стабильно работает&quot;. Сегодня после семи, правда, не было ни одной сделки ни у одного из брокеров, но оба Квика нормально работают. Думаю, это просто конец пятницы тому причиной.<br /><br />Да, я тоже &quot;всегда обновлялся практически сразу&quot;, как только брокер рекомендовал обновить - мне тоже всегда было плевать и на версию Квика и версию языка. Но сначала у моей сестры обновлённый Квик напрочь отказался работать, причём она торгует вручную, без скриптов вообще, потом у меня &quot;девятка&quot; стала какие-то кренделя выписывать, и я просто отмотал взад на восемь, не разбираясь во всём этом дерьме. Пока работает...<br /><br />А что, собссно, нельзя реализовать на луа? Естественно, я тоже про автоматизацию торговли - сроду не сидел перед монитором постоянно. Да я и торговать-то не умею. <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.11.2022 22:02:03, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66931/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66931/topic7726/</guid>
			<pubDate>Fri, 18 Nov 2022 22:02:03 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66928/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_ntPvEeT9" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />КАКИЕ ИМЕННО &quot;костыли&quot; позволяют добиться стабильной работы?<br />=============<br />Шутить изволите?<br />Да у меня значительную часть кода занимают костыли, которыми проверяю как факт доставки, так и корректность получаемых данных и даже передаваемых данных.<br />Ну как пример<br />
====code====
<pre>&nbsp;&nbsp;&nbsp;&nbsp;local param=getParamEx2(class_code,sec_code,"LAST")
&nbsp;&nbsp;&nbsp;&nbsp;if(param.result=="1")and(param.param_image~="")and(param.param_type=="1")and(tonumber(param.param_value)~=0)then params&#91;"LAST"&#93;=tonumber(param.param_value) end</pre>
=============
и вот без подобных проверок на каждый чих замучаешься потом ошибки ловить, и будешь кричать на весь форум что квик говно.<br /><br />У квика, на мой взгляд, основная беда в том, что нет гарантии что &nbsp;ты получишь данные, а если получил их, то это еще не значит, что они &nbsp;будут корректными.<br />С отправляемыми данными из-за динамической типизации та же беда, надо всегда убеждаться что они корректные.<br />Зато если убедился что с данными полный порядок, то скипт как-то стабильно работает, ну если руки не из жопы, конечно.<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_Jo2uct6U" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br /> А вот Квик я как раз поменял, с девятой версии снова на восьмую. &nbsp;Десятку даже не пытался ставить, но по здешним отзывам она хуже даже &nbsp;девятки.<br />=============<br />Всегда обновлялся практически сразу, как только арка обнову выкатывала.<br />По-крайней мере всё что мне надо, работает начиная с седьмой и по десятую.<br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_KaQIxVVJ" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />И что Луа есть полное дерьмо, но писать нужно именно на нём, тоже говорил.<br />=============<br />Предпочтительно писать на луа, это да.<br />Но далеко не все можно реализовать на луа.<br />Я не про непосредственно торговлю, а про автоматизацию торговли, чтобы не сидеть перед монитором постоянно. <br />
			<i>18.11.2022 19:55:06, BlaZed.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66928/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66928/topic7726/</guid>
			<pubDate>Fri, 18 Nov 2022 19:55:06 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66926/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_2Fzh0HcX" href="/user/14523/" bx-tooltip-user-id="14523">BlaZed</a>, Ну-ну, шайбу! КАКИЕ ИМЕННО &quot;костыли&quot; позволяют добиться стабильной работы? Я тоже не помню когда в свои скрипты последний раз серьёзные правки вносил, но именно потому, что я давно вылизал всю &quot;техническую&quot; часть и минимизировал общение с Квиком до абсолютно необходимого минимума. Да и к алгоритмам давно претензий нет - по крайней мере, при торговле акциями: меня ВААПЩЕ перестало интересовать, что он там продаёт и что покупает. Вот с фьючерсами (относительно новый для меня рынок) кое-какие шероховатости алгоритмов просматриваются, но и там скрипт торгует сам с утра до вечера, а я только логи просматриваю и кумекаю, нельзя ли что улучшить.<br /><br />А я этого брокера не только менять не собираюсь, но и не имею к нему ни малейших претензий и желать лучшего не хочу. Второй (исторически первый) брокер похуже, но тоже вполне терпимый. А вот Квик я как раз поменял, с девятой версии снова на восьмую. Десятку даже не пытался ставить, но по здешним отзывам она хуже даже девятки.<br /><br />Да, &quot;мой робот 100500 инструментов одновременно торгует и зарабатывает&quot;. Не 100500, конечно, около сотни, из которых в районе полусотни имеются в портфеле, но когда можно было торговать долларовыми и евровыми акциями, рынок был куда интереснее и полторы-две тысячи тикеров он спокойно отслеживал. И сам я тыщу раз говорил, что &quot;Квик это всего лишь инструмент, но работать на нём можно&quot;. И что Луа есть полное дерьмо, но писать нужно именно на нём, тоже говорил. <br />
			<i>18.11.2022 17:56:07, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66926/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66926/topic7726/</guid>
			<pubDate>Fri, 18 Nov 2022 17:56:07 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66910/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_K6iEP0wL" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />Здесь ни в чём нельзя быть уверенным наверняка, и никакие костыли от этого не спасут.<br />=============<br />Ну зачем так категорично-то?<br />Спору нет, в Квике проблем хватает, но с помощью &quot;костылей&quot; вполне можно добиться стабильной работы.<br />Я так уже и не помню когда в свои скрипты последний раз серьезные правки вносил, только мелочи всякие причесываю, да стратегию немного корректирую под текущие условия.<br />Торгуют роботы, деньгу приносят и никаких проблем не наблюдается.<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_y62Lowez" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />Я уже приводил пример, что данные портфеля ЧАСАМИ могут лежать неправильными.<br />=============<br />Я бы после подобного брокера сменил.<br /><br /><br />Зачем постоянно на квик ругаться?<br />Вы же тут сами постоянно пишете, что ваш робот 100500 инструментов одновременно торгует и зарабатывает.<br />Квик это ж всего лишь инструмент, со своими, конечно, косяками, но работать на нем вполне можно. <br />
			<i>18.11.2022 14:36:40, BlaZed.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66910/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66910/topic7726/</guid>
			<pubDate>Fri, 18 Nov 2022 14:36:40 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66894/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_bAgH5y0A" href="/user/15842/" bx-tooltip-user-id="15842">Рустем</a>, Здесь ни в чём нельзя быть уверенным наверняка, и никакие костыли от этого не спасут. Я уже приводил пример, что данные портфеля ЧАСАМИ могут лежать неправильными. И причин этому рассогласованию может быть великое множество. В Вашем случае, например, нельзя положить один контракт в портфель &quot;навечно&quot;, ибо у фьючерсов нет ничего &quot;вечного&quot;, а правильный ответ по контролируемому параметру вовсе не гарантирует, что уже подгрузились данные по портфелю - может, подгрузились только эти, которые проверяются, а остальных ещё ждать и ждать. У меня и вообще был восхитительный случай, я о нём писал: специально написанная для этой цели библиотечная функция (getDepoEx) в какой-то момент просто перестала работать. А техподдержка просто и нагло забанила ту ветку. Короче: спасение утопающих дело рук самих утопающих. Так что следует как можно меньше обращаться к любому системному софту, только в случае КРАЙНЕЙ необходимости. <br />
			<i>18.11.2022 09:42:01, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66894/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66894/topic7726/</guid>
			<pubDate>Fri, 18 Nov 2022 09:42:01 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66888/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_eazUOVeJ" href="/user/14523/" bx-tooltip-user-id="14523">BlaZed</a> написал:<br /> Нет четкого триггера.<br />Есть только определенная вероятность того, что данные получены.<br /><br />Я, например, опрашиваю таблицу, пока ее размер не станет больше нуля, но не дольше заданного времени.<br />Если время прошло, а таблица все-еще пустая, то считаем что позиций нет.<br /><br /> Метод весьма далек от идеала, но лучшего не нашел.<br /><br />PS: В свое время рассматривал еще один вариант.<br />Перед проверками поставить один лот на покупку по минимально возможной цене (чтобы точно не сработала заявка), и тут же снять его.<br />После чего ждать пока в таблице позиций не появится нужный инструмент, а он обязан будет появиться.<br />=============<br /><br />Спасибо за подробный и конструктивый ответ.<br />Я видимо положу один контракт в портфель &quot;навечно&quot;, чтобы наверняка знать, что если ответ getNumberOf(&#39;FUTURES_CLIENT_HOLDING&#39;) = 0, значит еще не подгрузились данные по портфелю. <br />
			<i>18.11.2022 00:49:19, Рустем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66888/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66888/topic7726/</guid>
			<pubDate>Fri, 18 Nov 2022 00:49:19 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66856/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_zokVlA3Z" href="/user/15842/" bx-tooltip-user-id="15842">Рустем</a> написал:<br />Что является для программы триггером что можно начать анализировать данные и торговать ?<br />=============<br />Нет четкого триггера.<br />Есть только определенная вероятность того, что данные получены.<br /><br />Я, например, опрашиваю таблицу, пока ее размер не станет больше нуля, но не дольше заданного времени.<br />Если время прошло, а таблица все-еще пустая, то считаем что позиций нет.<br />
====code====
<pre>function FuturesClientHolding() -- Первоначальное заполнение позиций по срочному рынку
&nbsp;&nbsp;params&#91;"TOTALNET"&#93;&nbsp;&nbsp;= 0 -- Текушие позиции
&nbsp;&nbsp;params&#91;"OPENSELLS"&#93; = 0 -- Активная продажа
&nbsp;&nbsp;params&#91;"OPENBUYS"&#93;&nbsp;&nbsp;= 0 -- Активная покупка
&nbsp;&nbsp;local n=0
&nbsp;&nbsp;while (runStatus==3)and(n&#60;try_count)and(getNumberOf('FUTURES_CLIENT_HOLDING')==0) do -- Ждем заполнения таблицы "Позиции по клиентским счетам (фьючерсы)"
&nbsp;&nbsp;&nbsp;&nbsp;if(n==0)then message("&#91;"..account.."&#93; Ждем... Позиции по клиентским счетам") end
&nbsp;&nbsp;&nbsp;&nbsp;sleep(loop_timeout) n=n+1
&nbsp;&nbsp;end
&nbsp;&nbsp;if(getNumberOf('FUTURES_CLIENT_HOLDING')&#62;0)then -- Таблица "Позиции по клиентским счетам (фьючерсы)" заполнена
&nbsp;&nbsp;&nbsp;&nbsp;for i=0,getNumberOf('FUTURES_CLIENT_HOLDING')-1 do
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local tbl=getItem('FUTURES_CLIENT_HOLDING', i)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(type(tbl)=="table")and(tbl&#91;'firmid'&#93;==firmid)and(tbl&#91;'trdaccid'&#93;==account)and(tbl&#91;'sec_code'&#93;==sec_code)and(tbl&#91;'type'&#93;==0)then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;params&#91;"TOTALNET"&#93;&nbsp;&nbsp;= tbl&#91;'totalnet'&#93;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;params&#91;"OPENSELLS"&#93; = tbl&#91;'opensells'&#93;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;params&#91;"OPENBUYS"&#93;&nbsp;&nbsp;= tbl&#91;'openbuys'&#93;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;end
&nbsp;&nbsp;message("&#91;"..account.."&#93; Позиции: Текущие="..params&#91;"TOTALNET"&#93;.." Покупка="..params&#91;"OPENBUYS"&#93;.." Продажа="..params&#91;"OPENSELLS"&#93;)
end

</pre>
=============
Метод весьма далек от идеала, но лучшего не нашел.<br /><br />PS: В свое время рассматривал еще один вариант.<br />Перед проверками поставить один лот на покупку по минимально возможной цене (чтобы точно не сработала заявка), и тут же снять его.<br />После чего ждать пока в таблице позиций не появится нужный инструмент, а он обязан будет появиться. <br />
			<i>17.11.2022 12:27:18, BlaZed.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66856/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66856/topic7726/</guid>
			<pubDate>Thu, 17 Nov 2022 12:27:18 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66838/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_901hkLVJ" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br />прикольно, что вам помогают, а вы с претензиями что &nbsp;не врубаетесь и виновато зеркало.<br />=============<br />Прошу прощения за неуместный выпад с моей стороны. <br /><br />Я менял вопрос пытаясь его уточнить, т.к. не получал ответа на свой вопрос.<br />====quote====<br />Если у брокера есть ваши деньги либо активы колбеки будут при загрузке и обновлении экрана. <br /> Ну а если ничего нет, то на экране тоже все пусто.<br /><br />=============<br />Не совсем понял про &quot;экран&quot;.<br />Программа на LUA ничего не знает про экран, а пытается понять ситуацию посредством API.<br /><br /><br />====quote====<br />Я Вам уже сказал что данные приходят самые свежие.<br />Если Вы уже купили что-то то это уже есть в таблице<br />а таблица всегда придет вся<br />никто не станет вам посылать по кусочкам.<br />=============<br />Да, я видел этот ваш ответ.<br />Но они не отвечанет на мой вопрос о том, как понять что все начальные данные при коннекте (и его восстановлении) полученны.<br />Судя по всему, вы сначала запускаете QUIK &nbsp;и после того как он получил все данные - вы сами ручками запускаете скрипт.<br />Т.е. вы визуально убедились что данные подгрузились.<br /><br />Мой вопрос касается ситуации, когда человек не участвует в этом процессе.<br /><br />Например, запустили QUIK и он сам автоматом запустил скрипт, т.к. он был запущен при последнем выходе из QUIK.<br />Или QUIK потерял соединения с сервером и переустановил его.<br />В обоих случаях в QUIK приходят все данные заново. Это занимаети до пол-минуты и больше.<br /><br />Вопрос:<br />Как при этом программа может узнать, что пришли все колбеки по эккаунту и все данные адекватные ?<br />(например API предполагает, что отсутствие колбека по инструменту в портфеле надо трактовать как отсутствие позиции по нему.)<br />Что является для программы триггером что можно начать анализировать данные и торговать ? <br />
			<i>16.11.2022 16:40:14, Рустем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66838/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66838/topic7726/</guid>
			<pubDate>Wed, 16 Nov 2022 16:40:14 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66831/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			если Вы не догнали, то вот копия моего ответа на ваш вопрос темы:<br />---------------<br /><B>Если у брокера есть ваши деньги либо активы колбеки будут при загрузке и обновлении экрана.</B><br /><B>Ну а если ничего нет, то на экране тоже все пусто.</B><br /><B>-------------------------</B><br /><B>Я Вам уже сказал что данные приходят самые свежие.</B><br /><B>Если Вы уже купили что-то то это уже есть в таблице</B><br /><B>а таблица всегда придет вся</B><br /><B>никто не станет вам посылать по кусочкам.</B> <br />
			<i>16.11.2022 06:58:40, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66831/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66831/topic7726/</guid>
			<pubDate>Wed, 16 Nov 2022 06:58:40 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66830/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			если у Вас теперь нет позиции, то на каком &nbsp;<B>эккаунте есть позиции?</B> <br />
			<i>16.11.2022 06:51:59, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66830/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66830/topic7726/</guid>
			<pubDate>Wed, 16 Nov 2022 06:51:59 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66829/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_v2nZ1YTo" href="/user/15842/" bx-tooltip-user-id="15842">Рустем</a> написал:<br />После перезапуска терминала, если автозапускается скрипт, то ф-я getNumberOf(&quot;futures_client_holding&quot;) выдет 0, хотя на эккаунте есть позиции.Есть какой-то способ проверить, что все данные пользоватьеля подгузились ?<br />=============<br />вообще-то я для Вас написал и скопировал из документации.<br />------------------------<br />Я ответил на ваш вопрос, который вы задали в начале темы.<br />--------------<br />После перезапуска терминала, если автозапускается скрипт, то ф-я getNumberOf(&quot;futures_client_holding&quot;) выдет 0,<B> хотя на эккаунте есть позиции.</B><br />Есть какой-то способ проверить, что все данные пользоватьеля подгузились ?<br />------------------<br />Теперь Вы изменили свой вопрос и с претензиями что Вам на него не ответили.<br />--------------------<br />прикольно, что вам помогают, а вы с претензиями что &nbsp;не врубаетесь и виновато зеркало. <br />
			<i>16.11.2022 06:50:26, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66829/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66829/topic7726/</guid>
			<pubDate>Wed, 16 Nov 2022 06:50:26 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66828/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_47jR6msU" href="/user/15842/" bx-tooltip-user-id="15842">Рустем</a>, Ну дык я всегда знаю, что у меня, где, сколько и почём - скрипт же САМ ведёт портфель. И все до единой заявки лимитные. А вот отлавливать бывшие OnTrade ОЧЕНЬ вредно. Я когда-то был в полном ахуе, когда запустил скрипт в субботу, а мне с полсотни пятничных сделок прилетело. Только по идентификатору транзакции, который, слава богу, я формирую сам.<br /><br />О, господи! Есно, программно проинициализировать. Прямо в мейне, который у меня и начинается именно с инициализации. <br />
			<i>15.11.2022 22:31:44, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66828/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66828/topic7726/</guid>
			<pubDate>Tue, 15 Nov 2022 22:31:44 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66827/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_jV0PNUoU" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />И разговариваю я с ним только на языке sendTransaction-OnTrade-getParamEx.<br /><br />=============<br />У меня для принятия решения о торговле, надо еще знать состояние портфеля - есть ли в нем уже позиция и какого она размера ? :)<br />С момента последнего запуска могло пройти время, и состояние портфеля могло измениться &nbsp;- могли сработать лимитные заявки.<br />Можно конечно при запуске отлавливать бывшие OnTrade(), но мы всеравно упираемся в проблему описанную мной выше - полученные данные окончательные, или это еще не все onTrade() прилетели.<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_5MufeaaV" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br />А какие проблемы &quot;проинициализировать свои данные при запуске робота&quot;? Они же свои!<br />=============<br />Так и хочется избежать что-то делать ручками :)<br />Хочется программно проинициализировать. <br />
			<i>15.11.2022 21:53:26, Рустем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66827/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66827/topic7726/</guid>
			<pubDate>Tue, 15 Nov 2022 21:53:26 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66826/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_RAonPSZK" href="/user/15842/" bx-tooltip-user-id="15842">Рустем</a>, Да мне ваще насрать на onDisconnected. Проблемы со связью - это проблемы Квика, а не мои. Мой скрипт общается только с Квиком - он для него и брокер, и биржа. И разговариваю я с ним только на языке sendTransaction-OnTrade-getParamEx.<br /><br />А какие проблемы &quot;проинициализировать свои данные при запуске робота&quot;? Они же свои! Мой скрипт вообще не использует ни onConnected, ни getInfoParam, ни локальное время компьютера, ни серверное время, ни... Вот getNumberOf - использую. Один раз на весь скрипт и раз десять в сутки во время его работы, и только для таблицы заявок (когда хочу снять несработавшую заявку). И у меня всегда актуальная инфа о позиции в портфеле после запуска скрипта! <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>15.11.2022 20:22:01, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66826/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66826/topic7726/</guid>
			<pubDate>Tue, 15 Nov 2022 20:22:01 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66825/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_f2yN8aN6" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br /> Рустем , Я говорил об ошибках в коде не в смысле потери соединения, а в том, что &quot;QUIK подвисает примерно раз в 2 дня&quot;. А уж то, что он при потере связи самостоятельно восстанавливает соединение, я видел тыщу раз - хотя бы по его диагностике &quot;соединение установлено&quot; или &quot;соединение установить не удалось&quot;. Любой браузер делает примерно то же самое.<br />=============<br />В API браузера есть возможность повторить запрос.<br />А тут программе приходит событие onDisconnected() и все.. Ничего сделать нельзя.<br />Можно только надеяться, что QUIK восстановит соединениеи и придет OnConnected()<br />Но QUIK не всегда восстанавливает соединение.<br />Никакого програмного способа переконнектиться к серверу, API не предоставляет.<br />Что делаете вы в таком случае ?<br /><br />====quote====<br />Вот уж что-что, а &quot;наблюдение за процессом глазами&quot; есть просто дискредитация самой идеи автоматической торговли. В моём скрипте есть даже &quot;спящий режим&quot;, когда скрипт вообще ничего не показывает &quot;для глаз&quot;, а только потихоньку тикает таймер, чтобы показать, что скрипт работает, а не висит. <br />=============<br />100%. На нормальном API от IB &nbsp;у меня робот работает с 2008 года, не требуя никакого вмешательства.<br /><br /><br />====quote====<br />Вот уж что-что, а &quot;наблюдение за процессом глазами&quot; есть просто дискредитация самой идеи автоматической торговли. В моём скрипте есть даже &quot;спящий режим&quot;, когда скрипт вообще ничего не показывает &quot;для глаз&quot;, а только потихоньку тикает таймер, чтобы показать, что скрипт работает, а не висит. <br />=============<br />У меня тоже есть и отслеживаются состояния размещения заявки.<br />И я их тестирую на обрывах соединения. Если бы QUIK не рвал связь раз в 10 мин, я бы сам ее рвал, чтобы отладить код для обработки таких событий.<br />При переходе от одного статуса к другому (например, с &quot;послал на сервер&quot; к &quot;получил подтверждение от сервера&quot;), нужен таймаут. Иначе программа подвиснет в ожидании того, что QUIK ей может никогда не прислать. Выход по таймауту - это повод оставовить торговлю до разбирательства.<br />Вот таких &quot;выходов&quot; с QUIK очень много.<br /><br />Но даже не в этом вопрос, а в том, как проинициализировать свои данные при запуске робота.<br /><br />Например, при последнем подключении я имел позицию в 1 лот и разместил лимитную заявку на ее продажу.<br />Статус заявки был - &quot;получил подтверждение от сервера&quot;.<br /><br />Далее по какой-то причине пришлосm перезапустить QUIK.<br /><br />После подключения к серверу (onConnected), ф-я getNumberOf(&quot;futures_client_holding&quot;) выдет 0.<br />Ладно, знаю что она врет и жду пока getInfoParam(&#39;LASTRECORDTIME&#39;) не &quot;догонит&quot; локальное время компьютера.<br />Но там надо задавать различие в несколько секунд.<br />Если дельту времени задать равным 0 - то из-за разницы между серверным временем и локальным можно подвиснуть навсегда.<br />(наблюдал различие в несколько секунд между серверным временем и локальным. Локальная машина имеет активную синхронизаци с службой времени).<br />А если поставить несколько секунд, то опять проблема - getNumberOf(&quot;futures_client_holding&quot;) выдет 0 еще некоторое время,<br />которое может быть больше этих нескольких секунд, т.к. нет гарантии что именно в этот момент сервер не начал подтормаживать.<br />Поставить задержку от балды - это гарантированный способ получить черных лебедей Насима Талеба.<br /><br />На какое событие в такой ситуации вы смотрите, чтобы быть уверенным, что у вас актуальная инфа о позиции в портфеле после запуска скрипта ?<br /><br />Как я писал выше, очень бы помогло событие onDataLoaded() которое бы приходило после загрузки всех начальных данных.<br />Ну и getNumberOf(&quot;futures_client_holding&quot;) должен выдавать nil а не 0, пока все данные не погрузились. <br />
			<i>15.11.2022 19:05:45, Рустем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66825/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66825/topic7726/</guid>
			<pubDate>Tue, 15 Nov 2022 19:05:45 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66820/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_FyzfoQMO" href="/user/15842/" bx-tooltip-user-id="15842">Рустем</a>, Я говорил об ошибках в коде не в смысле потери соединения, а в том, что &quot;QUIK подвисает примерно раз в 2 дня&quot;. А уж то, что он при потере связи самостоятельно восстанавливает соединение, я видел тыщу раз - хотя бы по его диагностике &quot;соединение установлено&quot; или &quot;соединение установить не удалось&quot;. Любой браузер делает примерно то же самое.<br /><br />Вот уж что-что, а &quot;наблюдение за процессом глазами&quot; есть просто дискредитация самой идеи автоматической торговли. В моём скрипте есть даже &quot;спящий режим&quot;, когда скрипт вообще ничего не показывает &quot;для глаз&quot;, а только потихоньку тикает таймер, чтобы показать, что скрипт работает, а не висит. Что же касается &quot;достоверной инфы про позицию портфеля&quot;, то я поступаю так: а) скрипт сам ведёт учёт содержимого портфеля и кошелька б) после подачи заявки в QUIK данный тикер блокируется до её исполнения или отмены, а потому в) вероятность рассогласования портфелей ничтожна и составляет пару-тройку позиций в неделю (я сверяю портфели &quot;глазами&quot; примерно с такой периодичностью), хотя чаще всего и здесь портфели оказываются идентичными. <br />
			<i>15.11.2022 16:34:39, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66820/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66820/topic7726/</guid>
			<pubDate>Tue, 15 Nov 2022 16:34:39 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66819/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_YgdLPYY2" href="/user/62/" bx-tooltip-user-id="62">nikolz</a> написал:<br /><br /> фантазия не имеет границ.<br />Вы придумываете как спать на потолке.<br />данные приходят блоками, а это не одно число а много.<br />Я Вам уже сказал что данные приходят самые свежие.<br />Если Вы уже купили что-то то это уже есть в таблице<br />а таблица всегда придет вся<br />никто не станет вам посылать по кусочкам.<br />-------------------<br />Не надо придумывать то, что не бывает никогда.<br />================<br />По Вашим рассказам могу сделать вывод, что у вас либо плохой канал связи либо перегружен процессор.<br />Ищите решение Ваших проблем в этом направлении а не придумывайте сказки.<br />=============<br />Никто не спорит с тем, что данные как-то приходят. <br />И в общем-то свежие должны быть.<br /><br />Вы так много в этой ветке понаписали, копистали всякие описания, но так и не ответили на мой вопрос:<br /><br /><span class="bx-font" style="color:#0000ff">Программа запустилась при старте QUIK.</span><br /><span class="bx-font" style="color:#0000ff">Да, пришла пачка колбеков, но в ней нет колбека по конкретной позиции, скажем &quot;CNZ2&quot;, которой программа активно торгует.</span><br /><span class="bx-font" style="color:#0000ff">Как программа может понять что это означает:</span><br /><span class="bx-font" style="color:#0000ff">- в портфеле нет позиций &quot;CNZ2&quot; и ждать бесполезно</span><br /><span class="bx-font" style="color:#0000ff">или</span><br /><span class="bx-font" style="color:#0000ff">- &nbsp;колбек по данной позиции еще просто не успел прийти и надо еще подождать ?</span> <br />
			<i>15.11.2022 16:01:37, Рустем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66819/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66819/topic7726/</guid>
			<pubDate>Tue, 15 Nov 2022 16:01:37 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66818/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_2wV4H4YX" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br /><noindex><a href="/user/15842/" target="_blank" rel="nofollow">Рустем</a></noindex>, Ну, если &quot;QUIK раз в 5-10 минут теряет соединение&quot;, то не только о скоростной торговле, но и вообще о торговле лучше забыть до появления нормального канала связи. То, что он ещё и &quot;подвисает примерно раз в 2 дня&quot;, скорее всего, вызвано ошибками в Вашем коде. Автоматический перезапуск без выяснения причин предыдущего вылета лично я считаю глупостью. Наконец, QUIK &nbsp;в принципе &nbsp;непригоден для высокоскоростной торговли (да и слава богу, ибо такая торговля есть полное дерьмо) - здесь время измеряется секундами. Конечно, народ на этом форуме периодически впадает в маразм и занимается очередной ловлей микросекунд, но всё это чушь собачья.<br />=============<br />QUIK без всякого моего кода раз в 5-10 минут теряет соединение.<br />Канал хороший - 300 mbps, ping до сервера &lt;5ms.<br />Отдельный выделенный комп под QUIK.<br />Сегодня конечно проверю из другой точки, чтобы быть на 100% увекренным что дело не в канале.<br />Но на форумах есть такие же жалобы.<br /><br />Конечно неправильно делать автоматический перезапуск без выяснения причин, но ответа на вопрос - почему QUIK не восстановил соединение мы никогда не получим...<br />Это скорее вынужденное, отчаянное решение.<br />Не хочется к нему прибегать, потому и смотрю в сторону других решений, кроме связки QUIK-LUA.<br /><br />Торговля у меня конечно не миллисекундная, но если нет достоверной инфы про позицию портфеля, то торговать никаким таймфреймом невозможно, без активного наблюдения за процессом глазами.<br />Чего хотелось бы избежать.... <br />
			<i>15.11.2022 15:54:42, Рустем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66818/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66818/topic7726/</guid>
			<pubDate>Tue, 15 Nov 2022 15:54:42 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66809/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_thRIm5VX" href="/user/15842/" bx-tooltip-user-id="15842">Рустем</a>, Ну, если &quot;QUIK раз в 5-10 минут теряет соединение&quot;, то не только о скоростной торговле, но и вообще о торговле лучше забыть до появления нормального канала связи. То, что он ещё и &quot;подвисает примерно раз в 2 дня&quot;, скорее всего, вызвано ошибками в Вашем коде. Автоматический перезапуск без выяснения причин предыдущего вылета лично я считаю глупостью. Наконец, QUIK <B>в принципе</B> непригоден для высокоскоростной торговли (да и слава богу, ибо такая торговля есть полное дерьмо) - здесь время измеряется секундами. Конечно, народ на этом форуме периодически впадает в маразм и занимается очередной ловлей микросекунд, но всё это чушь собачья. <br />
			<i>15.11.2022 09:42:30, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66809/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66809/topic7726/</guid>
			<pubDate>Tue, 15 Nov 2022 09:42:30 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66804/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_jw9erp2D" href="/user/15842/" bx-tooltip-user-id="15842">Рустем</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/62/" target="_blank" rel="nofollow">nikolz</a></noindex> написал:<br /><br />Если у брокера есть ваши деньги либо активы колбеки будут при загрузке и обновлении экрана.<br />=============<br /> Вопрос же не в том, приходят ли вообще колбеки.<br />Да, они как-то приходят.<br />Но по ним нельзя понять состояние портфеля.<br /><br />За время отсутствия коннекта позиция могла быть продана или куплена по ранее размещенной в системе заявке, маржинколу, дейстями юзера и т.д. и т.п.<br /><br />Программа запустилась при старте QUIK.<br />Да, пришла пачка колбеков, но в ней нет колбека по конкретной позиции, скажем &quot;CNZ2&quot;, которой программа активно торгует.<br />Как программа может понять что это означает:<br />- в портфеле нет позиций &quot;CNZ2&quot; и &nbsp;ждать бесполезно <br />или<br />- &nbsp;колбек по данной позиции еще просто не успел прийти и &nbsp;надо еще подождать &nbsp;?<br />=============<br />фантазия не имеет границ.<br />Вы придумываете как спать на потолке.<br />данные приходят блоками, а это не одно число а много.<br />Я Вам уже сказал что данные приходят самые свежие.<br />Если Вы уже купили что-то то это уже есть в таблице<br />а таблица всегда придет вся<br />никто не станет вам посылать по кусочкам.<br />-------------------<br />Не надо придумывать то, что не бывает никогда.<br />================<br />По Вашим рассказам могу сделать вывод, что у вас либо плохой канал связи либо перегружен процессор.<br />Ищите решение Ваших проблем в этом направлении а не придумывайте сказки. <br />
			<i>15.11.2022 06:39:05, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66804/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66804/topic7726/</guid>
			<pubDate>Tue, 15 Nov 2022 06:39:05 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66803/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_7foiagdm" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br /><noindex><a href="/user/15842/" target="_blank" rel="nofollow">Рустем</a></noindex>, Так и в моём случае расхождения портфеля неприемлемы. &nbsp;:: И торговля тоже не особо редкая - почти всегда более сотни сделок в сутки, бывает и по 5-6-7. Да, рассогласование - вещь весьма неприятная, но довольно редкая. А вот &quot;альтернативные решения&quot; как раз и дают во много раз больше ошибок - там ведь действительно бывают задержки в десятки минут и даже более. Для активной торговли это фактически смертный приговор.<br />=============<br />У меня QUIK кроме того что раз в 5-10 минут теряет соединение и потом по пол-минуты его восстанавливает (брокер Финам), еще и подвисает примерно раз в 2 дня.<br />Судя по чатам, я не один с такими проблемами.<br />Если на нем оставаться, надо еще внешний watchdog писать, чтобы его перезапускал.<br /><br />Под альтернативными решениями я имел в виду те, что расчитанны на высокоскоростную торговлю.<br />Смотрю, изучааю. Пока не видно сюрпризов.<br />Но по хорошему понятно станет недели через 2.<br />Пока приходится писать парсеры на всякие дурацкие XML-и :) <br />
			<i>15.11.2022 04:41:43, Рустем.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66803/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66803/topic7726/</guid>
			<pubDate>Tue, 15 Nov 2022 04:41:43 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message66757/topic7726/">Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</a></b> <i>Как из скрипта lua узначть что терминал QUIK загрузился полностью и подгрузил данные эккаунта ?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_sMR1U9hJ" href="/user/15842/" bx-tooltip-user-id="15842">Рустем</a>, Так и в моём случае расхождения портфеля неприемлемы. &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" /> И торговля тоже не особо редкая - почти всегда более сотни сделок в сутки, бывает и по 5-6-7. Да, рассогласование - вещь весьма неприятная, но довольно редкая. А вот &quot;альтернативные решения&quot; как раз и дают во много раз больше ошибок - там ведь действительно бывают задержки в десятки минут и даже более. Для активной торговли это фактически смертный приговор. <br />
			<i>13.11.2022 23:49:40, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message66757/topic7726/</link>
			<guid>http://forum.quik.ru/messages/forum10/message66757/topic7726/</guid>
			<pubDate>Sun, 13 Nov 2022 23:49:40 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
