<?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 05:36:21 +0300</pubDate>
		<item>
			<title>Торговый советник - это просто. </title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum17/message80774/topic9418/">Торговый советник - это просто. </a></b> в форуме <a href="http://forum.quik.ru/forum17/">Обмен опытом</a>. <br />
			Тема для начинающих писателей роботов.<br />Продолжение темы: <br /><noindex><a href="https://forum.quik.ru/messages/forum17/message80773/topic9417/#message80773" target="_blank" rel="nofollow">https://forum.quik.ru/messages/forum17/message80773/topic9417/#message80773</a></noindex><br />------------------------- <br />Чтобы сразу не сливать депозит, &nbsp;лучше написать робот-советник, который на истории покажет , что он сможет.<br />---------------------------<br />Напишем такой советник.<br />Для этого в приведенный по ссылке выше скрипт добавим расчет прибыли/убытков при совершении сделок по приведенному ранее(см ссылку) алгоритму<br />------------------------<br />Примем что брокер и биржа забирают com=0.006 (0.6%)<br />Расчет будет проводить в %, количество лотов примем равным 1. Сделки совершаются в long и short.<br />В результате получился вот такой скрипт:
====code====
<pre>function OnCalculate(i)
&nbsp;&nbsp;local buy,sel;
&nbsp;&nbsp;if i==1 then OnChangeSettings() 
&nbsp;&nbsp;&nbsp;&nbsp;i1=0; t={}; Prof=0; Los=0; Q=Settings.Q; com=Settings.com; ProfAll=0;&nbsp;&nbsp;BS=0;
&nbsp;&nbsp;elseif i1~=i&nbsp;&nbsp;then 
&nbsp;&nbsp;&nbsp;&nbsp; ind(i1,Settings.tag,t); 
&nbsp;&nbsp;&nbsp;&nbsp; if #t&#62;0 then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local Oi,Hi,Li=O(i1),H(i1),L(i1)&nbsp;&nbsp;local prib=0;&nbsp;&nbsp;local z=T(i1);&nbsp;&nbsp; x=t&#91;#t&#93;; 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;params.DATE=100*(100*z.year+z.month)+z.day; 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;params.TIME=100*(100*z.hour+z.min)+z.sec;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if Li&#62;x and 0&#62;=BS then buy=Li-0.05;&nbsp;&nbsp;if BS==0 then prib=-com; else prib=(1-com)*(price/Oi-1); end&nbsp;&nbsp;BS=1; price=Oi; params.YVALUE=buy-0.1; end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if x&#62;Hi and BS&#62;=0&nbsp;&nbsp;then&nbsp;&nbsp;sel=Hi+0.05 if BS==0 then prib=-com; else prib=(1-com)*(Oi/price-1); end price=Oi;&nbsp;&nbsp;BS=-1; params.YVALUE=sel+0.1; end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if buy or sel then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ProfAll=ProfAll+prib;&nbsp;&nbsp;&nbsp;&nbsp;params.TEXT=(0.1*(1000*ProfAll//1)).."%" 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ProfAll&#62;=0 then params.B=255 params.R=0 else params.B=0 params.R=255 end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Label=AddLabel(Settings.tag,params);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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
&nbsp;&nbsp;&nbsp;&nbsp;
function OnDestroy ()&nbsp;&nbsp;DelAllLabels(Settings.tag) end
function OnChangeSettings() 
&nbsp;&nbsp;&nbsp;DelAllLabels(Settings.tag); 
end


</pre>
=============
 а это результат его тестирования на демо-сервере:<br />[FILE ID=13044] <br />
			<img src="https://forum.quik.ru/bitrix/components/bitrix/forum.interface/show_file.php?fid=13044&" width="1920" height="1080" /><br /><i>04.01.2026 19:07:20, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum17/message80774/topic9418/</link>
			<guid>http://forum.quik.ru/messages/forum17/message80774/topic9418/</guid>
			<pubDate>Sun, 04 Jan 2026 19:07:20 +0300</pubDate>
			<category>Обмен опытом</category>
		</item>
	</channel>
</rss>
