The Messages project contains the essential message definitions shared across the StockSharp (S#) trading framework. Messages are the contracts used by connectors, adapters and other services for all interactions such as connecting to brokers, requesting market data or placing orders.
- Message Types Enumeration –
MessageTypeslists every supported message kind. - Base Classes – classes like
Message,BaseConnectionMessageandBaseSubscriptionMessageprovide common fields and behaviour. - Asynchronous Processing –
MessageAdapterandAsyncMessageProcessorhandle messages asynchronously. - Utility Helpers – classes such as
ReConnectionSettingscontrol reconnection and subscription options.
The library defines messages for all major trading activities:
- Connection –
ConnectMessage,DisconnectMessage,ConnectionLostMessageandConnectionRestoredMessage. - Security Information –
SecurityMessage,BoardMessageandBoardStateMessage. - Market Data –
MarketDataMessage,Level1ChangeMessage,QuoteChangeMessage,TimeFrameCandleMessageand related candle messages. - Orders and Trades –
OrderRegisterMessage,OrderReplaceMessage,OrderCancelMessage,OrderGroupCancelMessage,OrderStatusMessageandExecutionMessage. - Portfolio and Positions –
PortfolioMessage,PortfolioLookupMessageandPositionChangeMessage. - Service Messages –
TimeMessage,NewsMessage,ErrorMessageand others.
The project targets .NET Standard 2.0 and .NET 6.0 for cross-platform compatibility.
Below is a minimal example of creating a market data subscription message:
using StockSharp.Messages;
var mdMessage = new MarketDataMessage
{
DataType2 = DataType.Ticks,
IsSubscribe = true,
TransactionId = 1,
SecurityId = new SecurityId
{
SecurityCode = "AAPL",
BoardCode = "NASDAQ"
}
};Such messages are passed to an adapter, which forwards them to the broker or data provider.
Further details on messages and architecture can be found in the StockSharp documentation.
