• Version 1.15.2
Show / Hide Table of Contents

Class EngineSettings

The FIX Engine configuration settings.

Inheritance
object
EngineSettings
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
Namespace: OnixS.Fix
Assembly: OnixS.Fix.Engine.dll
Syntax
public class EngineSettings

Constructors

EngineSettings()

Declaration
public EngineSettings()

Properties

Dictionary

Path(s) to XML file(s) with the description of FIX dictionary(s). Symbol '|' is used as a filename delimiter.

Declaration
public string Dictionary { get; set; }
Property Value
Type Description
string

DictionaryString

Specifies the plain text string with the Dictionary description.

Declaration
public string DictionaryString { get; set; }
Property Value
Type Description
string

DisableNetworkLevel

Disable the network level completely.

The default value is DisableNetworkLevel. The property key is DisableNetworkLevel.

Declaration
public bool DisableNetworkLevel { get; set; }
Property Value
Type Description
bool

Disable the network level completely

FileBasedStorageSegmentSize

Maximum size of a single .summary file in bytes.

The default value is FileBasedStorageSegmentSize. The property key is FileBasedStorageSegmentSize.

Declaration
public long FileBasedStorageSegmentSize { get; set; }
Property Value
Type Description
long

HeartbeatInterval

The default heartbeat interval in seconds.

The default value is HeartbeatInterval. The property key is HeartbeatInterval.

Declaration
public int HeartbeatInterval { get; set; }
Property Value
Type Description
int

The default heartbeat interval in seconds

IgnoreFileBasedStorageIntegrityErrors

Ignore File Bases Storage integrity errors.

The default value is IgnoreFileBasedStorageIntegrityErrors. The property key is IgnoreFileBasedStorageIntegrityErrors.

Declaration
public bool IgnoreFileBasedStorageIntegrityErrors { get; set; }
Property Value
Type Description
bool

Ignore File Bases Storage integrity errors

LicenseAlertingDaysBeforeExpiration

The number of days to alert before the license expiration.

If the number of remaining license days is less or equal to this number then the warning will be reported to the FIX Engine's log and Warning event will be invoked. The verification is performed during the following events: FIX Engine initialization, LogonAsAcceptor() and LogonAsInitiator(IPAddress, int, int, bool, IMessage, bool) calls.

The default value is LicenseAlertingDaysBeforeExpiration. The property key is LicenseAlertingDaysBeforeExpiration.

Declaration
public int LicenseAlertingDaysBeforeExpiration { get; set; }
Property Value
Type Description
int

The number of days to alert before the license expiration.

LicenseStore

The path(s) to the folder(s) that contains the license file(s). The symbol '|' is used as a path delimiter.

The default value is LicenseStore. The property key is LicenseStore.

Declaration
public string LicenseStore { get; set; }
Property Value
Type Description
string

LicenseStores

Paths to folders that contain license files.

The default value is LicenseStore. The property key is LicenseStore.

Declaration
public List<string> LicenseStores { get; }
Property Value
Type Description
List<string>

LicenseString

The string that contains the license file content.

The default value is LicenseString. The property key is LicenseString.

Declaration
public string LicenseString { get; set; }
Property Value
Type Description
string

ListenPorts

Listen port(s) for incoming FIX connections.

The default value is ListenPorts. The property key is ListenPorts.

Declaration
public List<int> ListenPorts { get; }
Property Value
Type Description
List<int>

Listen port(s)

LocalNetworkInterface

The network interface.

The default value is LocalNetworkInterface The property key is LocalNetworkInterface.

Declaration
public IPAddress LocalNetworkInterface { get; set; }
Property Value
Type Description
IPAddress

The network interface

See Also
LocalNetworkInterface

LocalTimeUsage

Use the local time in FIX Engine events and log files.

The default value is LocalTimeUsage. The property key is LocalTimeUsage.

Declaration
public bool LocalTimeUsage { get; set; }
Property Value
Type Description
bool

Use the local time in FIX Engine events and log files

LogBeforeSending

Option to switch on/off logging of outbound messages before/after sending.

By default, the logging of an outgoing message to the session storage is performed before sending to the wire. This is more reliable because we guarantee that an outgoing message is stored before going to the counterparty and if the application is shut down after sending, for some reasons, the sent message can be resent afterward.

However, this approach adds the logging latency to the FIX Engine sending latency. As a result, it increases the tick-to-trade latency. When the latency is more important, one can switch off the logging before sending, by setting the OnixS::FIX::Session::logBeforeSending option to false. In this case, the logging of outgoing messages to the session storage will be performed after sending to the wire. This way, one can exclude the logging latency from the FIX Engine sending latency and as a result, decrease the tick-to-trade latency.

Declaration
public bool LogBeforeSending { get; set; }
Property Value
Type Description
bool

LogInboundMessages

Log incoming messages.

The default value is LogInboundMessages. The property key is LogInboundMessages.

Declaration
public bool LogInboundMessages { get; set; }
Property Value
Type Description
bool

Store incoming messages in the session storage

LogOutboundMessages

Log outgoing messages.

The default value is LogOutboundMessages. The property key is LogOutboundMessages.

Declaration
public bool LogOutboundMessages { get; set; }
Property Value
Type Description
bool

Store outbound messages in the session storage

LoggerFactory

The custom logger factory.

Declaration
public ILoggerFactory LoggerFactory { get; set; }
Property Value
Type Description
ILoggerFactory

LoggerProvider

The custom logger provider, ignored if LoggerFactory not null.

Declaration
public ILoggerProvider LoggerProvider { get; set; }
Property Value
Type Description
ILoggerProvider

LogonTimeout

Number of seconds to wait for a logon response before disconnecting.

The default value is LogonTimeout. The property key is LogonTimeout.

Declaration
public int LogonTimeout { get; set; }
Property Value
Type Description
int

The default heartbeat interval in seconds

LogoutTimeout

Number of seconds to wait for a logout response before disconnecting.

The default value is LogoutTimeout. The property key is LogoutTimeout.

Declaration
public int LogoutTimeout { get; set; }
Property Value
Type Description
int

The default heartbeat interval in seconds

MessageGrouping

Message sending grouping.

The default value is MessageGrouping. The property key is MessageGrouping.

Declaration
public int MessageGrouping { get; set; }
Property Value
Type Description
int

Value 0 means the default grouping - the messages will be sent ASAP and pending messages (if any) will be grouped until reaching the TCP buffer size. Value 1 means the messages will be sent ASAP and will never be grouped. Value 2 (or greater) means the messages will be sent ASAP and pending messages will be grouped maximum by 2 (or greater).

ProcessDeliverToCompId

Process the DeliverToCompID, tag=128 field.

The default value is ProcessDeliverToCompId. The property key is ProcessDeliverToCompId.

Declaration
public bool ProcessDeliverToCompId { get; set; }
Property Value
Type Description
bool

Process the DeliverToCompID, tag=128 field

ReasonableTransmissionTime

Reasonable transmission time as % from the heartbeat interval.

The default value is ReasonableTransmissionTime. The property key is ReasonableTransmissionTime.

Declaration
public int ReasonableTransmissionTime { get; set; }
Property Value
Type Description
int

Reasonable transmission time as % from the heartbeat interval

ReceiveBufferSize

TCP socket receive buffer size allocated to FIX connection, in bytes.

The default value is ReceiveBufferSize. The property key is ReceiveBufferSize.

Declaration
public int ReceiveBufferSize { get; set; }
Property Value
Type Description
int

TCP socket receive buffer size in bytes

ReceiveSpinningTimeout

The non-blocking receive spinning timeout (in microseconds) before the receiving thread enters into the blocking wait mode.

Should not be greater than 1 sec. (the minimal HeartbeatInterval interval).

The default value is ReceiveSpinningTimeout. The property key is ReceiveSpinningTimeout.

Declaration
public int ReceiveSpinningTimeout { get; set; }
Property Value
Type Description
int

Receive spinning timeout (in microseconds)

ReconnectAttempts

Number of attempts to restore the FIX connection.

The default value is ReconnectAttempts. The property key is ReconnectAttempts.

Declaration
public int ReconnectAttempts { get; set; }
Property Value
Type Description
int

Number of attempts to restore the FIX connection

ReconnectInterval

Time interval between attempts to restore the FIX connection (in seconds).

The default value is ReconnectInterval. The property key is ReconnectInterval.

Declaration
public int ReconnectInterval { get; set; }
Property Value
Type Description
int

Time interval between attempts to restore the FIX connection (in seconds)

ResendRequestMaximumRange

The maximum number of messages to be requested in one Resend Request(2) message.

The default value is ResendRequestMaximumRange. The property key is ResendRequestMaximumRange.

Declaration
public int ResendRequestMaximumRange { get; set; }
Property Value
Type Description
int

The maximum number of messages to be requested in one Resend Request (MsgType=2) message or ResendRequestMaximumRangeNoLimit for no limit

See Also
ResendRequestMaximumRange
ResendRequestMaximumRangeNoLimit

ResendingBatchSize

The maximum number of messages sent in reply to the Resend Request(2) before temporarily releasing the Session’s lock.

The default value is ResendingBatchSize. The property key is ResendingBatchSize.

Declaration
public int ResendingBatchSize { get; set; }
Property Value
Type Description
int

The maximum number of messages sent in reply to the Resend Request(2) before temporarily releasing the Session’s lock

ResendingQueueSize

The number of sent messages that are available for resending in reply on counterparty's Resend Request(2) message.

The default value is ResendingQueueSize. The property key is ResendingQueueSize.

Declaration
public int ResendingQueueSize { get; set; }
Property Value
Type Description
int

The number of sent messages that are available for resending in reply on counterparty's Resend Request(2) message

See Also
ResendingQueueSize

SendBufferSize

TCP socket send buffer size allocated to FIX connection, in bytes.

The default value is SendBufferSize. The property key is SendBufferSize.

Declaration
public int SendBufferSize { get; set; }
Property Value
Type Description
int

TCP socket send buffer size in bytes

SendLogoutOnException

Send the Logout message before dropping the telecommunication link in case of an exception during the processing of an incoming FIX message.

The default value is SendLogoutOnException. The property key is SendLogoutOnException.

Declaration
public bool SendLogoutOnException { get; set; }
Property Value
Type Description
bool

option to send or not to send

SendLogoutOnInvalidLogon

Send the Logout message before dropping the telecommunication link in reply on an invalid logon attempt.

The default value is SendLogoutOnInvalidLogon. The property key is SendLogoutOnInvalidLogon.

Declaration
public bool SendLogoutOnInvalidLogon { get; set; }
Property Value
Type Description
bool

Send the Logout message before dropping the telecommunication link in reply on an invalid logon attempt

SendQueueMaxSize

Send queue maximum size in bytes.

The default value is SendQueueMaxSize. The property key is SendQueueMaxSize.

Declaration
public int SendQueueMaxSize { get; set; }
Property Value
Type Description
int

Send queue maximum size in bytes

SendSpinningTimeout

The send spinning timeout (in microseconds) of the Send(IMessage) method to wait for the socket sending buffer availability in the spin loop mode before placing the message to the outgoing queue (to be sent later by the sending thread).

Should not be greater than 1 sec (the minimal Heartbeat interval).

The default value is SendSpinningTimeout. The property key is SendSpinningTimeout.

Declaration
public int SendSpinningTimeout { get; set; }
Property Value
Type Description
int

The send spinning timeout (in microseconds)

SetApplVerId

Set the ApplVerID (1128) field in all outgoing application messages when a FIX protocol version FIX 5.0 or above is used.

The default value is SetApplVerId. The property key is SetApplVerId.

Declaration
public bool SetApplVerId { get; set; }
Property Value
Type Description
bool

Set the ApplVerID (1128) field in all outgoing application messages when a FIX protocol version FIX 5.0 or above is used

See Also
SetApplId

SetLastMsgSeqNumProcessed

Set the LastMsgSeqNumProcessed (369) field in outgoing messages.

The default value is SetLastMsgSeqNumProcessed. The property key is SetLastMsgSeqNumProcessed.

Declaration
public bool SetLastMsgSeqNumProcessed { get; set; }
Property Value
Type Description
bool

Set the LastMsgSeqNumProcessed (369) field in outgoing messages

See Also
SetLastMsgSeqNumProcessed

Ssl

SSL connection settings.

Declaration
public EngineSslSettings Ssl { get; }
Property Value
Type Description
EngineSslSettings

StorageDirectory

Inbound and outbound FIX messages and session's state data are stored in this directory.

The default value is StorageDirectory. The property key is StorageDirectory.

Declaration
public string StorageDirectory { get; set; }
Property Value
Type Description
string

Storage directory

SupportNextExpectedMsgSeqNum

Support the NextExpectedMsgSeqNum field (tag 789) in Logon (MsgType=A) messages.

Note: Using of this option should be bilaterally agreed upon between counterparts.

The default value is SupportNextExpectedMsgSeqNum. The property key is SupportNextExpectedMsgSeqNum.

Declaration
public bool SupportNextExpectedMsgSeqNum { get; set; }
Property Value
Type Description
bool

Support the NextExpectedMsgSeqNum field (tag 789) in Logon (MsgType=A) messages

See Also
SupportNextExpectedMsgSeqNum

TcpNoDelay

Improve latency at the expense of throughput (disable/enable Nagle's algorithm).

The default value is TcpNoDelay. The property key is TcpNoDelay.

Declaration
public bool TcpNoDelay { get; set; }
Property Value
Type Description
bool

Improve latency at the expense of throughput (disable/enable Nagle's algorithm)

See Also
TcpNoDelay

UpdateSendingTime

Update the SendingTime (52) field in the outgoing message even if it is already set.

The default value is UpdateSendingTime. The property key is UpdateSendingTime.

Declaration
public bool UpdateSendingTime { get; set; }
Property Value
Type Description
bool

Update the SendingTime (52) field in the outgoing message if it is already set

See Also
UpdateSendingTime

ValidateCheckSum

Validate the CheckSum (tag 10) field value.

The default value is ValidateCheckSum. The property key is ValidateCheckSum.

Declaration
public bool ValidateCheckSum { get; set; }
Property Value
Type Description
bool

Validate the CheckSum (tag 10) field value

ValidateDuplicatedFields

Validate the presence of fields that appear more than once.

The default value is ValidateDuplicatedFields. The property key is ValidateDuplicatedFields.

Declaration
public bool ValidateDuplicatedFields { get; set; }
Property Value
Type Description
bool

Validate the presence of fields that appear more than once

See Also
ValidateDuplicatedFields

ValidateEmptyFieldValues

Validate empty message field values.

The default value is ValidateEmptyFieldValues. The property key is ValidateEmptyFieldValues.

Declaration
public bool ValidateEmptyFieldValues { get; set; }
Property Value
Type Description
bool

Option to validate empty message field values

See Also
ValidateEmptyFieldValues

ValidateFieldValues

Option to validate field values of FIX messages in accordance with the FIX protocol or its FIX Dialect.

The default value is ValidateFieldValues. The property key is ValidateFieldValues.

Declaration
public bool ValidateFieldValues { get; set; }
Property Value
Type Description
bool

Option to validate field values of FIX messages in accordance with the FIX protocol or its FIX Dialect

See Also
ValidateEmptyFieldValues

ValidateRepeatingGroupEntryCount

Validate that the declared number of repeating group instances is equal to the actual one.

The default value is ValidateRepeatingGroupEntryCount. The property key is ValidateRepeatingGroupEntryCount.

Declaration
public bool ValidateRepeatingGroupEntryCount { get; set; }
Property Value
Type Description
bool

Validate that the declared number of repeating group instances is equal to the actual one

See Also
ValidateRepeatingGroupEntryCount

ValidateRepeatingGroupLeadingField

Validate that repeating group instances start with the correct leading fields.

The default value is ValidateRepeatingGroupLeadingField. The property key is ValidateRepeatingGroupLeadingField.

Declaration
public bool ValidateRepeatingGroupLeadingField { get; set; }
Property Value
Type Description
bool

Validate that repeating group instances start with the correct leading fields.

See Also
ValidateRepeatingGroupLeadingField

ValidateRequiredFields

Validate the presence of required message fields.

The default value is ValidateRequiredFields. The property key is ValidateRequiredFields.

Declaration
public bool ValidateRequiredFields { get; set; }
Property Value
Type Description
bool

Validate the presence of required message fields

See Also
ValidateRequiredFields

ValidateUnknownFields

Validate that there are no unknown message fields.

The default value is ValidateUnknownFields. The property key is ValidateUnknownFields.

Declaration
public bool ValidateUnknownFields { get; set; }
Property Value
Type Description
bool

Validate that there are no unknown message fields

See Also
ValidateUnknownFields

ValidateUnknownMessages

Validate that there are no unknown messages received.

The default value is ValidateUnknownMessages. The property key is ValidateUnknownMessages.

Declaration
public bool ValidateUnknownMessages { get; set; }
Property Value
Type Description
bool

Validate that there are no unknown messages received

See Also
ValidateUnknownMessages

Versions

Standard FIX dictionaries to load during the Engine initialization.

The default value is Versions. The property key is Versions.

Declaration
public HashSet<ProtocolVersion> Versions { get; }
Property Value
Type Description
HashSet<ProtocolVersion>

Standard FIX dictionaries to load during the Engine initialization

Methods

LoadFromConfigurationFile(string)

Loads configuration settings from the .NET application configuration file or from the given XML or JSON configuration file.

Declaration
public void LoadFromConfigurationFile(string configFileName = "")
Parameters
Type Name Description
string configFileName

XML or JSON configuration file name. If the parameter is empty, then the .NET application configuration file is used.

Exceptions
Type Condition
EngineException

Configurations settings cannot be loaded.

ToString()

Returns a string that represents the current object.

Declaration
public override string ToString()
Returns
Type Description
string

A string that represents the current object.

Overrides
object.ToString()
In this article
Back to top Copyright © Onix Solutions.
Generated by DocFX