Вопрос по выставлению заявок~/topic/2484/vopros-po-vystavleniyu-zayavok/Copyright @ StockSharp Platform LLC 2010 - 20242024-03-29T15:12:00Zhttps://stocksharp.ru/images/logo.pnghttps://stocksharp.ru/posts/m/17308/По тестовому доступу все то же самое. :( Завтра, конечно, попробую по нормальному логину напрямую к ...2012-03-15T17:59:13Z2016-08-16T00:06:11ZMikhail Sukhovhttps://stocksharp.ru/users/201/info@stocksharp.ru<div class="quote"><span class="quotetitle">Daenur <a href="https://stocksharp.ru/posts/m/17305/"><img src="https://stocksharp.ru/images/icon_latest_reply.gif" title="Перейти" alt="Перейти" /></a></span><div class="innerquote">По тестовому доступу все то же самое. :(<br />Завтра, конечно, попробую по нормальному логину напрямую к серверам АйТи Инвест подключиться, сейчас не хватает прав чтобы эту возможность настроить...<br /><br />Но вообще у меня и раньше так же идентификаторы в Смарте выглядели, просто не знал, что это неправильно. И на прошлых версиях СмартКОМа, и на прошлых версиях S#.</div></div><br /><br />Получил демо. Мой скрин в аттаче. Любопытно, что шаг цены до сих пор неправильно транслируется. Уже была такая тема <a href="http://stocksharp.com/posts/m/12516/ " title="http://stocksharp.com/posts/m/12516/ ">http://stocksharp.com/posts/m/12516/ </a>и на форуме айти <a target="_blank" rel="nofollow" href="https://stocksharp.ru/away/?u=AQAAAAAAAABNztwpfok8rjZVHveP56Jo8hfVL3V9kyA_YNgIEwrUUvtA9i89M71N-p_WeF4TEfOrT1DwpgsQZ-W_ngPBCTHGpynm7MUZdVuotOsdjPC53w" title="http://www.itinvest.ru/forum/index.php?showtopic=63890&st=0&p=267901 ">http://www.itinvest.ru/f...0&st=0&p=267901 </a>У тех поддержки оказывается нет такого понятия как шаг цены[laugh] Секция ММВБ Смартком не поддерживается, имхо. Не знаю, имеет ли смысл дальше мучать это направление...Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17313/Так для себя я тоже через КВИК подключаюсь. :)2012-03-15T18:42:54Z2012-03-15T18:42:54ZDaenurhttps://stocksharp.ru/users/28118/info@stocksharp.ruТак для себя я тоже через КВИК подключаюсь. :)Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17312/Я им, конечно же, написал. Но это вообще кретинизм полнейший! С КВИКом тоже проблемм хватает, но там...2012-03-15T18:37:25Z2012-03-15T18:37:25ZAlexanderhttps://stocksharp.ru/users/2826/info@stocksharp.ru<div class="quote"><span class="quotetitle">Daenur <a href="https://stocksharp.ru/posts/m/17310/"><img src="https://stocksharp.ru/images/icon_latest_reply.gif" title="Перейти" alt="Перейти" /></a></span><div class="innerquote">Я им, конечно же, написал. Но это вообще кретинизм полнейший! С КВИКом тоже проблемм хватает, но там хоть как-то работает. А со Смартом просто нет слов!<br /><br />Согласен, дальше эту тему пинать не стоит. Сделают - хорошо. А пока придется руками выставлять. Увы, чувствую, еще намучаюсь со Смартом. [sneaky] <br /><br />Спасибо большое, что уделили столько времени моей проблеме!</div></div><br /><br />Я своих первых ботов писал на смарткоме в 2009 году.<br />С тех пор стараюсь от этого держаться подальше.<br /><br />На квике кстати все боты которые были написаны в начале 2011 года (через S#) - работают стабильно до сих пор. Т.е. действительно проблем можно сказать нет.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17310/Я им, конечно же, написал. Но это вообще кретинизм полнейший! С КВИКом тоже проблемм хватает, но там...2012-03-15T18:28:09Z2012-03-15T18:28:09ZDaenurhttps://stocksharp.ru/users/28118/info@stocksharp.ruЯ им, конечно же, написал. Но это вообще кретинизм полнейший! С КВИКом тоже проблемм хватает, но там хоть как-то работает. А со Смартом просто нет слов!<br /><br />Согласен, дальше эту тему пинать не стоит. Сделают - хорошо. А пока придется руками выставлять. Увы, чувствую, еще намучаюсь со Смартом. [sneaky] <br /><br />Спасибо большое, что уделили столько времени моей проблеме!Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17305/По тестовому доступу все то же самое. :( Завтра, конечно, попробую по нормальному логину напрямую к ...2012-03-15T17:34:23Z2012-03-15T17:34:23ZDaenurhttps://stocksharp.ru/users/28118/info@stocksharp.ruПо тестовому доступу все то же самое. :(<br />Завтра, конечно, попробую по нормальному логину напрямую к серверам АйТи Инвест подключиться, сейчас не хватает прав чтобы эту возможность настроить...<br /><br />Но вообще у меня и раньше так же идентификаторы в Смарте выглядели, просто не знал, что это неправильно. И на прошлых версиях СмартКОМа, и на прошлых версиях S#.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17303/Возможно. Чтобы удостовериться - попробуйте подключиться напрямую к айти. Хотя бы по тестовому досту...2012-03-15T17:17:08Z2012-03-15T17:17:39ZAlexanderhttps://stocksharp.ru/users/2826/info@stocksharp.ruВозможно. Чтобы удостовериться - попробуйте подключиться напрямую к айти. Хотя бы по тестовому доступу.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17302/Подключился в SampleSmart, со сбером аналогично (см. вложение). Сейчас выяснил, я подключаюсь не нап...2012-03-15T17:14:40Z2012-03-15T17:14:40ZDaenurhttps://stocksharp.ru/users/28118/info@stocksharp.ruПодключился в SampleSmart, со сбером аналогично (см. вложение). <br /><br />Сейчас выяснил, я подключаюсь не напрямую к серверам АйТи Инвест, а через другой мидл-офис, по другому IP. С этим может быть связано?Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17297/Начните с SampleSmart2012-03-15T16:49:32Z2012-03-15T16:49:32ZAlexanderhttps://stocksharp.ru/users/2826/info@stocksharp.ruНачните с SampleSmartCopyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17295/StockSharp 4.0.22 Михаил, может, есть возможность дать мне исходники всего проекта? Так бы я мог раз...2012-03-15T16:48:32Z2012-03-15T16:49:26ZMikhail Sukhovhttps://stocksharp.ru/users/201/info@stocksharp.ru<div class="quote"><span class="quotetitle">Daenur <a href="https://stocksharp.ru/posts/m/17291/"><img src="https://stocksharp.ru/images/icon_latest_reply.gif" title="Перейти" alt="Перейти" /></a></span><div class="innerquote">StockSharp 4.0.22<br /><br />Михаил, может, есть возможность дать мне исходники всего проекта? Так бы я мог разбираться с проблемами, не обращаясь к Вам по пустякам. А то и я не могу понять в чем дело, и Вас напрягаю. Какая-то "угадайка" получается сильно растянутая по времени...</div></div><br /><br />Работа напрямую со смартком - это SmartTrader.Wrapper. Только вам это не поможет. У вас какие-то данные "сдвинуты" (что было именем, стало кодом). Двое подтвердили уже по поводу сбера, что у них SBER@EQBR.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17291/StockSharp 4.0.22 Михаил, может, есть возможность дать мне исходники всего проекта? Так бы я мог раз...2012-03-15T16:42:34Z2012-03-15T16:42:34ZDaenurhttps://stocksharp.ru/users/28118/info@stocksharp.ruStockSharp 4.0.22<br /><br />Михаил, может, есть возможность дать мне исходники всего проекта? Так бы я мог разбираться с проблемами, не обращаясь к Вам по пустякам. А то и я не могу понять в чем дело, и Вас напрягаю. Какая-то "угадайка" получается сильно растянутая по времени...Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17290/а версия S#?2012-03-15T16:37:40Z2012-03-15T16:37:40ZAlexanderhttps://stocksharp.ru/users/2826/info@stocksharp.ruа версия S#?Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17288/Security.MinStepPrice = 1 Security.MinStepSize = 2 Security.Decimals = 0 SmartCOM последний, с их са...2012-03-15T16:28:28Z2012-03-15T16:28:28ZDaenurhttps://stocksharp.ru/users/28118/info@stocksharp.ruSecurity.MinStepPrice = 1<br />Security.MinStepSize = 2<br />Security.Decimals = 0<br /><br />SmartCOM последний, с их сайта, недавно обновился. На предпоследней версии та же самая фигня была.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17286/А чему равен Security.MinStepSize + Decimals? Особенно интересна ситуация с идентификаторами, которы...2012-03-15T16:15:52Z2012-03-15T16:15:52ZMikhail Sukhovhttps://stocksharp.ru/users/201/info@stocksharp.ruА чему равен Security.MinStepSize + Decimals? Особенно интересна ситуация с идентификаторами, которые у нас, кстати, правильные, тоесть SBER@EQBR. Думаю, все данные по инструментам поехали. Может у вас смарт ком старый?Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17270/Прикрутил _logManager.Sources.Add(_strategy); _logManager.Sources.Add(_trader); сразу после создания...2012-03-15T11:52:26Z2012-03-15T11:52:26ZDaenurhttps://stocksharp.ru/users/28118/info@stocksharp.ruПрикрутил<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
_logManager.Sources.Add(_strategy);
_logManager.Sources.Add(_trader);
</pre>
</div></div><br />сразу после создания объектов. Собствено файл с логом прикрепил к предыдущему своему сообщению. Увы, не вижу там строки о том, почему цена неверно рассчитывается. [blush] Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17269/Если подскажете какой лог и как привести - сделаю. Тот участок, который покажет, что не так с ценами...2012-03-15T11:43:04Z2012-03-15T11:43:04ZMikhail Sukhovhttps://stocksharp.ru/users/201/info@stocksharp.ru<div class="quote"><span class="quotetitle">Daenur <a href="https://stocksharp.ru/posts/m/17267/"><img src="https://stocksharp.ru/images/icon_latest_reply.gif" title="Перейти" alt="Перейти" /></a></span><div class="innerquote">Если подскажете какой лог и как привести - сделаю.</div></div><br /><br />Тот участок, который покажет, что не так с ценами. ГОСТ-а нет.[biggrin] Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17267/Ага. Конечно, если взять (lkoh.ExtensionInfo)).Items можно получить нормальный идентификатор {} Сраз...2012-03-15T11:29:05Z2012-03-15T11:37:41ZDaenurhttps://stocksharp.ru/users/28118/info@stocksharp.ruАга. Конечно, если взять (lkoh.ExtensionInfo)).Items[0] можно получить нормальный идентификатор {[SecuritySmartId, SBER]}<br /><br /><br />Сразу после создания подписался на событие<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
_trader.Log += new Action<LogMessage>(_trader_Log);
</pre>
</div></div><br />Но после начала котирования логи по этому событию не пишутся. Если подскажете какой лог и как привести - сделаю.<br /><br />Собственно стакан получается нормально, данные идут.<br /><br />upd. Сейчас прикручу logManager, посмотрю, что в него идет...Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17265/Это у нас такие идентификаторы в Смарте? Можно как-то лог привести работы котирования?2012-03-15T10:54:37Z2012-03-15T10:55:09ZMikhail Sukhovhttps://stocksharp.ru/users/201/info@stocksharp.ruЭто у нас такие идентификаторы в Смарте? Можно как-то лог привести работы котирования?Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17262/Сложность в учете уже исполнившегося объема и переставлении стопов под новый объем. Чем больше дейст...2012-03-15T10:45:18Z2012-03-15T10:45:18ZDaenurhttps://stocksharp.ru/users/28118/info@stocksharp.ruСложность в учете уже исполнившегося объема и переставлении стопов под новый объем. Чем больше действий - тем больше вероятность ошибки. Проще и надежней поставить один стоп на весь объем заявки сразу по ее исполнению.<br /><br /><br />Котирование - как в примере SampleSmartSMA<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
_trader.NewSecurities += securities => this.GuiAsync(() =>
{
// находим нужную бумагу
var lkoh = securities.FirstOrDefault(s => s.Id == "Сбербанк России ОАО ао@EQBR");
if (lkoh != null)
{
_lkoh = lkoh;
this.GuiAsync(() =>
{
Start.IsEnabled = true;
});
}
});
...
// создаем торговую стратегию
_strategy = new SmaStrategy(_candleManager, longSma, shortSma, _timeFrame)
{
Volume = 1,
Security = _lkoh,
Portfolio = Portfolios.SelectedPortfolio,
Trader = _trader,
};
...
// запускаем процесс получения стакана, необходимый для работы алгоритма котирования
_trader.RegisterQuotes(_strategy.Security);
</pre>
</div></div>Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17257/А Periodical - тогда надо городить сложную логику для стопов с учетом исполнения заявки по частям. А...2012-03-15T10:31:57Z2012-03-15T10:31:57ZMikhail Sukhovhttps://stocksharp.ru/users/201/info@stocksharp.ru<div class="quote"><span class="quotetitle">Daenur <a href="https://stocksharp.ru/posts/m/17252/"><img src="https://stocksharp.ru/images/icon_latest_reply.gif" title="Перейти" alt="Перейти" /></a></span><div class="innerquote">А Periodical - тогда надо городить сложную логику для стопов с учетом исполнения заявки по частям.</div></div><br /><br />А в чем сложность?<br /><br /><div class="quote"><span class="quotetitle">Daenur <a href="https://stocksharp.ru/posts/m/17252/"><img src="https://stocksharp.ru/images/icon_latest_reply.gif" title="Перейти" alt="Перейти" /></a></span><div class="innerquote"><br />у заявки отбрасывается дробная часть и заявка появляется в системе по 101.00 или по 102.00, хотя реальная цена колеблется в этом промежутке с сотыми долями.</div></div><br /><br />Сбер? Нужно больше информации. С какими параметрами запускается котирование и какое именно.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.ru/posts/m/17252/Ситуация простая - хочу купить/продать по рынку и прикрыть позицию стопом. Для примера использую акц...2012-03-15T10:08:01Z2012-03-15T10:08:01ZDaenurhttps://stocksharp.ru/users/28118/info@stocksharp.ruСитуация простая - хочу купить/продать по рынку и прикрыть позицию стопом. Для примера использую акции сбера.<br /><br /><b>Вариант №1</b><br />Покупаю по рынку обычным способом (с помощью маркет-заявки или лимитной заявки с большим отступом по цене), все ок. Тут же подписываюсь на событие исполнения заявки. Хочу получать событие один единственный раз, когда заявка исполнилась полностью.<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
this.When(this.mainOrder.Matched().Do(OnMainOrderMatched).Once());
</pre>
</div></div><br />Все хорошо, заявка попала в систему, исполнилась, попадаем в OnMainOrderMatched. Здесь я хочу получить среднюю цену исполнения заявки, чтобы от этого уровня поставить стоп-лосс.<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
decimal averagePrice = this.mainOrder.GetAveragePrice();
</pre>
</div></div><br />К сожалению, averagePrice остается всегда равной нулю. В КВИКе аналогичный подход дает правильный результат, averagePrice равен цене исполнения заявки.<br /><br />Ок, раз так не получается, можно проверить, когда заявка исполнилась и все ее поля стали заполнены. Подписываюсь на правило, отслеживающее появление новых сделок по заявке<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
this.When(mainOrder.NewTrades()).Do(OnNewOrderTrades).Once();
</pre>
</div></div><br />далее в OnNewOrderTrades<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
if ((this.mainOrder != null) && (this.mainOrder.Id == myTrades.Last().Order.Id))
{
OnMainOrderMatched();
}
</pre>
</div></div><br />Тогда в OnMainOrderMatched уже имеем averagePrice соответствующую действительности.<br /><br />Но данный подход меня смущает тем, что ловить событие Once не правильно, поскольку заявка может исполниться частями. А Periodical - тогда надо городить сложную логику для стопов с учетом исполнения заявки по частям.<br /><br /><br />Переходим к <b>Варианту №2</b><br />Благодаря разработчикам S# существует более простой способ выставления заявок и прикрытия их стопами, через котирование и дочерние стратегии. Но сразу же наталкиваюсь на проблему с выставлением рыночной заявки через котирование - у заявки отбрасывается дробная часть и заявка появляется в системе по 101.00 или по 102.00, хотя реальная цена колеблется в этом промежутке с сотыми долями.<br />Это происходит и у меня, и в проекте-примере.<br /><br /><br />Возникает вопрос - кто как справляется с данной задачей в СмартКОМе?Copyright @ StockSharp Platform LLC 2010 - 2024