<?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, 14 Apr 2026 03:43:21 +0300</pubDate>
		<item>
			<title>Не соображу как сделать суммирование по фирме</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum9/message6365/topic655/">Не соображу как сделать суммирование по фирме</a></b> <i>есть простой портфель с колонками идентификатор, торговый счет, вариационная маржа.</i> в форуме <a href="http://forum.quik.ru/forum9/">Программирование на языке QPILE</a>. <br />
			Прошу прощения, добавлю: это только пример, он будет правильно работать только в случае, если данные по таблице ограничений в хранилище клиентского места отсортированы по полю Фирма. В противном случае следует использовать более сложные алгоритмы группировки. <br />
			<i>23.06.2015 18:26:42, Олег Хуснутдинов.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum9/message6365/topic655/</link>
			<guid>http://forum.quik.ru/messages/forum9/message6365/topic655/</guid>
			<pubDate>Tue, 23 Jun 2015 18:26:42 +0300</pubDate>
			<category>Программирование на языке QPILE</category>
		</item>
		<item>
			<title>Не соображу как сделать суммирование по фирме</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum9/message6364/topic655/">Не соображу как сделать суммирование по фирме</a></b> <i>есть простой портфель с колонками идентификатор, торговый счет, вариационная маржа.</i> в форуме <a href="http://forum.quik.ru/forum9/">Программирование на языке QPILE</a>. <br />
			Здравствуйте.<br /><br />Если мы правильно поняли, то в таблице ограничений может быть более одного уникального кода фирмы. В таком случае требуется алгоритм группировки по фирмам, например, можно реализовать так (в последних строках программируемой таблицы будут суммарные значения в разрезе фирм, строки отличаются от остальных пустым торговым счётом):<br /><br /><br />
====code====
<pre>PORTFOLIO_EX dost;
DESCRIPTION сумма маржи;
CLIENTS_LIST ALL_CLIENTS;
FIRMS_LIST FIRMID;
USE_CASE_SENSITIVE_CONSTANTS;
PROGRAM
delete_all_items()

items_counter=1
vm_map=CREATE_MAP()
firmid_map=CREATE_MAP()
prev_value=""


n=get_number_of("FUTURES_CLIENT_LIMITS")
for i fr om 1 to n
 limit = get_item("FUTURES_CLIENT_LIMITS", i)
 add_item(i, limit)

 IF prev_value!=GET_VALUE(limit,"FIRMID") AND i&#62;1
 items_counter=items_counter+1
 END IF

 
 IF i&#60;2
 vm_map=SET_VALUE(vm_map,items_counter,GET_VALUE(limit,"VARMARGIN"))
 firmid_map=SET_VALUE(firmid_map,items_counter,GET_VALUE(limit,"FIRMID"))
 ELSE
 vm_map=SET_VALUE(vm_map,items_counter, GET_VALUE(limit,"VARMARGIN")+GET_VALUE(vm_map,items_counter))
 firmid_map=SET_VALUE(firmid_map,items_counter,GET_VALUE(limit,"FIRMID"))

 END IF

 prev_value=GET_VALUE(limit,"FIRMID")
 
end for

for i fr om n+1 to n+items_counter
limit=SET_VALUE(limit, "VARMARGIN", GET_VALUE(vm_map, i-n))
limit=SET_VALUE(limit, "FIRMID", GET_VALUE(firmid_map, i-n))
limit=SET_VALUE(lim it, "TRDACCID", "")
add_item(i, lim it)
end for


END_PROGRAM

PARAMETER FIRMID;
PARAMETER_TITLE Идентификатор фирмы;
PARAMETER_DESCRIPTION Идентификатор фирмы;
PARAMETER_TYPE STRING(128) ; 
END
PARAMETER TRDACCID;
PARAMETER_TITLE Торговый счет;
PARAMETER_DESCRIPTION Торговый счет;
PARAMETER_TYPE STRING(128) ; 
END

PARAMETER VARMARGIN;
PARAMETER_TITLE Вариационная маржа;
PARAMETER_DESCRIPTION Вариационная маржа;
PARAMETER_TYPE NUMERIC(14,2);
END

END_PORTFOLIO_EX
 </pre>
============= <br />
			<i>23.06.2015 18:12:57, Олег Хуснутдинов.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum9/message6364/topic655/</link>
			<guid>http://forum.quik.ru/messages/forum9/message6364/topic655/</guid>
			<pubDate>Tue, 23 Jun 2015 18:12:57 +0300</pubDate>
			<category>Программирование на языке QPILE</category>
		</item>
		<item>
			<title>Не соображу как сделать суммирование по фирме</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum9/message6356/topic655/">Не соображу как сделать суммирование по фирме</a></b> <i>есть простой портфель с колонками идентификатор, торговый счет, вариационная маржа.</i> в форуме <a href="http://forum.quik.ru/forum9/">Программирование на языке QPILE</a>. <br />
			есть простой портфель с колонками идентификатор, торговый счет, вариационная маржа.<br />Хотелось бы добавить строку с итоговой суммой вариационной маржи по фирме (идентификатору)<br />PORTFOLIO_EX dost;<br />DESCRIPTION сумма маржи;<br />CLIENTS_LIST ALL_CLIENTS;<br />FIRMS_LIST FIRMID;<br />USE_CASE_SENSITIVE_CONSTANTS<br />PROGRAM<br />delete_all_items()<br />n=get_number_of(&quot;FUTURES_CLIENT_LIMITS&quot;)<br />for i fr om 1 to &nbsp;n<br /> limit = get_item(&quot;FUTURES_CLIENT_LIMITS&quot;, i)<br /> add_item(i, lim it)<br />end for<br /><br />END_PROGRAM<br /><br />PARAMETER FIRMID;<br />PARAMETER_TITLE Идентификатор фирмы;<br />PARAMETER_DESCRIPTION Идентификатор фирмы;<br />PARAMETER_TYPE STRING(12 8) ; <br />END<br />PARAMETER TRDACCID;<br />PARAMETER_TITLE Торговый счет;<br />PARAMETER_DESCRIPTION Торговый счет;<br />PARAMETER_TYPE STRING(12 8) ; <br />END<br /><br />PARAMETER VARMARGIN;<br />PARAMETER_TITLE Вариационная маржа;<br />PARAMETER_DESCRIPTION Вариационная маржа;<br />PARAMETER_TYPE NUMERIC(14,2);<br />END<br /><br />END_PORTFOLIO_EX<br /><br /><br />
====code====
<pre> </pre>
=============
 <br /><br /><br />
====code====
<pre>&#91;/CODE&#93;&#91;CODE&#93;</pre>
=============

====code====
<pre>&#91;/CODE&#93;&#91;CODE&#93;</pre>
=============

====code====
<pre>&#91;/CODE&#93;&#91;CODE&#93;</pre>
=============

====code====
<pre>&#91;/CODE&#93;&#91;CODE&#93;</pre>
=============

====code====
<pre>&#91;/CODE&#93;&#91;CODE&#93; </pre>
============= <br />
			<i>23.06.2015 15:35:12, Дмитрий Соломатин.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum9/message6356/topic655/</link>
			<guid>http://forum.quik.ru/messages/forum9/message6356/topic655/</guid>
			<pubDate>Tue, 23 Jun 2015 15:35:12 +0300</pubDate>
			<category>Программирование на языке QPILE</category>
		</item>
	</channel>
</rss>
