<?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>Tue, 12 May 2026 22:29:35 +0300</pubDate>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20783/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Теперь я понял - &nbsp;надо, чтобы одновременно было открыто оба графика. &nbsp;Например, если индикатор &nbsp;на часовом графике, и &nbsp;в нем &nbsp;выполняются &nbsp;какие-то операции с минутными барами, то сначала открываем &nbsp;минутный график и &nbsp;задаем на нем на вкладке «дополнительно» идентификатор. &nbsp;Затем кидаем индикатор на часовой график. &nbsp; <br />
			<i>05.12.2016 11:02:11, Виктор Столетов.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20783/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20783/topic1869/</guid>
			<pubDate>Mon, 05 Dec 2016 11:02:11 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20755/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_BTqMJBuL" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br />Ведь к свечам текущего тайм-фрэйма графика я и так имею доступ с помощью &nbsp;функций O(i), C(i), L(i),H(i),V(i),T(i).day и т.д., после отработки Oncalculate. &nbsp; Зачем же мне &nbsp;использовать функцию getCandlesByIndex?<br />=============<br />getCandlesByIndex имеет смысл использовать если требуется получить доступ <B>не </B>к текущему графику. О чем Вы сами говорили выше.<br />При этом другой график может отличаться чем угодно. Таймфреймом, инструментом, или даже быть другим индикатором. <br />
			<i>05.12.2016 06:58:27, Sergey Gorokhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20755/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20755/topic1869/</guid>
			<pubDate>Mon, 05 Dec 2016 06:58:27 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20741/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			на том сайте есть мой индикатор, который позволяет выводить на графике например 5и минутном, индикатор из любого другого периода, например с часового, или 4х часового. <br />Правда он берет индикатор с линиями, а не свечи. <br /><noindex><a href="https://quikluacsharp.ru/stati-uchastnikov/otobrazhenie-na-grafike-indikatora-iz-drugogo-grafika/" target="_blank" rel="nofollow">https://quikluacsharp.ru/stati-uchastnikov/otobrazhenie-na-grafike-indikatora-iz-drugogo-grafika/</a></noindex> <br />
			<i>04.12.2016 16:20:41, Sergey Denegin.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20741/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20741/topic1869/</guid>
			<pubDate>Sun, 04 Dec 2016 16:20:41 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20732/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_duNufSJj" href="/user/25/" bx-tooltip-user-id="25">Stanislav Tvorogov</a> написал:<br />Интервал будет тот, график которого открыт у Вас в QUIK.<br /><br />=============<br />Это ответ на мой вопрос &quot; где в &nbsp;функции getCandlesByIndex указано, какой тайм-фрэйм?&quot;<br />А до этого три человека утверждали, что функция getCandlesByIndex позволяет из индикатора обращаться к свечам другого тайм-фрэйма. Правда не понятно - каким образом? Ведь в &nbsp;функции getCandlesByIndex нет параметра типа interval. Вроде действительно получается, что можно обращаться &nbsp;только &nbsp;к свечам текущего тайм-фрэйма графика. <br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_konPomks" href="/user/1889/" bx-tooltip-user-id="1889">Sergey Denegin</a> написал:<br />Лично мне очень помог разобраться в Qlua сайт <noindex><a href="http://quikluacsharp.ru/karta-sajta/" target="_blank" rel="nofollow">http://quikluacsharp.ru/karta-sajta/</a></noindex><br /><br />=============<br />Спасибо Сергей за ссылку. На этом сайте изложено более понятно, чем в руководстве по использованию Lua в QUIK, главное - есть примеры на все функции. Если из списка тем выбрать &quot;<noindex><a href="https://quikluacsharp.ru/quik-qlua/poluchenie-v-qlua-lua-dannyh-iz-grafikov-i-indikatorov/" target="_blank" rel="nofollow">Получение в QLua(Lua) данных из графиков и индикаторов</a></noindex>&quot;, то там есть пример вызова функции getCandlesByIndex. Короче в жизни это может выглядеть так:<br /> <br />t,n,l=getCandlesByIndex (&quot;Chart_current&quot;, 0, 0, 10)<br /> <br />Идентификатор &nbsp;Chart_current надо предварительно задать вручную через окно редактирования настроек графика на вкладке &quot;Дополнительно&quot; (как пишет Станислав из техподдержки). &nbsp; В этом примере получаем первые 10 свечей начиная с нулевой, &nbsp;n=10, l=&quot;Сбербанк &#91;Price&#93;.&quot;, если открыт график акций Сбербанка. &nbsp;Для обращения например к цене закрытия самой старой (нулевой) свечи пишем &nbsp; t&#91;0&#93;.close, а к массиву времени &nbsp;этой свечи &nbsp;t&#91;0&#93;.datetime<br /> <br />Но все равно я чего-то не понимаю. Ведь к свечам текущего тайм-фрэйма графика я и так имею доступ с помощью &nbsp;функций O(i), C(i), L(i),H(i),V(i),T(i).day и т.д., после отработки Oncalculate. &nbsp; Зачем же мне &nbsp;использовать функцию getCandlesByIndex? <br />
			<i>03.12.2016 21:47:08, Виктор Столетов.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20732/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20732/topic1869/</guid>
			<pubDate>Sat, 03 Dec 2016 21:47:08 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20704/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Лично мне очень помог разобраться в Qlua сайт <noindex><a href="http://quikluacsharp.ru/karta-sajta/" target="_blank" rel="nofollow">http://quikluacsharp.ru/karta-sajta/</a></noindex><br />Там есть и описание синтаксиса и все это подкреплено примерами для квика.<br />Есть даже небольшие готовые роботы. &nbsp; <br />
			<i>02.12.2016 15:55:43, Sergey Denegin.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20704/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20704/topic1869/</guid>
			<pubDate>Fri, 02 Dec 2016 15:55:43 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20699/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_s7R7JTby" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br />где tag &nbsp;- это строковый идентификатор графика или индикатора, Но как он выглядит<br />=============<br />Добрый день,<br /><br />Идентификатор задается вручную через окно редактирования настроек графика на вкладке &quot;Дополнительно&quot;:<br /><img src="http://www.pictureshack.ru/images/29420_456.png" alt="Пользователь добавил изображение" border="0" /><br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_UEc7XG1B" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br />как обращаться к элементам таблицы t, содержащей свечки: &nbsp;t&#91;&quot;close&quot;&#93; или t&#91;&quot;С(i)&quot;&#93; или как-то еще? <br />=============<br />Данные значения являются получаемыми, то есть вызвав getCandlesByIndex, Вы получите в результате таблицу с t, n и l значениями.<br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_Qlum6qd2" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br /> Зачем здесь параметр line?<br />=============<br />line - это номер линии графика или индикатора, в случае, если у Вас построен график по инструменту в виде свечей то укажите 0.<br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_Ws2NJPow" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br />где в этой функции указано, какой тайм-фрэйм?<br />=============<br />Интервал будет тот, график которого открыт у Вас в QUIK.<br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_N6z1RjcA" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br />пример использования параметра doesExist<br />=============<br />На данный вопрос ответим позднее.<br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_o0FNKF8y" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br />Есть ли &nbsp;вообще полное руководство по языку Lua, где описаны основные конструкции языка с примерами, <br />=============<br />Относительно использования Lua в QUIK инструкции можно скачать с нашего сайта по ссылке:<br /><noindex><a href="http://arqatech.com/upload/iblock/022/quik_lua.zip" target="_blank" rel="nofollow">http://arqatech.com/upload/iblock/022/quik_lua.zip</a></noindex><br />Полное руководство пользователя содержится на сайте <noindex><a href="http://www.lua.org" target="_blank" rel="nofollow">www.lua.org</a></noindex> <br />
			<i>02.12.2016 14:38:57, Stanislav Tvorogov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20699/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20699/topic1869/</guid>
			<pubDate>Fri, 02 Dec 2016 14:38:57 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20606/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<span class="bx-font" style="font-size:12pt; line-height: normal;">Спасибо вам &nbsp;всем, Сергей, Егор и Старатель, за разъяснения. &nbsp;Со своей задачей перевода индикаторов с Mql4 в Lua мне &nbsp;удалось справиться &nbsp;в том числе благодаря &nbsp;отладке через PrintDbgStr. </span><br /><span class="bx-font" style="font-size:12pt; line-height: normal;"> </span><br /><span class="bx-font" style="font-size:12pt; line-height: normal;">Вы предлагаете для работы с другим таймфрэймом использовать функцию getCandlesByIndex &nbsp;. Непонятно только, как ей пользоваться В help нет ни одного примера. &nbsp;</span><br /><span class="bx-font" style="font-size:12pt; line-height: normal;">Там написано : &nbsp; TABLE t, NUMBER n, STRING l getCandlesByIndex (STRING tag, NUMBER line, NUMBER first_candle, NUMBER count) &nbsp;</span><br /><br /><span class="bx-font" style="font-size:12pt; line-height: normal;">где tag &nbsp;- это </span><span class="bx-font" style="font-size:12pt; line-height: normal;">строковый идентификатор графика или индикатора, Но как он выглядит? &nbsp;Я пробовал подставить в качестве tag </span><span class="bx-font" style="font-size:12pt; line-height: normal;"> например &quot;Сбербанк&#91;Price&#93;&quot; , </span><span class="bx-font" style="font-size:12pt; line-height: normal;">&quot;&#91;Price&#93;&quot;, &quot;Price&quot;, но &nbsp;ничего не получается. Также не могу понять,</span><br /><span class="bx-font" style="font-size:12pt; line-height: normal;">как обращаться к элементам таблицы t, содержащей свечки: &nbsp;t&#91;&quot;close&quot;&#93; или t&#91;&quot;С(i)&quot;&#93; </span><span class="bx-font" style="font-size:12pt; line-height: normal;">или как-то еще? Зачем здесь параметр line? Ведь свечки не &nbsp;зависят от линии, скорее наоборот. &nbsp;А главный вопрос – где в этой функции </span><span class="bx-font" style="font-size:12pt; line-height: normal;">указано, какой тайм-фрэйм?</span><br />====quote====<br /><span class="bx-font" style="font-size:12pt; line-height: normal;">Egor Zaytsev написал:</span><br /><span class="bx-font" style="font-size:12pt; line-height: normal;">Среди свойств свечек есть параметр doesExist, по нему можно определить что свечка сформировалась.</span><br />=============<br /><span class="bx-font" style="font-size:12pt; line-height: normal;">А не могли бы привести какой-нибудь пример использования параметра doesExist?<br /></span><br /><span class="bx-font" style="font-size:12pt; line-height: normal;">Есть ли &nbsp;вообще полное руководство по языку Lua, где описаны основные конструкции языка с примерами, включая математические функции, типы &nbsp;данных и и х преобразование, операторы if, for, while и т.п.? Например, &nbsp;на этом форуме видел полезную ссылку </span><noindex><a href="http://www.bot4sale.ru/blog-menu/qlua/spisok-statej/368-lua-time.html" target="_blank" rel="nofollow"><span class="bx-font" style="font-size:12pt; line-height: normal;">http://www.bot4sale.ru/blog-menu/qlua/spisok-statej/368-lua-time.html</span></a></noindex><span class="bx-font" style="font-size:12pt; line-height: normal;"> &nbsp;от пользователя s_mike@ rambler ru, &nbsp;в которой подробно описана работа с временем в Lua. &nbsp;Почему-то подобного &nbsp;раздела &nbsp;в help по Lua нет.</span> <br />
			<i>30.11.2016 14:59:43, Виктор Столетов.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20606/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20606/topic1869/</guid>
			<pubDate>Wed, 30 Nov 2016 14:59:43 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20561/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_BU7Wdktn" href="/user/19/" bx-tooltip-user-id="19">Egor Zaytsev</a> написал:<br />2. Здесь больше подойдет функция CreateDataSource<br />=============<br />CreateDataSource не доступна в индикаторах. Поэтому работать с другим таймфреймом можно только через getCandlesByIndex<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_2c6JHWmn" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br />3. Как отслеживать появление нового бара?<br />=============<br />При появлении нового бара в OnCalculate(index) будет увеличиваться индекс свечи<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_jhoDP0mg" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br />А что если в какой-то момент самые старые бары будут обрезаны и Size() уменьшится?<br />=============<br />Тогда OnCalculate начнётся с первого индекса.<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_3icWgf8S" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br />Вы говорите, что индекс свечи начинается c 0 и в руководстве написано то же самое. Но если в OnCalculate(index) &nbsp;написать PrintDbgStr("index=" .. index), то в окне &nbsp;Debugview выведет index от 1 до Size(). Вроде получается, что &nbsp;самая старая свеча имеет индекс 1.<br />=============<br />Да, там у них путаница (видимо разные люди писали куски кода): в OnCalculate в индикаторах индекс начинается с единицы, а в getCandlesByIndex - с нуля. <br />
			<i>29.11.2016 10:56:41, Старатель.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20561/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20561/topic1869/</guid>
			<pubDate>Tue, 29 Nov 2016 10:56:41 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20532/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_xteKEphm" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br /><br />====quote====<br /> Sergey Denegin &nbsp; написал:<br />Какая у вас задача? <br />=============<br />Задача у меня перевести свои индикаторы с языка MQL4 &nbsp;(MetaTrader4, Forex) &nbsp; на Lua. &nbsp;Пришлось начать изучать Lua. В &nbsp;help по Lua из Quik &nbsp; я вообще не нашел описания основных конструкций языка (типы данных, операторы цикла, if и т.д.). &nbsp;В этом помогла книга Роберто Иерусалимски &quot;Программирование на языке Lua&quot;. &nbsp;К сожалению она не &nbsp;описывает биржевую торговлю и индикаторы в том числе. &nbsp;А в help &nbsp;по Lua &nbsp;по индикаторам похоже &nbsp;не полная информация. &nbsp;В частности есть такие вопросы:<br />1. При выборе штатного индикатора, который накладывается на график, а не в отдельное окно, &nbsp;флаг &quot;поместить график в отдельную область&quot; не активен. А когда я выбираю свой индикатор, то этот флаг всегда активен, и &nbsp;каждый раз приходится его отключать. &nbsp;В языке &nbsp;MQL4 прямо в коде индикатора можно директивой указать, куда кидать индикатор - на график цены или в отдельное окно (#property indicator_chart_window и #property indicator_separate_window) . Вопрос: &nbsp;есть ли похожая &nbsp;директива в Lua? <br />2. Можно ли из индикатора &nbsp;обращаться к барам любого таймфрэйма, а не только текущего таймфрэйма на графике? &nbsp;Например, имея перед собой часовой график, производить вычисления с &nbsp;минутными барами (L,H,O,C,V)? &nbsp;<br />3. Как отслеживать появление нового бара? Я ориентируюсь на то, что при этом &nbsp;Size() увеличивается на 1. А что если в какой-то момент самые старые бары будут обрезаны и Size() уменьшится? Тогда &nbsp;в вычислениях надо это предусмотреть, иначе может возникнуть ошибка. <br /><br />Вы говорите, что индекс свечи начинается c 0 и в руководстве написано то же самое. Но если в OnCalculate(index) &nbsp;написать PrintDbgStr(&quot;index=&quot; .. index), то в окне &nbsp;Debugview выведет index от 1 до Size(). Вроде получается, что &nbsp;самая старая свеча имеет индекс 1.<br />=============<br />Здравствуйте,<br /><br />1. К сожалению, такой возможности нет. <br />2. Здесь больше подойдет функция CreateDataSource<br />3. Для работы со свечками в lua есть функция getCandlesByIndex<br />Среди свойств свечек есть параметр doesExist, по нему можно определить что свечка сформировалась. <br />
			<i>28.11.2016 17:34:10, Egor Zaytsev.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20532/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20532/topic1869/</guid>
			<pubDate>Mon, 28 Nov 2016 17:34:10 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20523/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			1. На сколько я знаю, из Луа нельзя управлять тем, куда будет выводиться индикатор. Луа только считает значения<br /><br />2. Обращаться можно, но хлопотно. Для этого есть функция CreateDataSource и дальше придется перебирать все свечи<br /><br />3. на сколько я знаю Size не может уменьшиться. Обрезание начальных баров происходит только при входе в Квик. (или возможно при смене сессии). Кстати поправьте меня разработчики, если я ошибаюсь. <br />
			<i>28.11.2016 12:22:24, Sergey Denegin.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20523/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20523/topic1869/</guid>
			<pubDate>Mon, 28 Nov 2016 12:22:24 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20503/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_8zTvAzT0" href="/user/1889/" bx-tooltip-user-id="1889">Sergey Denegin</a> написал:<br />Какая у вас задача? <br />=============<br />Задача у меня перевести свои индикаторы с языка MQL4 &nbsp;(MetaTrader4, Forex) &nbsp; на Lua. &nbsp;Пришлось начать изучать Lua. В &nbsp;help по Lua из Quik &nbsp; я вообще не нашел описания основных конструкций языка (типы данных, операторы цикла, if и т.д.). &nbsp;В этом помогла книга Роберто Иерусалимски &quot;Программирование на языке Lua&quot;. &nbsp;К сожалению она не &nbsp;описывает биржевую торговлю и индикаторы в том числе. &nbsp;А в help &nbsp;по Lua &nbsp;по индикаторам похоже &nbsp;не полная информация. &nbsp;В частности есть такие вопросы:<br />1. При выборе штатного индикатора, который накладывается на график, а не в отдельное окно, &nbsp;флаг &quot;поместить график в отдельную область&quot; не активен. А когда я выбираю свой индикатор, то этот флаг всегда активен, и &nbsp;каждый раз приходится его отключать. &nbsp;В языке &nbsp;MQL4 прямо в коде индикатора можно директивой указать, куда кидать индикатор - на график цены или в отдельное окно (#property indicator_chart_window и #property indicator_separate_window) . Вопрос: &nbsp;есть ли похожая &nbsp;директива в Lua? <br />2. Можно ли из индикатора &nbsp;обращаться к барам любого таймфрэйма, а не только текущего таймфрэйма на графике? &nbsp;Например, имея перед собой часовой график, производить вычисления с &nbsp;минутными барами (L,H,O,C,V)? &nbsp;<br />3. Как отслеживать появление нового бара? Я ориентируюсь на то, что при этом &nbsp;Size() увеличивается на 1. А что если в какой-то момент самые старые бары будут обрезаны и Size() уменьшится? Тогда &nbsp;в вычислениях надо это предусмотреть, иначе может возникнуть ошибка. <br /><br />Вы говорите, что индекс свечи начинается c 0 и в руководстве написано то же самое. Но если в OnCalculate(index) &nbsp;написать PrintDbgStr(&quot;index=&quot; .. index), то в окне &nbsp;Debugview выведет index от 1 до Size(). Вроде получается, что &nbsp;самая старая свеча имеет индекс 1. &nbsp; <br />
			<i>26.11.2016 00:20:39, Виктор Столетов.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20503/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20503/topic1869/</guid>
			<pubDate>Sat, 26 Nov 2016 00:20:39 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20489/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Какая у вас задача? <br />При открытии квика, или про пересоединении к серверу, индикатор строится заново, <br />и функция OnCalculate запускается столько раз, сколько у вас свечей на этом графике. <br />index при этом номер свечи. от 0 до последней <br />
			<i>24.11.2016 22:28:04, Sergey Denegin.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20489/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20489/topic1869/</guid>
			<pubDate>Thu, 24 Nov 2016 22:28:04 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20469/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_gnTA7Em3" href="/user/2675/" bx-tooltip-user-id="2675">Виктор Столетов</a> написал:<br />Как я понял, если &nbsp;выводить переменную не строкового типа, то надо писать типа &nbsp;PrintDbgStr(x .. &quot; &quot;) . &nbsp;Непонятно только, &nbsp;почему, когда этот оператор ставлю в &nbsp;Oncalculate, то &nbsp;в debugview значение переменной выводится на один раз, а многократно. <br />=============<br />Сам же на этот вопрос и отвечаю. &nbsp;При запуске индикатора OnCalculate вызывается столько раз, сколько свечей на графике. Чтобы DebugView выводил переменную 1 раз, просто надо ввести счетчик &#169;:<br /> <br />function Init()<br /> c=0<br /> return 1<br />end<br />function OnCalculate(Index)<br /> x=&lt;числовое выражение&gt;<br /> if c==0 then PrintDbgStr(&quot;x=&quot; .. x) end<br /> c=c+1<br />end<br /><br />Если что не так, то коллеги поправьте - я начинающий. <br />
			<i>23.11.2016 19:08:55, Виктор Столетов.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20469/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20469/topic1869/</guid>
			<pubDate>Wed, 23 Nov 2016 19:08:55 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20353/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_tvkcTLsk" href="/user/1889/" bx-tooltip-user-id="1889">Sergey Denegin</a> написал:<br />Люди добрые, а можете объяснить про debugview что это за зверь? <br />Специально отдельную тему создал, чтобы проще было потом найти нужную информацию<br /> <noindex><a href="https://forum.quik.ru/forum10/topic2290/" target="_blank" rel="nofollow">https://forum.quik.ru/forum10/topic2290/</a></noindex> <br />=============<br /><noindex><a href="https://quik2dde.ru/viewtopic.php?id=108" target="_blank" rel="nofollow">https://quik2dde.ru/viewtopic.php?id=108</a></noindex> <br />
			<i>21.11.2016 05:20:33, swerg.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20353/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20353/topic1869/</guid>
			<pubDate>Mon, 21 Nov 2016 05:20:33 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20351/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Люди добрые, а можете объяснить про debugview что это за зверь? <br />Специально отдельную тему создал, чтобы проще было потом найти нужную информацию<br /><noindex><a href="https://forum.quik.ru/forum10/topic2290/" target="_blank" rel="nofollow">https://forum.quik.ru/forum10/topic2290/</a></noindex> <br />
			<i>21.11.2016 01:45:58, Sergey Denegin.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20351/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20351/topic1869/</guid>
			<pubDate>Mon, 21 Nov 2016 01:45:58 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20338/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_MUUj2D5f" 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; printdbgstr и выводите нужные вам значения. Вы их увидите в debugview<br /><br />=============<br />Теперь наконец получилось! Да, &nbsp;затупил немного, но про Lua узнал только вчера и как-то трудно было сразу въехать в тему.<br />Как я понял, если &nbsp;выводить переменную не строкового типа, то надо писать типа &nbsp;PrintDbgStr(x .. &quot; &quot;) . &nbsp;Непонятно только, &nbsp;почему, когда этот оператор ставлю в &nbsp;Oncalculate, то &nbsp;в debugview значение переменной выводится на один раз, а многократно. &nbsp;Пробовал &nbsp;то же самое делать в обычном скрипте (не в индикаторе), &nbsp;и при этом &nbsp; переменная появлялась в debugview &nbsp;только один раз.<br /> <br />Хорошо, что debugview &nbsp;позволяет выявлять и синтаксические ошибки в индикаторе - в случае такой ошибки при &nbsp; открытии окна со списком индикаторов в &nbsp;debugview появляется сообщение о синтаксической ошибке. &nbsp;Правда выдает только самую первую ошибку, а остальные не видит, но и на том спасибо.<br /> <br />Все равно при таком раскладе отладить индикатор вполне реально. Спасибо вам, &nbsp;s-mike, за дельный совет. <br />
			<i>20.11.2016 18:48:19, Виктор Столетов.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20338/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20338/topic1869/</guid>
			<pubDate>Sun, 20 Nov 2016 18:48:19 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20336/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Запустите debugview<br /><br />в любом месте индикатора вызывайте &nbsp; printdbgstr и выводите нужные вам значения. Вы их увидите в debugview<br /><br />main в индикаторе не имеет смысла <br />
			<i>20.11.2016 16:19:08, s_mike@rambler.ru.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20336/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20336/topic1869/</guid>
			<pubDate>Sun, 20 Nov 2016 16:19:08 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20334/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_Ha21PYn6" 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 />Не мучайтесь. Отладочнaя печать в файл или printdbgstr в &nbsp;debugview. все остальное - трата времени.<br />=============<br />Скачал debugview и запустил его. А что делать дальше? &nbsp;Как начать отладку файла &nbsp; индикатора с расширением lua в Quik? (в debugview в меню file-open он не открывается).<br />Относительно функции PrintDbgStr тоже непонятно: где в коде индикатора я ее должен поместить - в Init, &nbsp;в Oncalculate?<br />В руководстве по Lua для функции PrintDbgStr приведен следующий пример:<br /> &nbsp;function main()<br /> &nbsp; &nbsp; PrintDbgStr(&quot;test1&quot;) &nbsp; <br /> &nbsp; &nbsp; PrintDbgStr(&quot;test2&quot;) &nbsp; &nbsp; <br /> &nbsp; &nbsp; PrintDbgStr(&quot;dbg from &quot; .. getScriptPath()) &nbsp; &nbsp;<br /> &nbsp; end<br />Как все это понимать? Третий оператор указывает, где находится индиктор, подлежащий отладке? &nbsp;А зачем первые два оператора? &nbsp;Кроме того, откуда я должен вызвать функцию main, из Oncalculate? <br />
			<i>20.11.2016 13:48:45, Виктор Столетов.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20334/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20334/topic1869/</guid>
			<pubDate>Sun, 20 Nov 2016 13:48:45 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20327/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Не мучайтесь. Отладочнaя печать в файл или printdbgstr в &nbsp;debugview. все остальное - трата времени. <br />
			<i>19.11.2016 22:28:33, s_mike@rambler.ru.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20327/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20327/topic1869/</guid>
			<pubDate>Sat, 19 Nov 2016 22:28:33 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message20326/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Скачал Decoder, но запустить его не получилось - выдает ошибку 0хс000007b (ошибка при запуске приложения). &nbsp; <br />Раньше &nbsp;я программировал на MQL4 в MetaTrader 4 (Forex), &nbsp;там есть встроенный отладчик и вопросов не было. Теперь хочу перенести &nbsp;свои индикаторы c MQL4 в Lua. <br />Но прежде чем изучать язык Lua, хотелось бы понять &nbsp;- как &nbsp;отладить индикатор в Lua? &nbsp;А для начала &nbsp;- как найти, &nbsp;где ошибка в синтаксисе &nbsp; индикатора? &nbsp;Обязательно ли для этого нужен &nbsp;Decoder? <br />Надеюсь на вашу помощь коллеги. <br />
			<i>19.11.2016 21:23:13, Виктор Столетов.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message20326/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message20326/topic1869/</guid>
			<pubDate>Sat, 19 Nov 2016 21:23:13 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message17200/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_a8xB2keO" href="/user/1103/" bx-tooltip-user-id="1103">Imersio Arrigo</a> написал:<br /><br />====quote====<br /> Михаил Понамаренко (pmntrade.ru) &nbsp; написал:<br />НАЗВАНИЕ_ПЕРЕМЕННОЙ;ЗНАЧЕНИЕ<br />=============<br />а еще крупнее шрифта небыло?<br />=============<br />Копировал из Notepade++. Не знал, что он поддерживает форматирование. <br />
			<i>07.07.2016 11:16:47, Михаил Понамаренко (pmntrade.ru).</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message17200/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message17200/topic1869/</guid>
			<pubDate>Thu, 07 Jul 2016 11:16:47 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message17196/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_OzIW6Wl4" href="/user/1466/" bx-tooltip-user-id="1466">Михаил Понамаренко (pmntrade.ru)</a> написал:<br />НАЗВАНИЕ_ПЕРЕМЕННОЙ;ЗНАЧЕНИЕ<br />=============<br />а еще крупнее шрифта небыло? <br />
			<i>07.07.2016 09:23:12, Imersio Arrigo.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message17196/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message17196/topic1869/</guid>
			<pubDate>Thu, 07 Jul 2016 09:23:12 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message17195/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<span class="bx-font" style="font-size:x-large;">UP<br />Decoda (<noindex><a href="https://www.quik2dde.ru/viewtopic.php?id=32" target="_blank" rel="nofollow">https://www.quik2dde.ru/viewtopic.php?id=32</a></noindex>) часто отключается и возобновляет работу только перезагрузки. Требует введения имени переменной. Неудобно.<br />Мне вполне по душе реализация QPILE, где вбиваешь волшебный breakpoint() в заветном месте и видишь сразу все свои переменные в формате НАЗВАНИЕ_ПЕРЕМЕННОЙ;ЗНАЧЕНИЕ. Там, правда, очень не хватало сортировки по имени переменной. <br />Может быть кто готов поделиться своими наработками (пивом угощаю)? Хотелось бы аналог описанный выше.<br />Ну, и конечно, хотелось бы увидеть реализацию по умолчанию от Вас, уважаемые разработчики.<br />Спасибо!</span> <br />
			<i>07.07.2016 08:47:09, Михаил Понамаренко (pmntrade.ru).</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message17195/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message17195/topic1869/</guid>
			<pubDate>Thu, 07 Jul 2016 08:47:09 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message16725/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Спасибо! <br />
			<i>14.06.2016 17:32:32, A A.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message16725/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message16725/topic1869/</guid>
			<pubDate>Tue, 14 Jun 2016 17:32:32 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message16724/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Здравствуйте,<br />Существуют сторонние отладчики, например decode <br />
			<i>14.06.2016 17:02:06, Sergey Gorokhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message16724/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message16724/topic1869/</guid>
			<pubDate>Tue, 14 Jun 2016 17:02:06 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Отладка скриптов Lua для Quik.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message16723/topic1869/">Отладка скриптов Lua для Quik.</a></b> <i>Как произвести отладку скрипта?</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Здравствуйте. Подскажите пожалуйста, как осуществлять отладку скриптов на Lua? &nbsp;Возможно ли подключиться к работе скрипта в Quik? &nbsp; <br />
			<i>14.06.2016 16:44:28, A A.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message16723/topic1869/</link>
			<guid>http://forum.quik.ru/messages/forum10/message16723/topic1869/</guid>
			<pubDate>Tue, 14 Jun 2016 16:44:28 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
