﻿<?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">Сообщество. StockSharp</title>
  <id>https://stocksharp.ru/handlers/atom.ashx?category=community&amp;page=226</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-19T11:48:45Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=community&amp;page=226" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/2199/</id>
    <title type="text">DDE в Windows 7 не работает</title>
    <published>2011-12-06T08:15:35Z</published>
    <updated>2011-12-06T08:15:35Z</updated>
    <author>
      <name>liaminor</name>
      <uri>https://stocksharp.ru/users/27817/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Просмотрел половину тем форума вручную, поискал поиском - ответов на свои вопросы не нашел. Итак, работаю на лицензионной Windows 7 Basic, установил Quik Junior 5.24.0.58. Начал читать про QPile, попробовал примеры - не понравилось. Начал поиски альтетнатив - нашел данный ресурс, обрадовался. Скчал, стал настраивать, пробовать... Вчера весь день пытался хоть что-то получитm с помощью DDE - не получилось. И в Quik таблицы пустые (Вывод через DDE сервер), и в примерах в составе пакета с данного ресурса. Все настройки на 10 раз проверил (Настройка-Основные-Получение данных- стоит Данные отражающие текущее состояние и всю историю изменений). Погуглил - оказалось что DDE в Windows 7 deprecated. Ок, стал пробовать с ODBC, установил SQL express 2008R2, закачал одну табличку (Инструменты), решил попрбовать поработать со свечами - и оказалось что в документации информация по источникам данным отличных от ITrader (а значит через DDE) отсутствует. Кто нить может подсказать что лучше сделать? Ставить Win XP, или как-то прикручивать ODBC?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2198/</id>
    <title type="text">Не формируются свечки</title>
    <published>2011-12-05T17:21:54Z</published>
    <updated>2011-12-05T17:21:54Z</updated>
    <author>
      <name>Marcopolo</name>
      <uri>https://stocksharp.ru/users/6457/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <content type="html">В Гидре опять перестали формироваться свечки (changeset 12283).</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2197/</id>
    <title type="text">проект SampleSmart</title>
    <published>2011-12-05T14:40:23Z</published>
    <updated>2011-12-05T14:40:23Z</updated>
    <author>
      <name>midvork</name>
      <uri>https://stocksharp.ru/users/28653/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="SmartCom" />
    <content type="html">Во время запуска примера (проект SampleSmart) выдается на строке кода  &amp;quot;this.Trader.Connect();&amp;quot;  сообщение :&lt;br /&gt;&lt;br /&gt;Attempt by security transparent method &amp;#39;Ecng.Common.Converter.To(System.Object, System.Type)&amp;#39; to access security critical method &amp;#39;System.Runtime.InteropServices.Marshal.SecureStringToBSTR(System.Security.SecureString)&amp;#39; failed.&lt;br /&gt;&lt;br /&gt;Перед запуском примера пробовал запустить в автоматическом режиме запускать сервис SmartCom2, но не помогает.&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2196/</id>
    <title type="text">SQLite</title>
    <published>2011-12-04T21:09:40Z</published>
    <updated>2011-12-04T21:09:40Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <content type="html">Собственно, случилось. Залито на КодеПлексе. Работает приемлемо.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2195/</id>
    <title type="text">Купим у фрилансеров новые фичи</title>
    <published>2011-12-03T10:15:02Z</published>
    <updated>2011-12-03T10:15:02Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">Всем привет!&lt;br /&gt;&lt;br /&gt;Хочу предложить идею совместного заказа новых фишек у фрилансеров. Например, коннекторы. У нас есть на данный момент 2 коннектора в пендинг состоянии - Транзак и Алор. Коннекторы, скажем там, далеко неплохие, если их довести до конца. По сравнению с Плазой обладают рядом преимуществ 1) нет абонентки 2) позволяют торговать на нескольких площадках 3) не требует серьезных технических средств (как то жирный канал, статик айпи и т.д.). Алор коннектор последней версии (называется Атенсис) вообще полностью написан на .NET, что делает его по настоящему родным для C# и S#. Положа руку на сердце, Квик является далеко не лучшим средством для программирования роботов. Да, я когда-то на нем начинал. Но зачем же совершать мои ошибки?&lt;br /&gt;&lt;br /&gt;Многие из нас уже торгую на западных площадках или только начинают присматриваться к ним. Конкретнее, мое направление - это CME. Значит на выбор или OEC или IB (возможно еще и ZF).&lt;br /&gt;&lt;br /&gt;Коннектор стоит порядка 100 штук (средняя температура по больнице, так как сильно зависит от качества торгового шлюза). Делать его примерно 1-2 месяца фултайм. Мое личное мнение, что не все готовы потратить такую сумму. Возможно, есть и те, кто готов, но не хочет вкладывать деньги в проект, который в последствие будет доступен всем остальным. Я предлагаю сбрасываться группой. Сумма от этого уменьшается в разы, и эффект, что платишь за кого-то исчезает, так как ты не один такой. В качестве примеры готов вложиться наравне со всеми, не зависимо, что решат заказать (нужное мне или нет).&lt;br /&gt;&lt;br /&gt;Для разработки у нас есть все: 1) КодеПлекс для хранения исходников и просмотра хода работы 2) Документация по АПИ 3) Существующие коннекторы с исходниками как примеры 4) Команда Stock# для ответов есть.&lt;br /&gt;&lt;br /&gt;Что скажет олл?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2194/</id>
    <title type="text">Правило Order.NewTades()  и обновление Order.Balance</title>
    <published>2011-12-02T12:44:53Z</published>
    <updated>2011-12-02T12:44:53Z</updated>
    <author>
      <name>profts</name>
      <uri>https://stocksharp.ru/users/6174/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Столкнулся с такой проблемой...&lt;br /&gt;&lt;br /&gt;При появлении события новой сделки по заявке, нужно достать пройденный объем по данной заявке. &lt;br /&gt;&lt;br /&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Цитата:&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;br /&gt;this&lt;br /&gt;                      .When(MicexOrder.NewTrades())&lt;br /&gt;                      .Do(trades =&amp;gt; Volume(MicexOrder));&lt;br /&gt;&lt;br /&gt;private void Volume(Order IspolnennaySdelka)&lt;br /&gt;        {&lt;br /&gt;            IspolnenVol =  IspolnennaySdelka.Volume - IspolnennaySdelka.Balance;&lt;br /&gt;            //IspolnenVolKotir = IspolnennaySdelka.GetMatchedVolume();&lt;br /&gt;        }&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Но Balance не всегда успевает обновиться и на выходе получаю пройденный объем = 0. &lt;br /&gt;Т.е. правило уже срабатывает и заявка полностью исполняется, но в методе Volume() данная заявка еще Aсtivе и Balance = Volume.&lt;br /&gt;  </content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2192/</id>
    <title type="text">Преимущества Plaza 2</title>
    <published>2011-12-02T07:20:42Z</published>
    <updated>2011-12-02T07:20:42Z</updated>
    <author>
      <name>freelancer</name>
      <uri>https://stocksharp.ru/users/28572/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Plaza 2" />
    <content type="html">Меня интересуют проскальзывания при стопах и гэпы. Даёт ли это подключение какое-то преимущества ?&lt;br /&gt;Как хранить стопы в этом случае ?&lt;br /&gt;Свечная стратегия будет работать ? За какой период можно формировать свечи ?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2191/</id>
    <title type="text">Ошибка с кодом 1000</title>
    <published>2011-12-01T06:34:38Z</published>
    <updated>2011-12-01T06:34:38Z</updated>
    <author>
      <name>frontman</name>
      <uri>https://stocksharp.ru/users/28487/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Plaza 2" />
    <content type="html">Не пойму откуда взялась вот эта ошибка &lt;br /&gt;&amp;quot;Произошла ошибка. Код 10000, описание &amp;#39;System level error in processing message&amp;#39;.&amp;quot;&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;
private void ProcessReply(Transaction originMessage, IMessageWrapper reply)
		{
			var replyTransaction = new Transaction(originMessage, reply);
			AddTransaction(replyTransaction);

			PlazaException errorInfo;

			if (replyTransaction.GetCategory() == TransactionFactory.MessagesCategory)
			{
				var code = replyTransaction.GetReplyCode();
				errorInfo = code == 0 ? null : new PlazaException(code, replyTransaction.GetMessage());
			}
			else
				errorInfo = new PlazaException(replyTransaction.GetErrorCode(), &amp;quot;Неизвестная ошибка.&amp;quot;);

			replyTransaction.ErrorInfo = errorInfo;

			ProcessResponse.SafeInvoke(replyTransaction);
		}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;При попытки выставить заявку...&lt;br /&gt;Ошибка точно связанна с изменениями в библиотеке. </content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2190/</id>
    <title type="text">Data mining / Machine learning / Недетерминистические стратегии</title>
    <published>2011-11-30T20:41:28Z</published>
    <updated>2011-11-30T20:41:28Z</updated>
    <author>
      <name>Church</name>
      <uri>https://stocksharp.ru/users/459/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">Небольшой опрос.&lt;br /&gt;&lt;br /&gt;Есть ли у вас опыт работы с data mining/ML в любой форме? Используете/планируете использовать его для трейдинга?&lt;br /&gt;Знаете ли вы кого-нибудь, лично или иначе, кто это делает?&lt;br /&gt;Как вы оцениваете количество трейдеров/УК/проп шопов, которые это делают в России? И если знаете, перечислите пожалуйста.&lt;br /&gt;Ну и наконец, что вы думаете на этот счет в общем?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2189/</id>
    <title type="text">Как должна работать SampleSMA?</title>
    <published>2011-11-30T14:17:53Z</published>
    <updated>2011-11-30T14:17:53Z</updated>
    <author>
      <name>Maxxx</name>
      <uri>https://stocksharp.ru/users/653/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Запускаю SampleSMA из VS2010.&lt;br /&gt;Указываю путь к квику&lt;br /&gt;нажимаю подключится, Экспорт DDE&lt;br /&gt;Выбираю счет, нажимаю старт&lt;br /&gt;рисуется график лука за май 2010 и все. Больше ничего не происходит. Я так понимаю график должен обновляться и появляться сделки?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2188/</id>
    <title type="text">Проблема с</title>
    <published>2011-11-30T10:58:20Z</published>
    <updated>2011-11-30T10:58:20Z</updated>
    <author>
      <name>bodia</name>
      <uri>https://stocksharp.ru/users/652/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Plaza 2" />
    <content type="html">Добрый день. Решился наконец-то вплотную заняться изучением S#. Спасибо за то что есть такой проект и вы его развиваете. &lt;br /&gt;&lt;br /&gt;Скачал с  &lt;a target="_blank" rel="nofollow" href="https://stocksharp.ru/away/?u=AQAAAAAAAABZ0iLi1q9JoSz9K__KwZYppfhNxd0kqRU6ly8o6a5iEw" title="http://www.box.com/stocksharp "&gt;http://www.box.com/stocksharp &lt;/a&gt;версию 4.0.6 и, поскольку интересует только работа по протоколу Plaza2 начал изучать пример SampleGUI. Запустил уже скопилированный файл и нажал кнопку &amp;quot;Подключить&amp;quot;, на что было выдано сообщение об ошибке &amp;quot;Ссылка на объект не указывает на экземпляр объекта&amp;quot;. С помощью дебагера выяснил что эта ошибка появляется после строчки создания экземпляра шлюза. Т.е. на &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;
&amp;quot;Trader = new PlazaTrader(Address.Text.To&amp;lt;IPEndPoint&amp;gt;());&amp;quot;&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;. &lt;br /&gt;Пробывал вызывать конструктор без параметра так как шлюз плазы стоит на том же компьютере. На пару раз проискал форум, подобных ошибок не обнаружил. &lt;br /&gt;Не подскажите в чем может быть дело?&lt;br /&gt;&lt;br /&gt;Версия шлюза: 1.12.7_32.&lt;br /&gt;ОС: Windows 7 Pro 32 bit&lt;br /&gt;&lt;br /&gt;P.S. Извините за название топика.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2186/</id>
    <title type="text">робот качает старую информацию из Квика</title>
    <published>2011-11-30T09:13:41Z</published>
    <updated>2011-11-30T09:13:41Z</updated>
    <author>
      <name>vader</name>
      <uri>https://stocksharp.ru/users/28223/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">При запуске робота приходит информация о заявке, даже если нет активных заявок.&lt;br /&gt;Такой код кидает MessageBox при установлении соединения.&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;

private void OnNewOrder(IEnumerable&amp;lt;Order&amp;gt; orders)
        {
            MessageBox.Show(orders.Last().Comment.ToString());
            this.GuiAsync(() =&amp;gt; this.Orders.AddRange(orders));
        }

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Также, иногда при включении робота приходит информация о заявках, которые были сняты ещё при прошлом запуске робота. Т.е. робот поработал, ставил ,снимал заявки, был выключен. Потом запускаем программу и ему приходит информация об отменённых заявках.&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2185/</id>
    <title type="text">QuikTerminal.Login exception</title>
    <published>2011-11-30T06:48:32Z</published>
    <updated>2011-11-30T06:48:32Z</updated>
    <author>
      <name>Supervisor</name>
      <uri>https://stocksharp.ru/users/27975/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Собственно теперь вываливается следующее:&lt;br /&gt;&amp;quot;Попытка чтения или записи в защищенную память. Это часто свидетельствует о том, что другая память повреждена.&amp;quot;&lt;br /&gt;Насколько помню, до 4.0.6 было нормально.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2184/</id>
    <title type="text">Поддержка нескольких портфелей</title>
    <published>2011-11-29T17:56:51Z</published>
    <updated>2011-11-29T17:56:51Z</updated>
    <author>
      <name>Sergey Masyura</name>
      <uri>https://stocksharp.ru/users/701/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="AlfaDirect" />
    <content type="html">Привет,&lt;br /&gt;&lt;br /&gt;Как многие могли заметить сейчас в альфа-коннекторе вместо портфеля фактически используется счет, и при отправке ордеров всегда использется портфель &amp;quot;-000&amp;quot;.&lt;br /&gt;Сегодня потратил 300 рублей на открытие еще одного портфеля и клиринговой пары. В ближайшее время добавлю поддержку в альфа-коннектор.&lt;br /&gt;&lt;br /&gt;Так вот, это вероятно немного поломает текущие настройки Ваших роботов [flapper] &lt;br /&gt;&lt;br /&gt;Всем больших и очень больших профитов.&lt;br /&gt;&lt;br /&gt;PS: принимаю пожертвования на еду, пишите в личку [rolleyes]</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2183/</id>
    <title type="text">Мертвая стратегия</title>
    <published>2011-11-29T16:16:36Z</published>
    <updated>2011-11-29T16:16:36Z</updated>
    <author>
      <name>OvcharenkoVI</name>
      <uri>https://stocksharp.ru/users/390/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="AlfaDirect" />
    <content type="html">Собственно первый раз дошли руки до создания стратегии, до этого копался с базовыми элементами S#. В результате, следуя примеру, написал своего рода тестер(работает или нет), который открывает заявку, если цена меньше определенного числа, никаких ошибок VS не выдает, сделки регистрируются, но стратегия не подает никаких признаков жизни(даже при нажатии Start в логгере не пишется про запуск). До последнего не хотел обращаться к форуму, чтобы не загружать его банальными темами, но все же в итоге выкладываю все, что есть в проекте, так как решения вопроса так и не нашел.&lt;br /&gt;&lt;br /&gt;MainWindow:&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;


namespace MyStock
{
    public partial class MainWindow
    {
        private readonly Dictionary&amp;lt;CandleToken, MainWindow&amp;gt; chart = new Dictionary&amp;lt;CandleToken, MainWindow&amp;gt;();
        public AlfaTrader Trader;
        public bool _isConnected;
        public Portfolio _portfolio;
        public CandleManager _candleManager;
        private readonly ObservableCollection&amp;lt;Security&amp;gt; _securitiesSource = new ObservableCollection&amp;lt;Security&amp;gt;();
        private readonly LogManager _logManager = new LogManager();
        //private DateTime _lastCandleTime;
        public readonly TimeSpan timeFrame = (TimeSpan)(AlfaTimeFrames.Minute1);
        public IndStrategy _strategy;
        private Security security;
        private Security security_2;

        public Ind _ind { get; private set; }

        public MainWindow()
            
        {
            InitializeComponent();

            Security.ItemsSource = _securitiesSource;

            Security_2.ItemsSource = _securitiesSource;

            var From = DateTime.Today - TimeSpan.FromDays(1);
            var To = DateTime.Now;

            _logManager.Listeners.Add(new FileLogListener());

            var security = (Security)SelectedSecurity;

        }

        public void button1_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (!_isConnected)
                {

                    if (Trader == null)
                    {
                        var monitor = new MonitorWindow();
                        monitor.Show();

                        Trader = new AlfaTrader
                        {
                            Login = textBox1.Text,
                            Password = passwordBox1.Password
                        };

                        Trader.NewSecurities += securities =&amp;gt; this.Dispatcher.BeginInvoke((Action)(() =&amp;gt; _securitiesSource.AddRange(securities)));
                        
                        Trader.NewPortfolios += portfolios =&amp;gt; this.Dispatcher.BeginInvoke((Action)(() =&amp;gt; portfolios.ForEach(Trader.RegisterPortfolio)));

                        Trader.NewSecurities += securities =&amp;gt; this.Dispatcher.BeginInvoke((Action)(()  =&amp;gt; securities.ForEach(Trader.RegisterTrades)));

                        _logManager.Listeners.Add(new GuiLogListener(monitor));

                        _logManager.Sources.Add(Trader);
                        _logManager.Sources.Add(_strategy);


                    }

                    Trader.Connect();
                    Trader.StartExport();


                    _candleManager = new CandleManager(Trader);



                }
            }
            catch (Exception)
            {
                //System.Windows.MessageBox.Show(this, ex.Message, &amp;quot;Error&amp;quot;);
                //return;
            }
        }

        protected override void OnClosing(CancelEventArgs e)
        {

            base.OnClosing(e);
        }

        private void button2_Click(object sender, RoutedEventArgs e)
        {
         Trader.Disconnect();
        }


        private void textBox1_TextChanged(object sender, System.Windows.Controls.TextChangedEventArgs e)
        {

        }

        private void passwordBox1_PasswordChanged(object sender, RoutedEventArgs e)
        {

        }


        public Security SelectedSecurity
        {
            get { return (Security)Security.SelectedValue; }
        }

        public Security SelectedSecurity_2
        {
            get { return (Security)Security_2.SelectedValue; }
        }


        public void SecuritySelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            
        }

        public void Security_2_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            
        }


        private void button3_Click(object sender, RoutedEventArgs e)
        {
            if (_strategy == null)
            {
                var ind = new Ind();

                security = (Security)SelectedSecurity;

                // создаем торговую стратегию
                _strategy = new IndStrategy(_candleManager, ind, timeFrame)
                {
                    Volume = 1,
                    Security = (Security)SelectedSecurity,
                    Trader = Trader,
                    TimeFrame = timeFrame,
                };

                // начинаем получать текущие сделки (для построения свечек реального времени)
                Trader.RegisterTrades(security);

                //Trader.GetHistoryData(security, timeFrame,
                //                     new Range&amp;lt;DateTime&amp;gt;(DateTime.Today - TimeSpan.FromDays(5), Trader.MarketTime));

                _lastHistoryCandle = timeFrame.GetCandleBounds(Trader).Min;

                // регистрируем наш тайм-фрейм
                _candleManager.RegisterTimeFrameCandles(security, timeFrame);
            }

            if (_strategy.ProcessState == ProcessStates.Stopped)
            {
                // запускаем процесс получения стакана, необходимый для работы алгоритма котирования
                Trader.RegisterQuotes(_strategy.Security);
                _strategy.Start();
            }
            else
            {
                Trader.UnRegisterQuotes(_strategy.Security);
                _strategy.Stop();
            }
        }
    }


}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&amp;quot;Индикатор&amp;quot;[huh] &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;
using System;

namespace MyStock
{
    public class Ind : BaseIndicator&amp;lt;decimal&amp;gt;

    {
        public Ind()
            : base(typeof(TimeFrameCandle))
        {

        }

        public override bool IsFormed
        {
            get { return true; }
        }

        public override decimal OnProcess(IIndicatorValue input)
        {
            return input.GetValue&amp;lt;TimeFrameCandle&amp;gt;().ClosePrice;
        }
    }
}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&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;
namespace MyStock
{
    using System;

    using StockSharp.Algo;
    using StockSharp.Algo.Candles;
    using StockSharp.Algo.Indicators;
    using StockSharp.Algo.Indicators.Trend;
    using StockSharp.Algo.Strategies;
    using StockSharp.BusinessEntities;
    using StockSharp.AlfaDirect;

    public class IndStrategy : TimeFrameStrategy
    {
        public readonly CandleManager _candleManager;
        public bool _isSmaller;

        private DateTime _nextTime;

        public IndStrategy(CandleManager candleManager, Ind Ind1, TimeSpan timeFrame)
            : base(timeFrame)
        {
            _candleManager = candleManager;

            this.ind = Ind1;
        }

        public Ind ind { get; private set; }

        protected override void OnStarting()
        {
            _isSmaller = this.ind.LastValue &amp;lt; 200;

            _nextTime = base.TimeFrame.GetCandleBounds(base.Trader).Max;

            base.OnStarting();
        }

        protected override ProcessResults OnProcess()
        {
            if (base.ProcessState == ProcessStates.Stopping)
            {
                base.CancelActiveOrders();

                return ProcessResults.Stop;
            }

            if (base.Trader.MarketTime &amp;lt; _nextTime)
            {
                return ProcessResults.Continue;
            }
            var candle = _candleManager.GetTimeFrameCandle(base.Security, base.TimeFrame, _nextTime - base.TimeFrame);

            if (candle == null)
            {
                if ((base.Trader.MarketTime - _nextTime) &amp;gt; TimeSpan.FromSeconds(10))
                    _nextTime = base.TimeFrame.GetCandleBounds(base.Trader.MarketTime).Max;

                return ProcessResults.Continue;
            }

            _nextTime += base.TimeFrame;

            this.ind.Process((DecimalIndicatorValue)candle.ClosePrice);

            var isSmaller = this.ind.LastValue &amp;lt; 200;

            if (isSmaller == true)
            {
                var direction = isSmaller ? OrderDirections.Sell : OrderDirections.Buy;

                var order = this.CreateOrder(direction, base.Security.GetMarketPrice(direction), 1);

                var strategy = new MarketQuotingStrategy(order, new Unit(), new Unit());
                base.ChildStrategies.Add(strategy);

                _isSmaller = isSmaller;
            }

            return ProcessResults.Continue;
        }
    }
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Очень надеюсь на хелп, а то стопорится все что можно&lt;br /&gt;        &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2182/</id>
    <title type="text">Где взять файл OpenQuant.exe?</title>
    <published>2011-11-29T10:12:59Z</published>
    <updated>2011-11-29T10:12:59Z</updated>
    <author>
      <name>trader</name>
      <uri>https://stocksharp.ru/users/556/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="wealth-lab" />
    <content type="html">Здравствуйте!&lt;br /&gt;&lt;br /&gt;Установил программу установщиком, в папке с программой нет файла самого приложения OpenQuant.exe?&lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2181/</id>
    <title type="text">Время выставления заявки</title>
    <published>2011-11-28T21:30:11Z</published>
    <updated>2011-11-28T21:30:11Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="SmartCom" />
    <content type="html">Подскажите, пожалуйста, как измерить промежуток времени между подачей заявки моим роботом и временем регистрации заявки на бирже?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2179/</id>
    <title type="text">Котировщик не выставляет заявки</title>
    <published>2011-11-28T18:18:08Z</published>
    <updated>2011-11-28T18:18:08Z</updated>
    <author>
      <name>mdv</name>
      <uri>https://stocksharp.ru/users/6039/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Обновился с 4.03 до 4.06. Верифаер пишет, что таблицы настроены правильно. После запуска котирования ничего не происходит. Как можно попробовать выяснить, в чем тут дело?&lt;br /&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Цитата:&lt;/span&gt;&lt;div class="innerquote"&gt;22:05:25.820 |            | TLS             | Стратегия хочет продать 1.&lt;br /&gt;22:05:25.839 |            | MQS             | Стратегия запущена.&lt;br /&gt;22:05:25.909 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:25.913 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:26.133 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:26.140 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:26.399 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:26.649 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:27.413 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:27.444 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:27.460 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:27.710 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:27.975 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:28.240 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:28.427 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:28.770 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:29.441 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:30.461 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:30.633 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:30.898 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:31.462 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:32.488 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:33.488 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:34.507 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:34.570 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:34.819 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:35.550 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:35.596 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:35.862 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:35.924 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:35.955 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:36.205 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:36.392 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:36.392 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:36.548 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:36.642 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:36.907 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:37.172 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:37.188 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:37.453 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:37.453 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:37.546 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:37.698 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:37.950 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:38.468 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:38.468 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:38.561 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:38.733 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:39.529 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:39.575 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:40.073 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:40.330 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:40.331 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:40.588 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:41.105 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; активировано.&lt;br /&gt;22:05:41.143 |            | MQS             | Правило &amp;#39;MQS - остановка&amp;#39; активировано.&lt;br /&gt;22:05:41.144 |            | MQS             | Правило &amp;#39;MQS - остановка&amp;#39; удалено.&lt;br /&gt;22:05:41.144 |            | MQS             | Стратегия останавливается.&lt;br /&gt;22:05:41.145 |            | MQS             | Заканчиваем котирование с неисполненным объемом равный 1.&lt;br /&gt;22:05:41.146 |            | MQS             | Правило &amp;#39;Изменение стакана инструмента RIZ1@RTS&amp;#39; удалено.&lt;br /&gt;22:05:41.146 |            | MQS             | Заканчиваем котирование с неисполненным объемом равный 1.&lt;br /&gt;22:05:41.147 |            | MQS             | Правило &amp;#39;Изменение инструмента RIZ1@RTS&amp;#39; удалено.&lt;br /&gt;22:05:41.147 |            | MQS             | Заканчиваем котирование с неисполненным объемом равный 1.&lt;br /&gt;22:05:41.148 |            | MQS             | Правило &amp;#39;Изменение позиции стратегии MQS&amp;#39; удалено.&lt;br /&gt;22:05:41.155 |            | MQS             | Стратегия остановлена.&lt;/div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2178/</id>
    <title type="text">Свечи с таймфреймом менее секунды</title>
    <published>2011-11-28T17:57:58Z</published>
    <updated>2011-11-28T17:57:58Z</updated>
    <author>
      <name>vk37</name>
      <uri>https://stocksharp.ru/users/6296/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <content type="html">Использую версию 3.2.11&lt;br /&gt;Пробую сохранить сформированные свечи в тхт формат из Гидры. Таймфрейм для свечей менее секунды. Все, кроме отсутствия в дате долей секунд, формируется, похоже, правильно. В тхт экспортируются с точностью до секунды. Поменял txt_export_candles.st на:&lt;br /&gt;&lt;br /&gt;$candles:{$it.Time; format=&amp;quot;dd.MM.yyyy&amp;quot;$, $it.Time; format=&amp;quot;HH:mm:ss.FFFFFFF&amp;quot;$, $it.OpenPrice$, $it.HighPrice$, $it.LowPrice$, $it.ClosePrice$, $it.TotalVolume$&lt;br /&gt;}$&lt;br /&gt;&lt;br /&gt;Все равно точность только до секунд. Похоже, что метод candleManager.GetCandles(token) в CandlesWindow формирует свечи со свойством Time с точностью до секунд. Можно повысить точность свойства Time?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/2177/</id>
    <title type="text">SampleHistoryTesting - вопрос по формированию свечек</title>
    <published>2011-11-28T17:02:06Z</published>
    <updated>2011-11-28T17:02:06Z</updated>
    <author>
      <name>Lera</name>
      <uri>https://stocksharp.ru/users/219/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">Здравствуйте!&lt;br /&gt;&lt;br /&gt;При разборе примера &amp;quot;SampleHistoryTesting&amp;quot; (только начинаю осваивать s#), сталкнулась с проблемой, описанной &lt;a href="http://stocksharp.com/forum/1125/Exchange-working-time/" title="http://stocksharp.com/forum/1125/Exchange-working-time/"&gt;здесь&lt;/a&gt;, а именно:&lt;br /&gt;&lt;br /&gt;меняю значение timeframe на нестандартный (например, 7 минут) , получаю свечи 9:55, 10:02, 10:09,10:16 и тд. А нужны мне 10:00, 10:07, 10:14... Тогда я меняю значение _nextTime на base.TimeFrame.GetCandleBounds(base.Trader.MarketTime,Exchange.Rts.WorkingTime).Max, те чтобы значение _nextTime рассчитывалось относительно времени работы биржи. И теперь получаю свечки равные null.&lt;br /&gt;Например, в 10:07 я хочу получить свечку 10:00, а она равна null... Ломаю голову, почему так происходит..?</content>
  </entry>
</feed>