﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Несколько вопросов по счетчику прибыль/убыток по 1 инструменту</title>
  <id>~/topic/1023/neskolko-voprosov-po-schetchiku-pribylubytok-po-1-instrumentu/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-05-16T11:03:19Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=1023" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/2988/</id>
    <title type="text">Здравствуйте Михаил. 1)Есть необходимость считать прибыль|убыток без учета позиции, т.е. сколько нат...</title>
    <published>2010-06-10T22:32:00Z</published>
    <updated>2010-06-10T22:32:00Z</updated>
    <author>
      <name>Dord</name>
      <uri>https://stocksharp.com/users/28269/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Здравствуйте Михаил.&lt;br /&gt;&lt;br /&gt;1)Есть необходимость считать прибыль|убыток без учета позиции, т.е.&lt;br /&gt;сколько наторговали за день в независимости от того какая позиция&lt;br /&gt;сейчас( если позиция открыта, то для подсчета она виртуально должна&lt;br /&gt;закрываться по рынку, я так думаю). Из методов я нашел&lt;br /&gt;_strategy.PnLManager.RelatedValue. Он так действует как я описал или&lt;br /&gt;иначе?&lt;br /&gt;&lt;br /&gt;2) Еще желательно посчитать в таком же виде прибыль|убыток, но только&lt;br /&gt;например за последнюю минуту. Получается уж больно громоздко и&lt;br /&gt;приблизительно из-за того что в перечислении сделок за последнюю&lt;br /&gt;минуту может находиться разное кол-во сделок(точнее я считаю объем&lt;br /&gt;контрактов в этих сделках) на покупку и продажу даже при нулевой&lt;br /&gt;позиции по инструменту(например попадает сделка на продажу, которая&lt;br /&gt;закрывала позицию для сделки на покупку совершенной более чем минуту&lt;br /&gt;назад)&lt;br /&gt;&lt;br /&gt;// сделки на покупку за прошедшую минуту&lt;br /&gt;var _1minBuyTrades = _strategy1.Trades.Where(t =&amp;gt; (t.Trade.Time &amp;gt;&lt;br /&gt;(_trader.MarketTime - TimeSpan.FromMinutes(1)) &amp;amp;&lt;br /&gt;t.Trade.OrderDirection == OrderDirections.Buy));&lt;br /&gt;// сделки на продажу за последнюю минуту&lt;br /&gt;var _1minSellTrades = _strategy1.Trades.Where(t =&amp;gt; (t.Trade.Time &amp;gt;&lt;br /&gt;(_trader.MarketTime - TimeSpan.FromMinutes(1)) &amp;amp;&lt;br /&gt;t.Trade.OrderDirection == OrderDirections.Sell));&lt;br /&gt;// Прибыль|убыток за последнюю минуту = (объем контрактов Buy в каждой&lt;br /&gt;сделке*цена сделки минус&lt;br /&gt;// (объем контрактов Buy - объем контрактов Sell + объем контрактов в&lt;br /&gt;позиции)*цену середины спреда&lt;br /&gt;// минус объем контрактов Sell в каждой сделке*цена сделки)&lt;br /&gt;_1minuteProfit = _1minBuyTrades.Sum(rr =&amp;gt;&lt;br /&gt;(rr.Trade.Volume*rr.Trade.Price)) - (_1minBuyTrades.Sum(tr =&amp;gt;&lt;br /&gt;tr.Trade.Volume) - (_1minSellTrades.Sum(tr =&amp;gt; tr.Trade.Volume) +&lt;br /&gt;MainStrategyPositionCounter))*_strategy1.Security.GetMarketPrice(OrderDiretions.Sell,&lt;br /&gt;MarketPriceTypes.Middle) - _1minSellTrades.Sum(rr =&amp;gt;&lt;br /&gt;(rr.Trade.Volume*rr.Trade.Price));&lt;br /&gt;&lt;br /&gt;Мне не обязательно высчитывая прибыльность торговли по времени, можно&lt;br /&gt;и по кол-ву последних сделок в обе стороны, но прикидывая такой&lt;br /&gt;вариант у меня вышло еще сложнее.&lt;br /&gt;Если вы делали что-то подобное, подскажите как это упростить? &lt;br /&gt; </content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>