﻿<?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">О LastTradeQuotingStrategy</title>
  <id>~/topic/1221/o-lasttradequotingstrategy/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-27T22:11:02Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=1221" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/4623/</id>
    <title type="text">Вопрос снят. Спешил задать его, не попробовав внести изменения с учётом уточнения Михаила. Теперь ко...</title>
    <published>2010-11-16T08:48:32Z</published>
    <updated>2016-08-16T02:32:52Z</updated>
    <author>
      <name>Soloton</name>
      <uri>https://stocksharp.ru/users/80/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Вопрос снят. Спешил задать его, не попробовав внести изменения с учётом &lt;a href="http://stocksharp.com/posts/m/4607/"&gt;уточнения&lt;/a&gt; Михаила.
Теперь код выглядит так.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;public class MyLastTradeQuotingStrategy : LastTradeQuotingStrategy
{
    Unit ChangeInPrice;
    public MyLastTradeQuotingStrategy(Order order, Unit marketDelta ,Unit changeInPrice)
        : base(order, marketDelta)
    {
        this.ChangeInPrice = changeInPrice;
    }

    protected override double GetNewPrice()
    {
        var r = base.GetNewPrice();
        r = Math.Round((double)(r + (base.Order.Direction == OrderDirections.Buy ? new Unit(-this.ChangeInPrice.Value, this.ChangeInPrice.Type) : this.ChangeInPrice)), base.Security.Decimals);
        return r;
    }
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Работает как задумывалось.
Прошу прощения, если успел кого-нибудь ввести в заблуждение.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/4622/</id>
    <title type="text">Может это я не так понял документацию? Ожидалось, что цена в выставляемой стратегией заявке будет из...</title>
    <published>2010-11-16T06:29:41Z</published>
    <updated>2010-11-16T06:29:41Z</updated>
    <author>
      <name>Soloton</name>
      <uri>https://stocksharp.ru/users/80/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Может это я не так понял документацию?
Ожидалось, что цена в выставляемой стратегией заявке будет изменена на величину &lt;em&gt;MarketDelta&lt;/em&gt;. Т.е. при последней сделке в 1000р. и &lt;em&gt;MarketDelta&lt;/em&gt; 0,1%, заявка выставится с ценой 1001р. при продаже и 999р. при покупке. И так при каждой новой не нашей сделке.&lt;/p&gt;
&lt;p&gt;Пробую реализовать такое поведение, создав класс-потомок &lt;em&gt;LastTradeQuotingStrategy&lt;/em&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;public class MyLastTradeQuotingStrategy : LastTradeQuotingStrategy
{
    public MyLastTradeQuotingStrategy(Order order, Unit marketDelta)
        : base(order, marketDelta) {}

    protected override double GetNewPrice()
    {
        var r = base.GetNewPrice();
        r = Math.Round((double)(r + (base.Order.Direction == OrderDirections.Buy ? new Unit(-base.MarketDelta.Value, base.MarketDelta.Type) : base.MarketDelta)), base.Security.Decimals);
        return r;
    }
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Работает, однако что-то всё же делаю не так или не делаю как надо, потому что ожидаемой реакции на сделки нет. Заявка выставляется, но изменение происходит только при завершении заявки. Что упустил?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/4607/</id>
    <title type="text">Soloton: Что-то оно совсем не так работает, как описано в документации. Судя по всему ошибка в доке....</title>
    <published>2010-11-15T13:26:18Z</published>
    <updated>2010-11-15T13:26:18Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Soloton:&lt;/strong&gt;
Что-то оно совсем не так работает, как описано в документации.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Судя по всему ошибка в доке. MarketDelta учитывается при определении лучшей цены (в данном случае послед сделки). Если она ушла на эту дельту - перестановка. Честно говоря, уже не помню когда случилась разсинхронизация с документацией. Спасибо, исправлю. И да, а какое поведение ожидалось?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/4603/</id>
    <title type="text">Что-то оно совсем не так работает, как описано в документации. Насколько я понял, в конструкторе Las...</title>
    <published>2010-11-15T08:05:04Z</published>
    <updated>2010-11-15T08:05:04Z</updated>
    <author>
      <name>Soloton</name>
      <uri>https://stocksharp.ru/users/80/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Что-то оно совсем не так работает, как описано в документации.
Насколько я понял, в конструкторе &lt;em&gt;LastTradeQuotingStrategy&lt;/em&gt; предполагается в качестве параметра передать &lt;em&gt;Unit&lt;/em&gt;, с параметрами которого стратегия будет работать для изменения цены выставляемой заявки. Пробую:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;...
strategy = new QuotingStrategy(order, new Unit() { Type = UnitTypes.Percent, Value = 1 });
if (strategy != null)
{
    base.ChildStrategies.Add(strategy);
    strategy.Start();
}
...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;В логе вижу, что стратегия работает, выставляет заявку и, как и ожидалось, меняет её с учётом последней сделки, но почему-то Unit не учитывается совсем. Я что-то не так делаю?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>