<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: Данные с индикатора. Просто и быстро.]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме Данные с индикатора. Просто и быстро. форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Tue, 21 Apr 2026 02:34:50 +0300</pubDate>
		<item>
			<title>Данные с индикатора. Просто и быстро.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum17/message80775/topic9417/">Данные с индикатора. Просто и быстро.</a></b> в форуме <a href="http://forum.quik.ru/forum17/">Обмен опытом</a>. <br />
			Продолжение здесь:<br /><noindex><a href="https://forum.quik.ru/messages/forum17/message80774/topic9418/?result=new#message80774" target="_blank" rel="nofollow">https://forum.quik.ru/messages/forum17/message80774/topic9418/?result=new#message80774</a></noindex> <br />
			<i>04.01.2026 19:07:57, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum17/message80775/topic9417/</link>
			<guid>http://forum.quik.ru/messages/forum17/message80775/topic9417/</guid>
			<pubDate>Sun, 04 Jan 2026 19:07:57 +0300</pubDate>
			<category>Обмен опытом</category>
		</item>
		<item>
			<title>Данные с индикатора. Просто и быстро.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum17/message80773/topic9417/">Данные с индикатора. Просто и быстро.</a></b> в форуме <a href="http://forum.quik.ru/forum17/">Обмен опытом</a>. <br />
			Теперь добавляю надписи в скрипт.
====code====
<pre>Settings={ tag="moving", Name = '*nk_test'}
params={R=0,G=0,B=255,TRANSPARENCY=0,FONT_HEIGHT=10,TRANSPARENT_BACKGROUND= 1,FONT_FACE_NAME= 'Verdana'}

function ind(i,tag,t)
&nbsp;&nbsp;local M=getNumCandles (tag);&nbsp;&nbsp;
&nbsp;&nbsp;if M&#62;=i then x=getCandlesByIndex(tag,0,i,1); if x then t&#91;#t+1&#93;=x&#91;0&#93;.close end&nbsp;&nbsp; end
&nbsp;&nbsp;end

function OnCalculate(i)
local buy,sel;
&nbsp;&nbsp;if i==1 then&nbsp;&nbsp;i1=0; t={}; BS=0;
&nbsp;&nbsp;elseif i1~=i&nbsp;&nbsp;then&nbsp;&nbsp;ind(i1,Settings.tag,t);&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if #t&#62;0 then&nbsp;&nbsp;local x=t&#91;#t&#93;;&nbsp;&nbsp;if L(i)&#62;x and 0&#62;=BS then&nbsp;&nbsp;buy=L(i)-0.05; BS=1; params.TEXT="buy" 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end&nbsp;&nbsp;if x&#62;H(i) and BS&#62;=0 then&nbsp;&nbsp; sel=H(i)+0.05 BS=-1; params.TEXT="sel" end end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-----------------------------------
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if sel or buy then&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local x=T(i); params.DATE=100*(100*x.year+x.month)+x.day; params.TIME=100*(100*x.hour+x.min)+x.sec;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if buy then&nbsp;&nbsp;params.YVALUE=buy-0.1 else&nbsp;&nbsp;params.YVALUE=sel+0.1 end;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Label=AddLabel(Settings.tag,params); 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-------------------------------
&nbsp;&nbsp; end
&nbsp;&nbsp;i1=i;&nbsp;&nbsp;
 return buy,sel;
 end

function Init() 
local t={} Settings.line =t;
&nbsp;&nbsp;&nbsp;t&#91;#t+1&#93;={Name = "Bu",Color = RGB(0,255,0),Type = 10,Width = 4};
&nbsp;&nbsp;&nbsp;&nbsp;t&#91;#t+1&#93;={Name = "Se",Color = RGB(255,0,0),Type = 11,Width = 4};
&nbsp;&nbsp;&nbsp;return #t; end
&nbsp;&nbsp;&nbsp;&nbsp;
function OnDestroy ()&nbsp;&nbsp;DelAllLabels(Settings.tag) end
</pre>
=============
получаем вот такой результат торгового советника:<br />[FILE ID=13042] <br />
			<img src="https://forum.quik.ru/bitrix/components/bitrix/forum.interface/show_file.php?fid=13042&" width="1098" height="720" /><br /><i>04.01.2026 15:49:55, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum17/message80773/topic9417/</link>
			<guid>http://forum.quik.ru/messages/forum17/message80773/topic9417/</guid>
			<pubDate>Sun, 04 Jan 2026 15:49:55 +0300</pubDate>
			<category>Обмен опытом</category>
		</item>
		<item>
			<title>Данные с индикатора. Просто и быстро.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum17/message80772/topic9417/">Данные с индикатора. Просто и быстро.</a></b> в форуме <a href="http://forum.quik.ru/forum17/">Обмен опытом</a>. <br />
			Теперь покажу простой скрипт-индикатор &nbsp;торгового советника. &nbsp;<br />Он реализует следующий алгоритм: &nbsp;<br />-----------------------<br />Покупаем, если минимум свечи выше мувинга. <br />продаем, если максимум свечи &nbsp;ниже мувинга.<br />---------------------<br />Чтение данных мувинга вынес в отдельную функцию. <br />Вот этот скрипт: &nbsp;
====code====
<pre>Settings={ tag="moving", Name = '*nk_test'}

function ind(i,tag,t)
&nbsp;&nbsp;local M=getNumCandles (tag);&nbsp;&nbsp;
&nbsp;&nbsp;if M&#62;=i then x=getCandlesByIndex(tag,0,i,1); if x then t&#91;#t+1&#93;=x&#91;0&#93;.close end&nbsp;&nbsp; end
&nbsp;&nbsp;end

function OnCalculate(i)
local buy,sel;
&nbsp;&nbsp;if i==1 then&nbsp;&nbsp;i1=0; t={}; BS=0;
&nbsp;&nbsp;elseif i1~=i&nbsp;&nbsp;then&nbsp;&nbsp;ind(i1,Settings.tag,t);&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if #t&#62;0 then&nbsp;&nbsp;local x=t&#91;#t&#93;;&nbsp;&nbsp;if L(i)&#62;x and 0&#62;=BS then buy=L(i)-0.05; BS=1;&nbsp;&nbsp;end&nbsp;&nbsp;if x&#62;H(i) and BS&#62;=0 then sel=H(i)+0.05 BS=-1; end end
&nbsp;&nbsp; end
&nbsp;&nbsp;i1=i;&nbsp;&nbsp;
 return buy,sel;
 end

function Init() 
local t={} Settings.line =t;
&nbsp;&nbsp;&nbsp;t&#91;#t+1&#93;={Name = "Bu",Color = RGB(0,255,0),Type = 10,Width = 4};
&nbsp;&nbsp;&nbsp;&nbsp;t&#91;#t+1&#93;={Name = "Se",Color = RGB(255,0,0),Type = 11,Width = 4};
&nbsp;&nbsp;&nbsp;return #t; end

</pre>
=============
а это результат работы советника:<br />[FILE ID=13041] <br />
			<img src="https://forum.quik.ru/bitrix/components/bitrix/forum.interface/show_file.php?fid=13041&" width="1078" height="688" /><br /><i>04.01.2026 15:23:57, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum17/message80772/topic9417/</link>
			<guid>http://forum.quik.ru/messages/forum17/message80772/topic9417/</guid>
			<pubDate>Sun, 04 Jan 2026 15:23:57 +0300</pubDate>
			<category>Обмен опытом</category>
		</item>
		<item>
			<title>Данные с индикатора. Просто и быстро.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum17/message80770/topic9417/">Данные с индикатора. Просто и быстро.</a></b> в форуме <a href="http://forum.quik.ru/forum17/">Обмен опытом</a>. <br />
			и еще...<br />Все существующие на графике свечи будут считаны в момент открытия графика.<br />Поэтому &nbsp;в последующие моменты будет считываться лишь последняя закрытая свеча и только один раз. &nbsp; <br />
			<i>04.01.2026 09:31:27, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum17/message80770/topic9417/</link>
			<guid>http://forum.quik.ru/messages/forum17/message80770/topic9417/</guid>
			<pubDate>Sun, 04 Jan 2026 09:31:27 +0300</pubDate>
			<category>Обмен опытом</category>
		</item>
		<item>
			<title>Данные с индикатора. Просто и быстро.</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum17/message80769/topic9417/">Данные с индикатора. Просто и быстро.</a></b> в форуме <a href="http://forum.quik.ru/forum17/">Обмен опытом</a>. <br />
			Тема для начинающих писателей роботов.<br />----------------------------<br />Ранее на форуме я рассказывал как построить робота-эксперта &nbsp;на основе двух любых индикаторов отображаемых на графике.<br /><noindex><a href="https://forum.quik.ru/forum17/topic7630/" target="_blank" rel="nofollow">https://forum.quik.ru/forum17/topic7630/</a></noindex><br />---------------------------<br />В этой теме поясню как читать данные с индикатора быстро и просто. <br />------------------------<br />Напишем пример скрипта индикатора, который считывает значения индикатора moving в массив t и выводит на график значения индикатора смещенные на 0.1 в виде зеленых треугольников .<br />---------------------------<br />При этом &nbsp;сделаем так, чтобы индикатор не тратил время на считывание тиков, а читал значение индикатора один раз в момент появления новой свечи цены. <br /><br />В моих роботах именно в этот момент и принимается решение о выставлении заявки. <br /><br />Т е решение принимается в момент открытия новой свечи . <br />------------------------------ &nbsp;<br />Если робот будет торговать на интервала 30 минут, то чтение индикатора будет происходить всего 1 раз в 30 минут именно на открытии новой свечи. <br />
====code====
<pre>Settings={ tag="moving", Name = '*nk_test'}

function OnCalculate(i)
 if i==1 then&nbsp;&nbsp;i1=0; t={};
 elseif i1~=i&nbsp;&nbsp;then local M=getNumCandles (Settings.tag);&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;if M&#62;=i then x=getCandlesByIndex(Settings.tag,0,i1,1); if x then t&#91;#t+1&#93;=x&#91;0&#93;.close end&nbsp;&nbsp;i1=i;&nbsp;&nbsp;end
 end
 i1=i;&nbsp;&nbsp;if #t&#62;0 and t&#91;#t&#93;~=0 then&nbsp;&nbsp;return t&#91;#t&#93;+0.1; end
end

function Init() 
local t={} Settings.line =t;
t&#91;#t+1&#93;={Name = "Bu",Color = RGB(0,255,0),Type = 10,Width = 3};
return #t;
end</pre>
=============
<br />[FILE ID=13039]<br /><br />это результат:<br />[FILE ID=13040] <br />
			<img src="https://forum.quik.ru/bitrix/components/bitrix/forum.interface/show_file.php?fid=13039&" width="1330" height="546" /><br /><img src="https://forum.quik.ru/bitrix/components/bitrix/forum.interface/show_file.php?fid=13040&" width="1112" height="736" /><br /><i>04.01.2026 09:18:57, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum17/message80769/topic9417/</link>
			<guid>http://forum.quik.ru/messages/forum17/message80769/topic9417/</guid>
			<pubDate>Sun, 04 Jan 2026 09:18:57 +0300</pubDate>
			<category>Обмен опытом</category>
		</item>
	</channel>
</rss>
