Как тестить сразу несколько стаканов?~/topic/1875/kak-testit-srazu-neskolko-stakanov/Copyright @ StockSharp Platform LLC 2010 - 20242024-03-29T08:44:07Zhttps://stocksharp.com/images/logo.pnghttps://stocksharp.com/posts/m/11425/Полагаю это и есть верное поведение, но тогда стоит исправить Sample (SampleEmulationTesting). А что...2011-09-23T18:40:52Z2011-09-23T18:40:52ZAlexanderhttps://stocksharp.com/users/2826/info@stocksharp.com<div class="quote"><span class="quotetitle">Justforg <a href="https://stocksharp.com/posts/m/11424/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote"><div class="quote"><span class="quotetitle">Mikhail Sukhov <a href="https://stocksharp.com/posts/m/11420/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote"><div class="quote"><span class="quotetitle">Justforg <a href="https://stocksharp.com/posts/m/11389/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote">Полагаю это и есть верное поведение, но тогда стоит исправить Sample (SampleEmulationTesting).<br /></div></div><br /><br />А что исправить и на что? Можно с кусками кода?</div></div><br /><br /><a target="_blank" rel="nofollow" href="https://stocksharp.com/away/?u=AQAAAAAAAAAbncQVTu8T5yVB2LlB47S-5KHyW8ZN6xcH4iJyKFKwUQgjwasowjZHTe_leX0HSMFVSkZm9-pFgTsk0i7RhcL17qr3bRnuGHNsRv2mHD_vvg" title="http://stocksharp.codeplex.com/SourceControl/changeset/view/9777#72785 ">http://stocksharp.codepl...angeset/view/9777#72785 </a>- `<br /><div class="code"><strong>Code</strong><div class="innercode"><pre class="brush:csharp">
// стартовое значения для генерации случайных данных
security.LastTrade.Price = 155000;
</pre>
</div></div><br />` - очевидно не должно работать, если я правильно понимаю (то есть пример падает при запуске).<br /></div></div><br /><br />Спасибо, поправлю.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/11424/Полагаю это и есть верное поведение, но тогда стоит исправить Sample (SampleEmulationTesting). А что...2011-09-23T18:36:40Z2011-09-23T18:36:40ZJustforghttps://stocksharp.com/users/28516/info@stocksharp.com<div class="quote"><span class="quotetitle">Mikhail Sukhov <a href="https://stocksharp.com/posts/m/11420/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote"><div class="quote"><span class="quotetitle">Justforg <a href="https://stocksharp.com/posts/m/11389/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote">Полагаю это и есть верное поведение, но тогда стоит исправить Sample (SampleEmulationTesting).<br /></div></div><br /><br />А что исправить и на что? Можно с кусками кода?</div></div><br /><br /><a target="_blank" rel="nofollow" href="https://stocksharp.com/away/?u=AQAAAAAAAAAbncQVTu8T5yVB2LlB47S-5KHyW8ZN6xcH4iJyKFKwUQgjwasowjZHTe_leX0HSMFVSkZm9-pFgTsk0i7RhcL17qr3bRnuGHNsRv2mHD_vvg" title="http://stocksharp.codeplex.com/SourceControl/changeset/view/9777#72785 ">http://stocksharp.codepl...angeset/view/9777#72785 </a>- `<br /><div class="code"><strong>Code</strong><div class="innercode"><pre class="brush:csharp">
// стартовое значения для генерации случайных данных
security.LastTrade.Price = 155000;
</pre>
</div></div><br />` - очевидно не должно работать, если я правильно понимаю (то есть пример падает при запуске).<br />Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/11420/Полагаю это и есть верное поведение, но тогда стоит исправить Sample (SampleEmulationTesting). А в к...2011-09-23T16:17:36Z2011-09-23T16:17:45ZMikhail Sukhovhttps://stocksharp.com/users/201/info@stocksharp.com<div class="quote"><span class="quotetitle">Justforg <a href="https://stocksharp.com/posts/m/11389/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote">Полагаю это и есть верное поведение, но тогда стоит исправить Sample (SampleEmulationTesting).<br /><br />А в какие именно соответствующие темы писать?<br /></div></div><br /><br />А что исправить и на что? Можно с кусками кода?Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/11389/Полагаю это и есть верное поведение, но тогда стоит исправить Sample (SampleEmulationTesting). А в к...2011-09-23T06:03:47Z2011-09-23T06:03:47ZJustforghttps://stocksharp.com/users/28516/info@stocksharp.comПолагаю это и есть верное поведение, но тогда стоит исправить Sample (SampleEmulationTesting).<br /><br />А в какие именно соответствующие темы писать?<br />Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/11289/Багу нашли, в 3.2.11 поправим. Нужно было сразу сказать, что это эмуляция и бага специфична только д...2011-09-20T20:08:21Z2011-09-20T20:08:21ZAlexanderhttps://stocksharp.com/users/2826/info@stocksharp.com<div class="quote"><span class="quotetitle">Justforg <a href="https://stocksharp.com/posts/m/11284/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote"><div class="quote"><span class="quotetitle">Mikhail Sukhov <a href="https://stocksharp.com/posts/m/11112/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote">Багу нашли, в 3.2.11 поправим. Нужно было сразу сказать, что это эмуляция и бага специфична только для эмуляции. У топик стартера проблема с историей, которая не подтвердилась.</div></div><br /><br />Я так понимаю речь про 3.2.12?<br /><br />В любом случае, в ревизии 9575 (с codeplex) бага и правда исправлена; только вот сходу тестирование не работает (в том числе SampleEmulationTesting) — security.LastTrade в равняется null и поэтому 'security.LastTrade.Price = …' падает с Exception (конечно же, если вставить туда новый Trade() то работает). И мета-вопрос по этому: такую информацию по проблемам в нерелизных версиях куда по-хорошему постить?<br /></div></div><br /><br />в какой момент времени security.LastTrade == null?<br />Если в самом начале - то это верное поведение, так и должно быть. То как было раньше - неверно.<br />Если посреди работы вылезает такое - то ошибка.<br /><br />Напишите подробнее, по коду не смог ошибку найти.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/11285/Багу нашли, в 3.2.11 поправим. Нужно было сразу сказать, что это эмуляция и бага специфична только д...2011-09-20T17:42:09Z2011-09-20T17:42:09ZAlexanderhttps://stocksharp.com/users/2826/info@stocksharp.com<div class="quote"><span class="quotetitle">Justforg <a href="https://stocksharp.com/posts/m/11284/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote"><div class="quote"><span class="quotetitle">Mikhail Sukhov <a href="https://stocksharp.com/posts/m/11112/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote">Багу нашли, в 3.2.11 поправим. Нужно было сразу сказать, что это эмуляция и бага специфична только для эмуляции. У топик стартера проблема с историей, которая не подтвердилась.</div></div><br /><br />Я так понимаю речь про 3.2.12?<br /><br />В любом случае, в ревизии 9575 (с codeplex) бага и правда исправлена; только вот сходу тестирование не работает (в том числе SampleEmulationTesting) — security.LastTrade в равняется null и поэтому 'security.LastTrade.Price = …' падает с Exception (конечно же, если вставить туда новый Trade() то работает). И мета-вопрос по этому: такую информацию по проблемам в нерелизных версиях куда по-хорошему постить?<br /></div></div><br /><br />Спасибо за репорт.<br />Было очень важное исправление, из-за него может падать.<br /><br />Пишите сюда, на форум. Единственное - в соответствующие темы. :)Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/11284/Багу нашли, в 3.2.11 поправим. Нужно было сразу сказать, что это эмуляция и бага специфична только д...2011-09-20T17:28:53Z2011-09-20T17:28:53ZJustforghttps://stocksharp.com/users/28516/info@stocksharp.com<div class="quote"><span class="quotetitle">Mikhail Sukhov <a href="https://stocksharp.com/posts/m/11112/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote">Багу нашли, в 3.2.11 поправим. Нужно было сразу сказать, что это эмуляция и бага специфична только для эмуляции. У топик стартера проблема с историей, которая не подтвердилась.</div></div><br /><br />Я так понимаю речь про 3.2.12?<br /><br />В любом случае, в ревизии 9575 (с codeplex) бага и правда исправлена; только вот сходу тестирование не работает (в том числе SampleEmulationTesting) — security.LastTrade в равняется null и поэтому 'security.LastTrade.Price = …' падает с Exception (конечно же, если вставить туда новый Trade() то работает). И мета-вопрос по этому: такую информацию по проблемам в нерелизных версиях куда по-хорошему постить?<br />Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/11112/Багу нашли, в 3.2.11 поправим. Нужно было сразу сказать, что это эмуляция и бага специфична только д...2011-09-15T14:06:10Z2011-09-15T14:06:10ZMikhail Sukhovhttps://stocksharp.com/users/201/info@stocksharp.comБагу нашли, в 3.2.11 поправим. Нужно было сразу сказать, что это эмуляция и бага специфична только для эмуляции. У топик стартера проблема с историей, которая не подтвердилась.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/11039/Можете привести мини код инициализации и старта тестера? Используемый код (на IronPython): gen_secur...2011-09-14T07:17:29Z2011-09-14T07:20:17ZJustforghttps://stocksharp.com/users/28516/info@stocksharp.com<div class="quote"><span class="quotetitle">Mikhail Sukhov <a href="https://stocksharp.com/posts/m/11031/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote">Можете привести мини код инициализации и старта тестера?</div></div><br /><br />Используемый код (на IronPython):<br /><br /><div class="code"><strong>Code</strong><div class="innercode"><pre class="brush:python">
gen_securities = [
Security(Id="TST1", Code="TST1", Name="whatevername", MinStepSize=5,
MinStepPrice=2, Decimals=0, Exchange=Exchange.Test),
Security(Id="TST2", Code="TST2", Name="whatevername2", MinStepSize=5,
MinStepPrice=2, Decimals=0, Exchange=Exchange.Test),
]
logManager = StrategyLogManager()
logManager.Listeners.Add(FileLogListener("log.txt"))
portfolio = Portfolio(Name="twst account", BeginAmount=Currency(Value=1000000))
trader = EmulationTrader(List[Security](gen_securities),
List[Portfolio]([portfolio]),
MarketTimeChangedInterval=TimeSpan.FromMinutes(50))
for security in gen_securities:
security.LastTrade.Price = 155000
trader.TradeGenerators[security] = RandomWalkTradeGenerator(security)
trader.DepthGenerators[security] = TrendMarketDepthGenerator(security)
def new_securities(securities):
for security in securities:
print "security", security
trader.RegisterQuotes(security)
def quotes_changed(depths):
for depth in depths:
print "Quotes: [{2}] {0} / {1}".format(depth.BestAsk.ToString(), depth.BestBid.ToString(), depth.Security)
def connect_done():
print "connected"
trader.NewSecurities += new_securities
trader.QuotesChanged += quotes_changed
trader.StartExport()
trader.Start(DateTime(2009, 6, 1), DateTime(2009, 6, 2))
trader.Connected += connect_done
trader.Connect()
sys.stdin.readline()
</pre>
</div></div>Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/11031/Пытаюсь сделать примерно то же самое; но несмотря на добавление нескольких RandomWalkTradeGenerator ...2011-09-13T23:46:05Z2011-09-13T23:46:05ZMikhail Sukhovhttps://stocksharp.com/users/201/info@stocksharp.com<div class="quote"><span class="quotetitle">Justforg <a href="https://stocksharp.com/posts/m/10995/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote">Пытаюсь сделать примерно то же самое; но несмотря на добавление нескольких RandomWalkTradeGenerator (по одному на каждую бумагу) генерируются стаканы только для первой добавленной (хотя события добавления бумаг от trader'а генерируются для всех). Это баг или я что-то делаю не так?<br /></div></div><br /><br />Можете привести мини код инициализации и старта тестера?Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/10995/Пытаюсь сделать примерно то же самое; но несмотря на добавление нескольких RandomWalkTradeGenerator ...2011-09-12T21:49:43Z2011-09-12T21:49:43ZJustforghttps://stocksharp.com/users/28516/info@stocksharp.comПытаюсь сделать примерно то же самое; но несмотря на добавление нескольких RandomWalkTradeGenerator (по одному на каждую бумагу) генерируются стаканы только для первой добавленной (хотя события добавления бумаг от trader'а генерируются для всех). Это баг или я что-то делаю не так?<br />Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/10920/Т.е. достаточно создать эмулятор только для одного инструмента или ему можно как-то передать сразу н...2011-09-08T22:28:22Z2011-09-08T22:28:22ZMikhail Sukhovhttps://stocksharp.com/users/201/info@stocksharp.com<div class="quote"><span class="quotetitle">XMbIPb <a href="https://stocksharp.com/posts/m/10919/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote">Т.е. достаточно создать эмулятор только для одного инструмента или ему можно как-то передать сразу несколько бумаг? </div></div><br /><br />Эмулятор не создается для бумаги. Эмулятор создается сам по себе. Бумаги заполняются в него.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/10919/ По быстрее в каком плане? Чтоб не ждать секунду между запросами.. как ещё можно получить состояние ...2011-09-08T21:53:49Z2011-09-08T21:53:49ZXMbIPbhttps://stocksharp.com/users/6200/info@stocksharp.com<div class="quote"><span class="quotetitle">Mikhail Sukhov <a href="https://stocksharp.com/posts/m/10916/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote"><br />По быстрее в каком плане?</div></div><br />Чтоб не ждать секунду между запросами.. как ещё можно получить состояние всех шести стаканов на определённый момент времени(например на 10:00:01,02 и т.д.)?<br /><div class="quote"><span class="quotetitle">Mikhail Sukhov <a href="https://stocksharp.com/posts/m/10916/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote"><br />5 EmulationTrader лишних.</div></div><br />Т.е. достаточно создать эмулятор только для одного инструмента или ему можно как-то передать сразу несколько бумаг? Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/10916/Чтобы получить лучшие офферы на начало каждой секунды из истории шести стаканов - нужно создать шест...2011-09-08T19:35:50Z2011-09-08T19:35:50ZMikhail Sukhovhttps://stocksharp.com/users/201/info@stocksharp.com<div class="quote"><span class="quotetitle">XMbIPb <a href="https://stocksharp.com/posts/m/10895/"><img src="https://stocksharp.com/images/icon_latest_reply.gif" title="Go to" alt="Go to" /></a></span><div class="innerquote">Чтобы получить лучшие офферы на начало каждой секунды из истории шести стаканов - нужно создать шесть тестовых инструментов, создать для каждого EmulationTrader и с интервалом в секунду запрашивать GetMarketDepth(Security).BestAsk для каждого стакана.. или есть способ лучше(быстрее)?<br /></div></div><br /><br />По быстрее в каком плане? Судя по предложенному способу 5 EmulationTrader лишних.Copyright @ StockSharp Platform LLC 2010 - 2024https://stocksharp.com/posts/m/10895/Чтобы получить лучшие офферы на начало каждой секунды из истории шести стаканов - нужно создать шест...2011-09-07T18:44:34Z2011-09-07T18:44:34ZXMbIPbhttps://stocksharp.com/users/6200/info@stocksharp.comЧтобы получить лучшие офферы на начало каждой секунды из истории шести стаканов - нужно создать шесть тестовых инструментов, создать для каждого EmulationTrader и с интервалом в секунду запрашивать GetMarketDepth(Security).BestAsk для каждого стакана.. или есть способ лучше(быстрее)?<br /> Copyright @ StockSharp Platform LLC 2010 - 2024