FixServerSerializer
Реализация IFixServerSerializer по умолчанию.
Реализует: IFixServerSerializer
Конструкторы
public FixServerSerializer(IFixReader reader, IFixWriter writer, IFixWriter bodyWriter, string version, string senderCompId, string targetCompId, FastDateTimeParser dateParser, FastDateTimeParser dateTimeParser, FastTimeSpanParser timeParser, Func<long> getNextId)
fixServerSerializer = FixServerSerializer(reader, writer, bodyWriter, version, senderCompId, targetCompId, dateParser, dateTimeParser, timeParser, getNextId)
Инициализирует новый экземпляр FixServerSerializer.
- reader
- Читатель FIX для анализа входящих сообщений.
- writer
- Модуль записи FIX для записи исходящих сообщений.
- bodyWriter
- Модуль записи FIX для тела сообщения.
- version
- Версия протокола FIX.
- senderCompId
- Комп-идентификатор отправителя.
- targetCompId
- Идентификатор целевой компании.
- dateParser
- Парсер даты.
- dateTimeParser
- Парсер даты/времени.
- timeParser
- Парсер времени.
- getNextId
- Функция для получения идентификатора следующей последовательности сообщений.
Свойства
public IFixReader Reader { get; }
value = fixServerSerializer.Reader
Читатель FIX для анализа входящих сообщений.
public IFixWriter Writer { get; }
value = fixServerSerializer.Writer
Модуль записи FIX для записи исходящих сообщений.
Методы
protected static string Convert(string value, bool convertToLatin)
result = FixServerSerializer.Convert(value, convertToLatin)
При необходимости преобразуйте строку в латиницу.
public virtual ValueTask<FixBoardLookup?> ReadBoardLookupAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadBoardLookupAsync(cancellationToken)
Чтение данных сообщения BoardLookup.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual IAsyncEnumerable<ValueTuple<BoardLookupMessage, string>> ReadBoardLookupSubscriptionAsync<TSession>(TSession session, Func<TSession, string, long> createTransactionId, Func<TSession, string, long> getTransactionId, CancellationToken cancellationToken)
result = fixServerSerializer.ReadBoardLookupSubscriptionAsync(session, createTransactionId, getTransactionId, cancellationToken)
Прочитайте сообщение о подписке BoardLookup.
- session
- Клиентская сессия.
- createTransactionId
- Создатель идентификатора транзакции.
- getTransactionId
- Получатель идентификатора транзакции.
- cancellationToken
- Токен отмены.
Возвращает: Сообщения поиска на доске с идентификаторами запросов.
public virtual ValueTask<FixBoardUpdate?> ReadBoardUpdateAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadBoardUpdateAsync(cancellationToken)
Чтение данных сообщения BoardUpdate.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual IAsyncEnumerable<ValueTuple<TCommandMessage, string>> ReadCommandAsync<TSession, TCommandMessage>(TSession session, Func<TSession, string, long> getTransactionId, Func<FixTags, IFixReader, CancellationToken, ValueTask<bool>> readTag, CancellationToken cancellationToken)
result = fixServerSerializer.ReadCommandAsync(session, getTransactionId, readTag, cancellationToken)
Прочитайте командное сообщение.
public virtual ValueTask<FixDataTypeLookup?> ReadDataTypeLookupAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadDataTypeLookupAsync(cancellationToken)
Чтение данных сообщения DataTypeLookup.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<bool> ReadHeartbeatAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadHeartbeatAsync(cancellationToken)
Прочитайте сообщение Heartbeat (использует сообщение, возвращает успех).
public virtual ValueTask<bool> ReadHistoryEndAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadHistoryEndAsync(cancellationToken)
Прочитать сообщение HistoryEnd (использует сообщение, возвращает успех).
public virtual ValueTask<FixHistoryStart?> ReadHistoryStartAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadHistoryStartAsync(cancellationToken)
Чтение данных сообщения HistoryStart.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<bool> ReadLogoutAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadLogoutAsync(cancellationToken)
Прочитайте сообщение о выходе из системы (использует сообщение, возвращает успех).
public virtual IAsyncEnumerable<FixMarketDataRequest> ReadMarketDataRequestAsync(FastDateTimeParser dateParser, CancellationToken cancellationToken)
result = fixServerSerializer.ReadMarketDataRequestAsync(dateParser, cancellationToken)
Чтение данных сообщения MarketDataRequest.
- dateParser
- Анализатор даты/времени для полей даты.
- cancellationToken
- Токен отмены.
Возвращает: Асинхронное перечисление запросов рыночных данных.
public virtual ValueTask<FixNewOrderSingle?> ReadNewOrderSingleAsync(Func<OrderCondition> createCondition, Func<FixTags, Func<OrderCondition>, CancellationToken, ValueTask<bool>> readCondition, CancellationToken cancellationToken)
result = fixServerSerializer.ReadNewOrderSingleAsync(createCondition, readCondition, cancellationToken)
Чтение данных сообщения NewOrderSingle.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual IAsyncEnumerable<FixNews> ReadNewsAsync(FastDateTimeParser dateParser, CancellationToken cancellationToken)
result = fixServerSerializer.ReadNewsAsync(dateParser, cancellationToken)
Чтение данных сообщения новостей.
- dateParser
- Парсер даты/времени.
- cancellationToken
- Токен отмены.
Возвращает: Новостные сообщения.
public virtual ValueTask<FixOrderCancelReplaceRequest?> ReadOrderCancelReplaceRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadOrderCancelReplaceRequestAsync(cancellationToken)
Чтение данных сообщения OrderCancelReplaceRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixOrderCancelRequest?> ReadOrderCancelRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadOrderCancelRequestAsync(cancellationToken)
Чтение данных сообщения OrderCancelRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<bool> ReadOrderConditionAsync(FixTags tag, Func<OrderCondition> getCondition, CancellationToken cancellationToken)
result = fixServerSerializer.ReadOrderConditionAsync(tag, getCondition, cancellationToken)
Чтение состояния заказа из FIX-тегов.
public virtual ValueTask<FixOrderMassCancelRequest?> ReadOrderMassCancelRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadOrderMassCancelRequestAsync(cancellationToken)
Чтение данных сообщения OrderMassCancelRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixOrderMassStatusRequest?> ReadOrderMassStatusRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadOrderMassStatusRequestAsync(cancellationToken)
Чтение данных сообщения OrderMassStatusRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixOrderStatusRequest?> ReadOrderStatusRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadOrderStatusRequestAsync(cancellationToken)
Чтение данных сообщения OrderStatusRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixRemove?> ReadRemoveAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadRemoveAsync(cancellationToken)
Прочтите Удалить данные сообщения.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixRequestForPositions?> ReadRequestForPositionsAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadRequestForPositionsAsync(cancellationToken)
Чтение данных сообщения RequestForPositions.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixResendRequest?> ReadResendRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadResendRequestAsync(cancellationToken)
Чтение данных сообщения ResendRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixSecurityLegsRequest?> ReadSecurityLegsRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadSecurityLegsRequestAsync(cancellationToken)
Чтение данных сообщения SecurityLegsRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<SecurityId[]> ReadSecurityListDeleteAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadSecurityListDeleteAsync(cancellationToken)
Чтение данных сообщения SecurityListDelete.
Возвращает: Массив идентификаторов финансовых инструментов, которые нужно удалить, или значение NULL, если чтение не удалось.
public virtual ValueTask<FixSecurityListRequest?> ReadSecurityListRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadSecurityListRequestAsync(cancellationToken)
Чтение данных сообщения SecurityListRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual IAsyncEnumerable<SecurityMessage> ReadSecurityListUploadAsync(FastDateTimeParser dateParser, FastDateTimeParser yearMonthParser, Action<Exception> logError, CancellationToken cancellationToken)
result = fixServerSerializer.ReadSecurityListUploadAsync(dateParser, yearMonthParser, logError, cancellationToken)
Прочтите сообщения SecurityListUpload.
- dateParser
- Парсер даты/времени.
- yearMonthParser
- Парсер год-месяц.
- logError
- Действие по регистрации ошибок.
- cancellationToken
- Токен отмены.
Возвращает: сообщения о финансовых инструментах.
public virtual ValueTask<FixSecurityMapping?> ReadSecurityMappingAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadSecurityMappingAsync(cancellationToken)
Чтение данных сообщения SecurityMapping.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixSecurityStatusRequest?> ReadSecurityStatusRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadSecurityStatusRequestAsync(cancellationToken)
Чтение данных сообщения SecurityStatusRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixSequenceReset?> ReadSequenceResetAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadSequenceResetAsync(cancellationToken)
Чтение данных сообщения SequenceReset.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual IAsyncEnumerable<ValueTuple<TSubscription, string>> ReadSubscriptionRequestAsync<TSession, TSubscription>(TSession session, Func<TSession, string, long> createTransactionId, Func<TSession, string, long> getTransactionId, Func<TSubscription, FixTags, IFixReader, CancellationToken, ValueTask<bool>> readTag, CancellationToken cancellationToken)
result = fixServerSerializer.ReadSubscriptionRequestAsync(session, createTransactionId, getTransactionId, readTag, cancellationToken)
Прочтите общий запрос на подписку.
public virtual ValueTask<FixTestRequest?> ReadTestRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadTestRequestAsync(cancellationToken)
Чтение данных сообщения TestRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixTradingSessionStatusRequest?> ReadTradingSessionStatusRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadTradingSessionStatusRequestAsync(cancellationToken)
Чтение данных сообщения TradingSessionStatusRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixUserInfo?> ReadUserInfoAsync(FastDateTimeParser dateParser, CancellationToken cancellationToken)
result = fixServerSerializer.ReadUserInfoAsync(dateParser, cancellationToken)
Чтение данных сообщения UserInfo.
- dateParser
- Парсер даты/времени.
- cancellationToken
- Токен отмены.
Возвращает: Информационные данные пользователя или ноль, если чтение не удалось.
public virtual ValueTask<FixUserRequest?> ReadUserRequestAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadUserRequestAsync(cancellationToken)
Чтение данных сообщения UserRequest.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask<FixUserRequestEx?> ReadUserRequestExAsync(CancellationToken cancellationToken)
result = fixServerSerializer.ReadUserRequestExAsync(cancellationToken)
Чтение данных сообщения UserRequestEx.
Возвращает: Данные или ноль, если чтение не удалось.
public virtual ValueTask WriteAsync(FixUserInfo data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите информацию о пользователе.
public virtual ValueTask WriteAsync(FixOrderMassCancelReport data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите отчет о массовой отмене заказов.
public virtual ValueTask WriteAsync(FixOrderCancelReject data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите заказ, отмените отказ.
public virtual ValueTask WriteAsync(FixExecutionReport data, Func<IFixWriter, OrderCondition, CancellationToken, ValueTask> condition, bool convertToLatin, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, condition, convertToLatin, cancellationToken)
Написать отчет об исполнении.
public virtual ValueTask WriteAsync(FixSubscription data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите подписку.
public virtual ValueTask WriteAsync(FixSubscriptionOnline data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите подписку онлайн.
public virtual ValueTask WriteAsync(FixSubscriptionFinished data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Запись подписки завершена.
public virtual ValueTask WriteAsync(FixSubscriptionResponse data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите ответ по подписке.
public virtual ValueTask WriteAsync(FixBoard data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите сообщение на форуме.
public virtual ValueTask WriteAsync(FixTradingSessionStatus data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите статус торговой сессии.
public virtual ValueTask WriteAsync(FixReject data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите сообщение об отказе.
public virtual ValueTask WriteAsync(FixLogonResponse data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите ответ на вход.
public virtual ValueTask WriteAsync(FixHeartbeat data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите ответ сердцебиения.
public virtual ValueTask WriteAsync(FixSecurityLegsInfo data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите информацию о ножках финансового инструмента.
public virtual ValueTask WriteAsync(FixSecurityListResponseError data, bool convertToLatin, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, convertToLatin, cancellationToken)
Напишите ответ на список финансовых инструментов с ошибкой.
public virtual ValueTask WriteAsync(FixMarketDataSnapshotFullRefresh data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Запись полного обновления снимка рыночных данных.
public virtual ValueTask WriteAsync(FixMarketDataIncrementalRefresh data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Запись добавочного обновления рыночных данных.
public virtual ValueTask WriteAsync(FixMarketDataRequestReject data, bool convertToLatin, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, convertToLatin, cancellationToken)
Запрос на запись рыночных данных отклонен.
public virtual ValueTask WriteAsync(FixNews data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите новостное сообщение.
public virtual ValueTask WriteAsync(FixDataTypeInfo data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Запишите информацию о типе данных.
public virtual ValueTask WriteAsync(FixRemoteFile data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Записать удаленный файл.
public virtual ValueTask WriteAsync(FixPositionReport data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите отчет о местоположении.
public virtual ValueTask WriteAsync(FixSecurityListResponse data, bool convertToLatin, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, convertToLatin, cancellationToken)
Напишите ответ по списку финансовых инструментов.
public virtual ValueTask WriteAsync(FixUserResponse data, CancellationToken cancellationToken)
result = fixServerSerializer.WriteAsync(data, cancellationToken)
Напишите ответ пользователя.
protected ValueTask WriteEntriesAsync(IFixWriter writer, ICollection<MDEntry> entries, CancellationToken cancellationToken)
result = fixServerSerializer.WriteEntriesAsync(writer, entries, cancellationToken)
Напишите записи MD.
protected ValueTask WriteFixMessageAsync(string msgType, Func<IFixWriter, CancellationToken, ValueTask> handler, CancellationToken cancellationToken)
result = fixServerSerializer.WriteFixMessageAsync(msgType, handler, cancellationToken)
Напишите сообщение FIX с указанным типом сообщения.
- msgType
- Тип сообщения FIX.
- handler
- Обработчик для записи тела сообщения.
- cancellationToken
- Токен отмены.
protected virtual ValueTask WriteFixOrderConditionAsync(IFixWriter writer, OrderCondition condition, CancellationToken cancellationToken)
result = fixServerSerializer.WriteFixOrderConditionAsync(writer, condition, cancellationToken)
Напишите условие FIX ордера (для стоп/алго ордеров).
public virtual ValueTask WriteOrderConditionAsync(OrderCondition condition, CancellationToken cancellationToken)
result = fixServerSerializer.WriteOrderConditionAsync(condition, cancellationToken)
Записать условие ордера (для стоп/алго-ордеров).