AlfaTrader выкидывает ошибку при работе с SampleRealTimeTesting


AlfaTrader выкидывает ошибку при работе с SampleRealTimeTesting
Atom Reply
5/17/2011


Эксепшн вылетает при первой попытки создания заявки:
var order = base.CreateOrder(direction, base.Security.GetMarketPrice(direction), base.Volume);
значение base.Security не null

Stack Trace:

Value cannot be null.
Parameter name: security


at Ecng.Trading.Algo.TraderHelper.ShrinkPrice(Security security, Decimal price, ShrinkRules rule)
at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(MarketDepthPair bestPair, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)
at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(MarketDepth depth, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)
at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(Security security, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)
at SampleRealTimeTesting.SmaStrategy.OnProcess() in E:\Projects\StockSharp\SampleRealTimeTesting\SmaStrategy.cs:line 100
at Ecng.Trading.Algo.Strategies.Strategy.#=qZIvlEwumCnLOHChv0nHsiE2DmvMiBjA27jwCfRBG6Ng=.#=qjSTDqQrm5VigoeELaU6R4g==()

Tags:


Thanks:




4 Answers
Sergey Masyura

Avatar
Date: 5/18/2011
Reply


maze9a Go to
Эксепшн вылетает при первой попытки создания заявки:
var order = base.CreateOrder(direction, base.Security.GetMarketPrice(direction), base.Volume);
значение base.Security не null

Stack Trace:

Value cannot be null.
Parameter name: security


at Ecng.Trading.Algo.TraderHelper.ShrinkPrice(Security security, Decimal price, ShrinkRules rule)
at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(MarketDepthPair bestPair, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)
at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(MarketDepth depth, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)
at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(Security security, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)
at SampleRealTimeTesting.SmaStrategy.OnProcess() in E:\Projects\StockSharp\SampleRealTimeTesting\SmaStrategy.cs:line 100
at Ecng.Trading.Algo.Strategies.Strategy.#=qZIvlEwumCnLOHChv0nHsiE2DmvMiBjA27jwCfRBG6Ng=.#=qjSTDqQrm5VigoeELaU6R4g==()


Спасибо. Посмотрю.
Thanks:

Sergey Masyura

Avatar
Date: 5/19/2011
Reply


sergey.masyura Go to
maze9a Go to
Эксепшн вылетает при первой попытки создания заявки:
var order = base.CreateOrder(direction, base.Security.GetMarketPrice(direction), base.Volume);
значение base.Security не null

Stack Trace:

Value cannot be null.
Parameter name: security


at Ecng.Trading.Algo.TraderHelper.ShrinkPrice(Security security, Decimal price, ShrinkRules rule)
at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(MarketDepthPair bestPair, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)
at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(MarketDepth depth, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)
at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(Security security, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)
at SampleRealTimeTesting.SmaStrategy.OnProcess() in E:\Projects\StockSharp\SampleRealTimeTesting\SmaStrategy.cs:line 100
at Ecng.Trading.Algo.Strategies.Strategy.#=qZIvlEwumCnLOHChv0nHsiE2DmvMiBjA27jwCfRBG6Ng=.#=qjSTDqQrm5VigoeELaU6R4g==()


Спасибо. Посмотрю.


Исправлено в версии http://stocksharpconnect...changeset/changes/2711#

Thanks:

maze9a

Avatar
Date: 5/19/2011
Reply


Спасибо за фикс, теперь работает. Наткнулся на новую проблему. В том же примере иногда вылетает эксепшн при работе если регистрировать заявку через MarketQuotingStrategy

[MQS] System.ArgumentException: Объем заявки не может быть нулевым.
Parameter name: order
at Ecng.Trading.Algo.TraderHelper.#=qGYgPbZslosywch_VZAk3GA==(Order #=qrAcGdM4jLZdvzVeINPqexQ==)
at Ecng.Trading.Algo.Testing.RealTimeEmulationTrader`1.ReRegisterOrder(Order oldOrder, Order newOrder)
at Ecng.Trading.Algo.Strategies.Strategy.ReRegisterOrder(Order oldOrder, Order newOrder)
at Ecng.Trading.Algo.Strategies.QuotingStrategy.OnProcess()
at Ecng.Trading.Algo.Strategies.Strategy.#=qZIvlEwumCnLOHChv0nHsiE2DmvMiBjA27jwCfRBG6Ng=.#=qjSTDqQrm5VigoeELaU6R4g==()
Topic starter
Thanks:

Sergey Masyura

Avatar
Date: 5/21/2011
Reply


maze9a Go to
Спасибо за фикс, теперь работает. Наткнулся на новую проблему. В том же примере иногда вылетает эксепшн при работе если регистрировать заявку через MarketQuotingStrategy

[MQS] System.ArgumentException: Объем заявки не может быть нулевым.
Parameter name: order
at Ecng.Trading.Algo.TraderHelper.#=qGYgPbZslosywch_VZAk3GA==(Order #=qrAcGdM4jLZdvzVeINPqexQ==)
at Ecng.Trading.Algo.Testing.RealTimeEmulationTrader`1.ReRegisterOrder(Order oldOrder, Order newOrder)
at Ecng.Trading.Algo.Strategies.Strategy.ReRegisterOrder(Order oldOrder, Order newOrder)
at Ecng.Trading.Algo.Strategies.QuotingStrategy.OnProcess()
at Ecng.Trading.Algo.Strategies.Strategy.#=qZIvlEwumCnLOHChv0nHsiE2DmvMiBjA27jwCfRBG6Ng=.#=qjSTDqQrm5VigoeELaU6R4g==()


Пока такого не встречал при запусках. Если встречу - поправлю. Видимо ReRegisterOrder в AlfaTrader неккоректно работает. Если будет время, можешь сам посмотреть в этом направлении.
Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy