<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: Moving Average продублировать из 5мин в 1мин]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме Moving Average продублировать из 5мин в 1мин форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Wed, 22 Apr 2026 00:33:29 +0300</pubDate>
		<item>
			<title>Moving Average продублировать из 5мин в 1мин</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum13/message40966/topic4914/">Moving Average продублировать из 5мин в 1мин</a></b> <i>Нужно добиться одинаковых графиков ma на разных интервалах</i> в форуме <a href="http://forum.quik.ru/forum13/">Графики</a>. <br />
			В скрипте поменял ma1 на последнюю цену одноминутной свечи - всё заработало с точностью до тысячных, что вполне устраивает. Задача решена.<br />====quote====<br /><a class="blog-p-user-name" id="bp_cFXvChRl" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a> написал:<br />Довольно геморройным. Рассматриваем емашку как БИХ-фильтр первого порядка, определяем круговую частоту среза для заданного периода, денормируем на текущую частоту дискретизации (на пятиминутках это 1/(5*60) Гц), получаем частоту среза в герцах, нормируем на частоту дискретизации минуток (1/60 Гц), получаем круговую частоту среза на минутках, и самый гемор из нее выводим период емашки для минуток. В принципе, можно технологию упростить, повозившись с формулами, но тут уже из разряда шашечки или ехать, быстрей было таким образом, чем математические исследования затевать. Там еще обнаруживается такая вещь, что с ростом периода исходной емашки рассчитанный период постепенно приближается к ожидаемому 5x. На заданных же малых периодах оказывается настолько ниже ожидаемого, поскольку, строго говоря, емашка с периодом 2 (и альфой 0.66) находится выше частоты Найквиста и усредняет уже &quot;неизвестно что&quot;, кашу из реальных значений и отраженных высших гармоник. У емашки 4 ситуация получше. Впрочем, сама нарезка на свечи без предварительной фильтрации (как требует теорема Котельникова) уже создает довольно-таки кашу в спектрах.<br />=============<br />Круто. Действительно EMA по закрывающей цене на малых периодах напоминает &quot;цену на яблоки в дождливый день&quot; ) <br />
			<i>04.12.2019 13:23:47, Сергей.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum13/message40966/topic4914/</link>
			<guid>http://forum.quik.ru/messages/forum13/message40966/topic4914/</guid>
			<pubDate>Wed, 04 Dec 2019 13:23:47 +0300</pubDate>
			<category>Графики</category>
		</item>
		<item>
			<title>Moving Average продублировать из 5мин в 1мин</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum13/message40956/topic4914/">Moving Average продублировать из 5мин в 1мин</a></b> <i>Нужно добиться одинаковых графиков ma на разных интервалах</i> в форуме <a href="http://forum.quik.ru/forum13/">Графики</a>. <br />
			Квик дергает индикатор на каждый тик, так что C(idx) это именно &quot;текущее&quot; закрытие, когда начинается новая свеча, последнее рассчитанное &quot;текущее&quot; автоматически становится &quot;окончательным&quot;. Кабы не фиксировались значения на промежуточных свечах при их закрытии, было бы просто.<br /><br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_5oKLwb3w" href="/user/1339/" bx-tooltip-user-id="1339">Сергей</a> написал:<br />Если не секрет, каким образом вы посчитали?<br />=============<br />Довольно геморройным. Рассматриваем емашку как БИХ-фильтр первого порядка, определяем круговую частоту среза для заданного периода, денормируем на текущую частоту дискретизации (на пятиминутках это 1/(5*60) Гц), получаем частоту среза в герцах, нормируем на частоту дискретизации минуток (1/60 Гц), получаем круговую частоту среза на минутках, и самый гемор из нее выводим период емашки для минуток. В принципе, можно технологию упростить, повозившись с формулами, но тут уже из разряда шашечки или ехать, быстрей было таким образом, чем математические исследования затевать. Там еще обнаруживается такая вещь, что с ростом периода исходной емашки рассчитанный период постепенно приближается к ожидаемому 5x. На заданных же малых периодах оказывается настолько ниже ожидаемого, поскольку, строго говоря, емашка с периодом 2 (и альфой 0.66) находится выше частоты Найквиста и усредняет уже &quot;неизвестно что&quot;, кашу из реальных значений и отраженных высших гармоник. У емашки 4 ситуация получше. Впрочем, сама нарезка на свечи без предварительной фильтрации (как требует теорема Котельникова) уже создает довольно-таки кашу в спектрах. <br />
			<i>04.12.2019 03:35:50, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum13/message40956/topic4914/</link>
			<guid>http://forum.quik.ru/messages/forum13/message40956/topic4914/</guid>
			<pubDate>Wed, 04 Dec 2019 03:35:50 +0300</pubDate>
			<category>Графики</category>
		</item>
		<item>
			<title>Moving Average продублировать из 5мин в 1мин</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum13/message40955/topic4914/">Moving Average продублировать из 5мин в 1мин</a></b> <i>Нужно добиться одинаковых графиков ma на разных интервалах</i> в форуме <a href="http://forum.quik.ru/forum13/">Графики</a>. <br />
			Спасибо за код, завтра проверю (сейчас имел неосторожность перезаказать данные, а сервер не алё). На самом деле, мне графическое отображение не так важно. Нужны значения. В скрипте я попытался воссоздать значения MA пятиминутного графика: ma4s – это итоговое значение закрывшейся пятиминутной свечи, а ma4 – значение незакрытой свечи в момент, когда минутная свечка внутри неё закрылась, т.е. значения которые мы видим, пока свеча не закрылась.<br /> Посмотрел на <B>C(idx)</B> в вашем коде и, кажется, понял, где я накосячил: в v, видимо, должна быть цена закрытия свечи, а я нагородил там велосипедов – MA с периодом 1 влепил. <br /><br />====quote====<br /><a class="blog-p-user-name" id="bp_xGcH7wtq" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a> написал:<br />Пересчитал периоды емашек 2 и 4 с пяти минут на минуту, получаются такие периоды:M5 EMA(2) -&gt; M1 EMA(8.205459971)M5 EMA(4) -&gt; M1 EMA(19.18033544)<br />=============<br />Если не секрет, каким образом вы посчитали? <br />
			<i>04.12.2019 03:09:14, Сергей.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum13/message40955/topic4914/</link>
			<guid>http://forum.quik.ru/messages/forum13/message40955/topic4914/</guid>
			<pubDate>Wed, 04 Dec 2019 03:09:14 +0300</pubDate>
			<category>Графики</category>
		</item>
		<item>
			<title>Moving Average продублировать из 5мин в 1мин</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum13/message40954/topic4914/">Moving Average продублировать из 5мин в 1мин</a></b> <i>Нужно добиться одинаковых графиков ma на разных интервалах</i> в форуме <a href="http://forum.quik.ru/forum13/">Графики</a>. <br />
			Честно говоря, я не понял, что в скрипте происходит.<br /><br />Пока пятиминутная &nbsp;свеча не закрылась, окончательное значение EMA на ней не определено, в &nbsp;реальном времени просто берем за закрытие последний тик и считаем, что &nbsp;это и есть значение. Для промежуточных свечей значения - это прямая &nbsp;линия, соединяющая текущее значение пятиминутки и предыдущее. Главная &nbsp;проблема, по-моему, что в индикаторе нельзя задним числом четыре &nbsp;внутренних свечи перерисовать. Так что может емашка с дробным периодом, &nbsp;дающая ту же частоту среза фильтра, что и пятиминутная емашка, будет и &nbsp;не самым плохим вариантом.<br /><br />Пересчитал периоды емашек 2 и 4 с пяти минут на минуту, получаются такие периоды:<br />M5 EMA(2) -&gt; M1 EMA(8.205459971)<br />M5 EMA(4) -&gt; M1 EMA(19.18033544)<br /><br />Поскольку стандартный квиковский индикатор не позволяет дробный период указать, вот минималистичная замена
====code====
<pre>Settings = 
{
&nbsp;&nbsp;&nbsp;Name = "EMA-X",
&nbsp;&nbsp;&nbsp;Period = 8.205459971,
&nbsp;&nbsp;&nbsp;line =
&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Name = "EMA-X",
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Color = RGB(0, 255, 128),
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Type = TYPE_LINE,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Width = 2
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;}
}

local alpha = 0
local prevval = 0

Init = function()
&nbsp;&nbsp;&nbsp;alpha = 2 / (Settings.Period + 1)
&nbsp;&nbsp;&nbsp;return 1
end

OnCalcul ate = function(idx)
&nbsp;&nbsp;&nbsp;local v = C(idx)
&nbsp;&nbsp;&nbsp;if nil == v then return nil end
&nbsp;&nbsp;&nbsp;if 0 == prevval then prevval = v else prevval = prevval + alpha * (v - prevval) end
&nbsp;&nbsp;&nbsp;return prevval
end
</pre>
=============
Посмотрите, может сойдет. <br />
			<i>04.12.2019 02:05:02, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum13/message40954/topic4914/</link>
			<guid>http://forum.quik.ru/messages/forum13/message40954/topic4914/</guid>
			<pubDate>Wed, 04 Dec 2019 02:05:02 +0300</pubDate>
			<category>Графики</category>
		</item>
		<item>
			<title>Moving Average продублировать из 5мин в 1мин</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum13/message40953/topic4914/">Moving Average продублировать из 5мин в 1мин</a></b> <i>Нужно добиться одинаковых графиков ma на разных интервалах</i> в форуме <a href="http://forum.quik.ru/forum13/">Графики</a>. <br />
			В общем, проверил на имеющихся реальных значениях. Значения не совпадают, причем существенно. <br />В качестве ma1s - пробовал брать ma с периодом 1 с разными настройками -никакие не дали желаемого результата. <br />Еще вопрос к алгоритму: может после каждого вычисления значения &quot;в моменте&quot; price_con&#91;i+sdvig&#93;.ma4=(alfa4*(ma1s))+((1-alfa4)*last_ma4_t5) - это значения и становиться последним. Т.е. надо дописать в следующей строке last_ma4_t5=price_con&#91;i+sdvig&#93;.ma4. Хотя так тоже, значения не те получаются.<br />Может туда вообще цены всех сделок пишутся? <br /><br />Открытый вопрос: как по данным с минутном графика самому рассчитать MA пятиминутного графика. &nbsp; <br />
			<i>04.12.2019 01:44:20, Сергей.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum13/message40953/topic4914/</link>
			<guid>http://forum.quik.ru/messages/forum13/message40953/topic4914/</guid>
			<pubDate>Wed, 04 Dec 2019 01:44:20 +0300</pubDate>
			<category>Графики</category>
		</item>
		<item>
			<title>Moving Average продублировать из 5мин в 1мин</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum13/message40951/topic4914/">Moving Average продублировать из 5мин в 1мин</a></b> <i>Нужно добиться одинаковых графиков ma на разных интервалах</i> в форуме <a href="http://forum.quik.ru/forum13/">Графики</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_UrJqUPiH" href="/user/1222/" bx-tooltip-user-id="1222">Anton</a> написал:<br />строгого решения не имеет<br />=============<br />Я потом и сам понял, что графики &quot;такие же&quot; никогда не получатся. <br /><br />Мне на самом деле нужно вот что: история минутных свечей, где-то 6-7 мес, и для проверки алгоритма, потребовались дополнительно MA с пятиминутного графика. А на 5-мин истории не оказалось. Помогла бы подкачка данных в Quilk на пятиминутный график, но поддержка Альфы не знает, как это сделать. Я тоже(((<br /><br /><p>Сегодня я в LUA скрипт сделал, который рассчитывает и добавляет к минутным свечкам значения MA (как бы с пятиминутного графика). Есть сомнения в корректности вычислений. Буду благодарен за замечания.</p><p> Например, не уверен, в том, насколько корректно брать среднее ценовое значение минутной свечи из минутного MA с периодом 1.<br /></p>
====code====
<pre>function add_five_ma() -- Добавим к минутным свечам price_con значение 5-ти минутных ma
&nbsp;&nbsp;&nbsp;local count
&nbsp;&nbsp;&nbsp;local alfa2=1*2/(1+2)
&nbsp;&nbsp;&nbsp;local alfa4=1*2/(1+4)

&nbsp;&nbsp;&nbsp;--в ma4s к минутным свечам добавляем значение ma с интервалом 4 пятиминутного графика, которое соответствует исторической свече
&nbsp;&nbsp;&nbsp;--в ma4 запишем значения ma с пятиминутного графика, которые видно на графике в моменте (т.е. когда минутная свеча завершена, а
&nbsp;&nbsp;&nbsp;-- 5-минутная еще нет "дыхание" )
&nbsp;&nbsp;&nbsp;--Начальные значения - SMA
&nbsp;&nbsp;&nbsp;count=0 --индекс одноминутных свечей в таблице price_con
&nbsp;&nbsp;&nbsp;sum_m1=0 -- сумма минутных ma1 (это же средняя цена свечи???)
&nbsp;&nbsp;&nbsp;for i=1, 4, 1 do -- в первые 3 пятиминутные свечи пишем 0, в 4ю обычное SMA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for j=1, 5, 1 do -- перебор одноминутных свечей
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;price_con&#91;count&#93;.ma4s=0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;price_con&#91;count&#93;.ma4=0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sum_m1=sum_m1+ma1&#91;count&#93;.high
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count=count+1
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;--четвертая пятиминутка на одноминутных свечах
&nbsp;&nbsp;&nbsp;local ma4s=sum_m1/count
&nbsp;&nbsp;&nbsp;for j=1, 5, 1 do -- перебор одноминутных свечей
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;price_con&#91;14+j&#93;.ma4s=ma4s
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;price_con&#91;14+j&#93;.ma4=0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sum_m1=sum_m1+ma1&#91;count&#93;.high
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count=count+1
&nbsp;&nbsp;&nbsp;end

&nbsp;&nbsp;&nbsp;local last_ma4_t5=ma4s -- предыдущее значение ma4
&nbsp;&nbsp;&nbsp;count = 1 --счетчик одминуных свечей (1..5)
&nbsp;&nbsp;&nbsp;local ma1s=0
&nbsp;&nbsp;&nbsp;--&nbsp;&nbsp;Далее перебор всех одноминутных свечей, кроме уже заданных первых 20ти (0..19)
&nbsp;&nbsp;&nbsp;for i=20, min_len-1, 1 do -- перебор минутных свечей
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;price_con&#91;i&#93;.ma4s=0 --определим для последних, попавших в незакрытую 5мин свечу
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ma1s=((ma1s*(count-1))+ma1&#91;i&#93;.high)/count --средняя цена в моменте (в незакрытой 5-ти минутной свече) (сумма минутных ma1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;price_con&#91;i&#93;.ma4=(alfa4*(ma1s))+((1-alfa4)*last_ma4_t5) --значение в моменте ("дыхание")

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (count==5) then -- Закончилась 5-ти мин. свеча - занесем итоговое значение ma4 в ma4s
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for j= 0, -4, -1 do
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;price_con&#91;i+j&#93;.ma4s=price_con&#91;i&#93;.ma4 -- итоговое значение
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count = 0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;last_ma4_t5=price_con&#91;i&#93;.ma4 --для следующе свечи
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count=count+1
&nbsp;&nbsp;&nbsp;end
end
</pre>
=============
<br /><p>Пояснение к коду: price_con – минутные свечи, к которым дописываем два свойства: ma4s –значение MA пятиминутной свечи в которую входит минутная(данное значение должно соответствовать тому, которое в это время выдавала бы MA с пятиминутного графика ), &nbsp;ma4 – это значение в моменте(когда минутная свеча закрылась, а соответствующая 5-ти мин. свеча еще нет). Каждым пяти одноминутным свечам, начиная с 0, соответствует одна воображаемая пятиминутная &nbsp;свеча.</p><p></p><p>За начальное значение для EMA – принимает среднее арифметическое. </p> <br />
			<i>04.12.2019 00:03:48, Сергей.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum13/message40951/topic4914/</link>
			<guid>http://forum.quik.ru/messages/forum13/message40951/topic4914/</guid>
			<pubDate>Wed, 04 Dec 2019 00:03:48 +0300</pubDate>
			<category>Графики</category>
		</item>
		<item>
			<title>Moving Average продублировать из 5мин в 1мин</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum13/message40937/topic4914/">Moving Average продублировать из 5мин в 1мин</a></b> <i>Нужно добиться одинаковых графиков ma на разных интервалах</i> в форуме <a href="http://forum.quik.ru/forum13/">Графики</a>. <br />
			Задача &quot;чтобы значения в одно и тоже время совпадали с MA на 5-ти минутке&quot; строгого решения не имеет. Причина раз: EMA задается (дробным) параметром альфа, а не (целым) периодом, задавая целым мы загрубляем результат. Причина два в три строчки не поместится, ключевые слова теорема Котельникова, частота Найквиста, БИХ-фильтр, а если с этим все ок, тогда вопрос, куда девается верхняя половина спектра (спойлер: отражается в нижнюю). <br />
			<i>03.12.2019 01:31:12, Anton.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum13/message40937/topic4914/</link>
			<guid>http://forum.quik.ru/messages/forum13/message40937/topic4914/</guid>
			<pubDate>Tue, 03 Dec 2019 01:31:12 +0300</pubDate>
			<category>Графики</category>
		</item>
		<item>
			<title>Moving Average продублировать из 5мин в 1мин</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum13/message40936/topic4914/">Moving Average продублировать из 5мин в 1мин</a></b> <i>Нужно добиться одинаковых графиков ma на разных интервалах</i> в форуме <a href="http://forum.quik.ru/forum13/">Графики</a>. <br />
			И так же нужно, чтобы во время торгов они вели себя одинаково. (Одинаково &quot;дышали&quot;). <br />
			<i>02.12.2019 23:47:06, Сергей.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum13/message40936/topic4914/</link>
			<guid>http://forum.quik.ru/messages/forum13/message40936/topic4914/</guid>
			<pubDate>Mon, 02 Dec 2019 23:47:06 +0300</pubDate>
			<category>Графики</category>
		</item>
		<item>
			<title>Moving Average продублировать из 5мин в 1мин</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum13/message40935/topic4914/">Moving Average продублировать из 5мин в 1мин</a></b> <i>Нужно добиться одинаковых графиков ma на разных интервалах</i> в форуме <a href="http://forum.quik.ru/forum13/">Графики</a>. <br />
			<p>Здравствуйте, коллеги.</p><p>Помогите разобраться: есть график с интервалом 5 мин, на нем два Moving Average с количеством периодов 2 и 4, оба Exponencial, поле цены Close. Нужно получить такие же (т.е. чтобы значения в одно и тоже время совпадали с MA на 5-ти минутке) на графике с интервалом 1 мин.</p><img src="http://lukoza.ru/image/ma.JPG" alt="Пользователь добавил изображение" border="0" /><br />Простое увеличение периодов MA на минутном графике до 10 и 20 не приносит желаемого<br />результата. Есть идеи? <br />
			<i>02.12.2019 23:31:16, Сергей.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum13/message40935/topic4914/</link>
			<guid>http://forum.quik.ru/messages/forum13/message40935/topic4914/</guid>
			<pubDate>Mon, 02 Dec 2019 23:31:16 +0300</pubDate>
			<category>Графики</category>
		</item>
	</channel>
</rss>
