<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: Некорректный возврат минимума функцией CreateDataSource]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме Некорректный возврат минимума функцией CreateDataSource форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Wed, 20 May 2026 16:10:55 +0300</pubDate>
		<item>
			<title>Некорректный возврат минимума функцией CreateDataSource</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message41377/topic4972/">Некорректный возврат минимума функцией CreateDataSource</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_cGKNlR9L" href="/user/13486/" bx-tooltip-user-id="13486">Сергей Запольских</a> написал:<br />ds:Size() содержить уже кол-во свечей за указанный промежуток времени. <br />=============<br /><br />В функции CreateDataSource Вы указываете НЕ "промежуток времени", Вы указываете интервал (таймфрейм) графика. <br />INTERVAL_D1 - означает дневной интервал. <br />Т.е. Вы заказываете кучу <B>дневных свечек</B>, а не свечки за 1 день как Вам кажется<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_3hd250yP" href="/user/13486/" bx-tooltip-user-id="13486">Сергей Запольских</a> написал:<br />Если это не так, то как реализовать скрипт чтобы он выдавал кол-во свечей за указанный промежуток времени?<br />=============<br /><br />Вы это сами написали:<br />local current_candle = ds:Size()<br />local max_candles = math.min(1000, ds:Size()) &nbsp;<br />...<br />while current_candle &gt; ds:Size() - max_candles do<br /><br />max_candles получается равным 1000.<br />т.е. в цикле Вы и перебираете последние 1000 свечек.<br /><br /><br />Ваш текущий код по русски звучит так: "взять последние 1000 свечек дневного графика и пробежаться по ним"<br /><br />а зачем вообще потребовалось пробегаться по всему графику?<br />если Вам надо выяснить мин макс за день, то не проще с дневного графика, со свечки текущего дня вытащить hight и low?<br />ds:H(ds:Size()) <br />ds:L(ds:Size()) <br />
			<i>26.12.2019 14:13:00, Sergey Gorokhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message41377/topic4972/</link>
			<guid>http://forum.quik.ru/messages/forum10/message41377/topic4972/</guid>
			<pubDate>Thu, 26 Dec 2019 14:13:00 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Некорректный возврат минимума функцией CreateDataSource</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message41374/topic4972/">Некорректный возврат минимума функцией CreateDataSource</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_VubkmNJ7" href="/user/17/" bx-tooltip-user-id="17">Sergey Gorokhov</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/13486/" target="_blank" rel="nofollow">Сергей Запольских</a></noindex> написал:<br />Максимум верный, минимум должен быть 165<br />=============<br /> <br />нет не должен, от куда такая инфомрация?<br />Вы в коде, на дневном интервале просматриваете свечки за последние 1000 дней, и в этом периоде был минимум ~82. почему Вы считаете что за последние 1000 дней не было такого минимума?<br />=============<br />Как и где изменить это значение которые будет соответствовать заданному интервалу?<br />Насколько я понял 
====code====
<pre>ds, error_desc = CreateDataSource("TQBR", "SBER", INTERVAL_D1)
ds:Size()
</pre>
=============
ds:Size() содержить уже кол-во свечей за указанный промежуток времени. Если это не так, то как реализовать скрипт чтобы он выдавал кол-во свечей за указанный промежуток времени? <br />
			<i>26.12.2019 13:43:31, Сергей Запольских.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message41374/topic4972/</link>
			<guid>http://forum.quik.ru/messages/forum10/message41374/topic4972/</guid>
			<pubDate>Thu, 26 Dec 2019 13:43:31 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Некорректный возврат минимума функцией CreateDataSource</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message41369/topic4972/">Некорректный возврат минимума функцией CreateDataSource</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_ZzP4BlmY" href="/user/13486/" bx-tooltip-user-id="13486">Сергей Запольских</a> написал:<br />Максимум верный, минимум должен быть 165<br /><br />=============<br /><br />нет не должен, от куда такая инфомрация?<br />Вы в коде, на дневном интервале просматриваете свечки за последние 1000 дней, и в этом периоде был минимум ~82. почему Вы считаете что за последние 1000 дней не было такого минимума? <br />
			<i>26.12.2019 06:45:25, Sergey Gorokhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message41369/topic4972/</link>
			<guid>http://forum.quik.ru/messages/forum10/message41369/topic4972/</guid>
			<pubDate>Thu, 26 Dec 2019 06:45:25 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Некорректный возврат минимума функцией CreateDataSource</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message41363/topic4972/">Некорректный возврат минимума функцией CreateDataSource</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Выдаётся результат<br />Максимум 285<br />Минимум 82<br /><br />Максимум верный, минимум должен быть 165 <br />
			<i>25.12.2019 17:59:41, Сергей Запольских.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message41363/topic4972/</link>
			<guid>http://forum.quik.ru/messages/forum10/message41363/topic4972/</guid>
			<pubDate>Wed, 25 Dec 2019 17:59:41 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Некорректный возврат минимума функцией CreateDataSource</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message41362/topic4972/">Некорректный возврат минимума функцией CreateDataSource</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<B>Результат выполнения</B><table class="forum-spoiler"><thead onclick="if (this.nextSibling.style.display=='none') { this.nextSibling.style.display=''; BX.addClass(this, 'forum-spoiler-head-open'); } else { this.nextSibling.style.display='none'; BX.removeClass(this, 'forum-spoiler-head-open'); } BX.onCustomEvent('BX.Forum.Spoiler:toggle', [{node: this}]); event.stopPropagation();"><tr><th><div>Скрытый текст</div></th></tr></thead><tbody class="forum-spoiler" style="display:none;"><tr><td>[img]data:image/png;base64,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[/img]<br />[img]data:image/png;base64,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[/img]</td></tr></tbody></table> <br />
			<i>25.12.2019 17:54:47, Сергей Запольских.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message41362/topic4972/</link>
			<guid>http://forum.quik.ru/messages/forum10/message41362/topic4972/</guid>
			<pubDate>Wed, 25 Dec 2019 17:54:47 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Некорректный возврат минимума функцией CreateDataSource</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message41361/topic4972/">Некорректный возврат минимума функцией CreateDataSource</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Добрый день! Подскажите пожалуйста насчет поведения функции <B>CreateDataSource.</B>Не могу понять, почему функция выдаёт наверное значение по минимуму. Хотя по максимуму выдаётся все верно.<br /><br /><B>Код функции</B><br /><table class="forum-spoiler"><thead onclick="if (this.nextSibling.style.display=='none') { this.nextSibling.style.display=''; BX.addClass(this, 'forum-spoiler-head-open'); } else { this.nextSibling.style.display='none'; BX.removeClass(this, 'forum-spoiler-head-open'); } BX.onCustomEvent('BX.Forum.Spoiler:toggle', [{node: this}]); event.stopPropagation();"><tr><th><div>Скрытый текст</div></th></tr></thead><tbody class="forum-spoiler" style="display:none;"><tr><td>-- Пример получения минимума, максимума за определенный период времени, текущей сессии<br />function main() &nbsp; &nbsp;<br /> &nbsp; &nbsp;-- Создаем таблицу со всеми свечами нужного класса и кода<br /><br /> &nbsp; &nbsp;ds, error_desc = CreateDataSource(&quot;TQBR&quot;, &quot;SBER&quot;, INTERVAL_D1)<br /> &nbsp; &nbsp;ds:SetEmptyCallback()<br /> &nbsp; &nbsp;sleep(1000)<br /> &nbsp; &nbsp;-- Ограничиваем количество попыток (времени) ожидания получения данных от сервера<br /> &nbsp; &nbsp;local try_count = 100<br /> &nbsp; &nbsp;-- Ждем пока не получим данные от сервера,<br /> &nbsp; &nbsp;-- &nbsp;либо пока не закончится время ожидания (количество попыток)<br /> &nbsp; &nbsp;while ds:Size() == 0 and try_count &lt; 1000 do<br /> &nbsp; &nbsp; &nbsp; &nbsp;sleep(100)<br /> &nbsp; &nbsp;end<br /> &nbsp; &nbsp;-- Если от сервера пришла ошибка, то выведем ее и прервем выполнение<br /> &nbsp; &nbsp;if error_desc ~= nil and error_desc ~= &quot;&quot; then<br /> &nbsp; &nbsp; &nbsp; &nbsp;message(&quot;Ошибка получения таблицы свечей:&quot; .. error_desc)<br /> &nbsp; &nbsp; &nbsp; &nbsp;return 0<br /> &nbsp; &nbsp;end<br /> &nbsp; &nbsp;<br /> &nbsp; &nbsp;-- Текущий день месяца (1 - 31)<br /> &nbsp; &nbsp;local today_day = tonumber(os.date(&quot;%d&quot;))<br /> &nbsp; &nbsp;-- Текущая свеча (с которой начинаем поиск)<br /> &nbsp; &nbsp;local current_candle = ds:Size()<br /> &nbsp; &nbsp;-- Максимальное количество свечей для поиска<br /> &nbsp; &nbsp;-- &nbsp;не может быть больше чем общее количество свечей в таблице<br /> &nbsp; &nbsp;local max_candles = math.min(1000, ds:Size()) &nbsp; &nbsp;<br /> &nbsp; &nbsp;-- Индекс свечи с максимумом<br /> &nbsp; &nbsp;local max_candle_index = nil<br /> &nbsp; &nbsp;-- Индекс свечи с минимумом<br /> &nbsp; &nbsp;local min_candle_index = nil<br /> &nbsp; &nbsp;-- Время начала поиска<br /> &nbsp; &nbsp;local start_time = 100000<br /> &nbsp; &nbsp;-- Время окончания поиска<br /> &nbsp; &nbsp;local end_time = 143600<br /> &nbsp; &nbsp;<br /> &nbsp; &nbsp;message(to_human_time(ds:T(ds:Size())))<br /><br /> &nbsp; &nbsp;-- Цикл по всем свечам и поиск в нужном интервале<br /> &nbsp; &nbsp;while current_candle &gt; ds:Size() - max_candles do<br /> &nbsp; &nbsp; &nbsp; &nbsp;-- Если это уже другая сессия<br /> &nbsp; &nbsp; &nbsp; &nbsp;<br /> &nbsp; &nbsp; &nbsp; &nbsp;-- Если текущая свеча в нашем интервале<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if max_candle_index == nil or ds:H(current_candle) &gt; ds:H(max_candle_index) then<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;max_candle_index = current_candle<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;end<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if min_candle_index == nil or ds:L(min_candle_index) &gt; ds:L(current_candle) &nbsp;then<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;min_candle_index = current_candle<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;end &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br /> &nbsp; &nbsp; &nbsp; &nbsp;current_candle = current_candle - 1<br /> &nbsp; &nbsp;end<br /> &nbsp; &nbsp;<br /> &nbsp; &nbsp;message(&quot;MAXIMUM:\n&quot; ..<br /> &nbsp; &nbsp; &nbsp; &nbsp;&quot; &nbsp; INDEX: &quot; .. tostring(max_candle_index) ..<br /> &nbsp; &nbsp; &nbsp; &nbsp;&quot; &nbsp; PRICE: &quot; .. tostring(ds:H(max_candle_index)) ..<br /> &nbsp; &nbsp; &nbsp; &nbsp;&quot; &nbsp; TIME: &quot; .. to_human_time(ds:T(max_candle_index))<br /> &nbsp; &nbsp;)<br /><br /> &nbsp; &nbsp;message(&quot;MINIMUM:\n&quot; ..<br /> &nbsp; &nbsp; &nbsp; &nbsp;&quot; &nbsp; INDEX: &quot; .. tostring(min_candle_index) ..<br /> &nbsp; &nbsp; &nbsp; &nbsp;&quot; &nbsp; PRICE: &quot; .. tostring(ds:L(min_candle_index)) ..<br /> &nbsp; &nbsp; &nbsp; &nbsp;&quot; &nbsp; TIME: &quot; .. to_human_time(ds:T(min_candle_index))<br /> &nbsp; &nbsp;)<br />end<br /><br />function to_human_time(time)<br /> &nbsp; &nbsp;return tostring(string.format(&quot;%02d&quot;, time.hour) .. &quot;:&quot; .. string.format(&quot;%02d&quot;, time.min) .. &quot;:&quot; .. string.format(&quot;%02d&quot;, time.sec))<br />end<br /><br />function time_to_number(time)<br /> &nbsp; &nbsp;return tonumber(string.format(&quot;%02d&quot;, time.hour) .. string.format(&quot;%02d&quot;, time.min) .. string.format(&quot;%02d&quot;, time.sec))<br />end</td></tr></tbody></table> <br />
			<i>25.12.2019 17:53:46, Сергей Запольских.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message41361/topic4972/</link>
			<guid>http://forum.quik.ru/messages/forum10/message41361/topic4972/</guid>
			<pubDate>Wed, 25 Dec 2019 17:53:46 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
