﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Ошибка при установке StopLoss в процентах</title>
  <id>~/topic/4157/oshibka-pri-ustanovke-stoploss-v-protsentah/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-25T18:55:58Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=4157" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/28370/</id>
    <title type="text">P.S.: В 4.2.1 этот код не изменился, т.е. ошибка должна быть. Проверить не могу, из-за проблем с ген...</title>
    <published>2013-11-22T06:55:01Z</published>
    <updated>2013-11-22T06:55:01Z</updated>
    <author>
      <name>Marco</name>
      <uri>https://stocksharp.ru/users/6041/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">P.S.: В 4.2.1 этот код не изменился, т.е. ошибка должна быть. Проверить не могу, из-за проблем с генерацией тестовых стаканов.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/28284/</id>
    <title type="text">Приветствую, При переходе с 4.1.8 на 4.1.19 обнаружил, что StopLossStrategy стала генерировать следу...</title>
    <published>2013-11-18T18:34:19Z</published>
    <updated>2013-11-18T18:34:19Z</updated>
    <author>
      <name>Marco</name>
      <uri>https://stocksharp.ru/users/6041/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">Приветствую,&lt;br /&gt;&lt;br /&gt;При переходе с 4.1.8 на 4.1.19 обнаружил, что StopLossStrategy стала генерировать следующее исключение:&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:plain"&gt;

2013/11/18 09:30:19.290|Error  |SLS_RIZ3@FORTS_XXXXXXX|System.ArgumentException: Невозможно привести процентное значение в абсолютное.
Parameter name: unit
   at StockSharp.BusinessEntities.Unit.op_Explicit(Unit unit)
   at StockSharp.Algo.Strategies.StopLossStrategy.get_ActivationPrice()
   at StockSharp.Algo.Strategies.ProtectiveStrategy.NeedQuoting(Decimal currentPrice, Decimal currentVolume, Range`1 acceptablePriceRange, Decimal newVolume)
   at StockSharp.Algo.Strategies.QuotingStrategy.ProcessQuoting()
   at StockSharp.Algo.Strategies.QuotingStrategy.SyncProcessQuoting()
   at StockSharp.Algo.Strategies.QuotingStrategy.OnStarted()
   at StockSharp.Algo.Strategies.ProtectiveStrategy.OnStarted()
   at StockSharp.Algo.Strategies.Strategy.#=qtKQ9VNIVpLP1g1BUAZxdTGU5EYfMco3AM7uGI5mgJio=(ProcessStates #=qEConwVuDh98j4XAFNYit9w==)
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;В старых версиях StockSharp для расчета ActivationPrice использовалось следующее выражение:&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
    var activationPrice = (decimal)(isBuy ? (decimal)_prevPrice - ProtectiveLevel : (decimal)_prevPrice + ProtectiveLevel);&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;При вычислении выражения типы операндов неявно приводились к Unit и затем результат приводился к decimal. Все работало.&lt;br /&gt;&lt;br /&gt;В новой версии судя по всему ProtectiveLevel явно приводится к decimal. В результате получаем исключение. Декомпилированный кусочек кода:&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:plain"&gt;

Decimal num1 = this.ProtectiveLevel.Type == UnitTypes.Limit ? MathHelper.Abs(this.BasePrice - (Decimal) this.ProtectiveLevel) : (Decimal)this.ProtectiveLevel;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Есть ли ошибка в версии 4.2.1 - еще не проверял.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>