<templates xmlns="http://www.fixprotocol.org/ns/fast/td/1.1">

    <template name="DefaultIncrementalRefreshMessage" id="19">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="X"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <uInt32 name="LastFragment" id="893" presence="optional"/>
        <sequence name="MDEntries">
            <length name="NoMDEntries" id="268"/>
            <uInt32 name="MDUpdateAction" id="279"/>
            <string name="MDEntryType" id="269"/>
            <uInt64 name="SecurityID" id="48" presence="optional"/>
            <uInt32 name="SecurityIDSource" id="22">
                <constant value="8"/>
            </uInt32>
            <string name="Symbol" id="55" presence="optional"/>
            <string name="SecurityGroup" id="1151" presence="optional"/>
            <uInt32 name="ExchangeTradingSessionID" id="5842" presence="optional"/>
            <uInt32 name="RptSeq" id="83"/>
            <uInt32 name="MarketDepth" id="264" presence="optional"/>
            <uInt32 name="MDPriceLevel" id="1023" presence="optional"/>
            <int64 name="MDEntryID" id="278" presence="optional"/>
            <decimal name="MDEntryPx" id="270" presence="optional"/>
            <int64 name="MDEntrySize" id="271" presence="optional"/>
            <uInt32 name="MDEntryDate" id="272" presence="optional"/>
            <uInt64 name="MDEntryTime" id="273"/>
            <int32 name="NumberOfOrders" id="346" presence="optional"/>
            <string name="MDEntryTradeType" id="20003" presence="optional"/>
            <int32 name="TrdType" id="828" presence="optional"/>
            <decimal name="LastPx" id="31" presence="optional"/>
            <int32 name="MDFlags" id="20017" presence="optional"/>
            <string name="Currency" id="15" presence="optional"/>
            <uInt64 name="Revision" id="20018" presence="optional"/>
            <string name="OrderSide" id="10504" presence="optional"/>
            <int64 name="MDEntrySyntheticSize" id="20039" presence="optional"/>
        </sequence>
    </template>

    <template name="DefaultSnapshotMessage" id="20">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="W"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <uInt32 name="LastFragment" id="893" presence="optional"/>
        <uInt32 name="RptSeq" id="83"/>
        <uInt32 name="TotNumReports" id="911"/>
        <uInt32 name="LastMsgSeqNumProcessed" id="369"/>
        <uInt64 name="SecurityID" id="48" presence="optional"/>
        <uInt32 name="SecurityIDSource" id="22">
            <constant value="8"/>
        </uInt32>
        <string name="Symbol" id="55" presence="optional"/>
        <string name="SecurityGroup" id="1151" presence="optional"/>
        <sequence name="MDEntries">
            <length name="NoMDEntries" id="268"/>
            <string name="MDEntryType" id="269"/>
            <uInt32 name="ExchangeTradingSessionID" id="5842" presence="optional"/>
            <int64 name="MDEntryID" id="278" presence="optional"/>
            <uInt32 name="MarketDepth" id="264" presence="optional"/>
            <decimal name="MDEntryPx" id="270" presence="optional"/>
            <uInt32 name="MDEntryDate" id="272" presence="optional"/>
            <uInt64 name="MDEntryTime" id="273"/>
            <int64 name="MDEntrySize" id="271" presence="optional"/>
            <uInt32 name="MDPriceLevel" id="1023" presence="optional"/>
            <int32 name="NumberOfOrders" id="346" presence="optional"/>
            <string name="MDEntryTradeType" id="20003" presence="optional"/>
            <int32 name="TrdType" id="828" presence="optional"/>
            <int32 name="MDFlags" id="20017" presence="optional"/>
            <string name="Currency" id="15" presence="optional"/>
            <string name="OrderSide" id="10504" presence="optional"/>
            <int64 name="MDEntrySyntheticSize" id="20039" presence="optional"/>
        </sequence>
    </template>

    <template name="SecurityDefinition" id="17">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="d"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <!-- Total count of SecurityDefinition messages -->
        <uInt32 name="TotNumReports" id="911"/>
        <string name="Symbol" id="55"/>
        <string name="SecurityDesc" id="107" presence="optional" charset="unicode"/>
        <!-- Unique among all instruments; primary key -->
        <uInt64 name="SecurityID" id="48"/>
        <uInt32 name="SecurityIDSource" id="22">
            <constant value="8"/>
        </uInt32>
        <string name="SecurityAltID" id="455" presence="optional"/>
        <string name="SecurityAltIDSource" id="456" presence="optional"/>
        <!-- Type of instrument -->
        <string name="SecurityType" id="167" presence="optional"/>
        <string name="CFICode" id="461" presence="optional"/>
        <decimal name="StrikePrice" id="202" presence="optional"/>
        <decimal name="ContractMultiplier" id="231" presence="optional"/>
        <uInt32 name="SecurityTradingStatus" id="326" presence="optional"/>
        <string name="Currency" id="15" presence="optional"/>
        <string name="MarketID" id="1301">
            <constant value="MOEX"/>
        </string>
        <string name="MarketSegmentID" id="1300"/>
        <uInt32 name="TradingSessionID" id="336" presence="optional"/>
        <uInt32 name="ExchangeTradingSessionID" id="5842" presence="optional"/>
        <decimal name="Volatility" id="5678" presence="optional"/>
        <sequence name="MDFeedTypes">
            <length name="NoMDFeedTypes" id="1141"/>
            <string name="MDFeedType" id="1022"/>
            <uInt32 name="MarketDepth" id="264" presence="optional"/>
            <uInt32 name="MDBookType" id="1021" presence="optional"/>
        </sequence>
        <sequence name="Underlyings" presence="optional">
            <length name="NoUnderlyings" id="711"/>
            <string name="UnderlyingSymbol" id="311"/>
            <uInt64 name="UnderlyingSecurityID" id="309" presence="optional"/>
            <uInt64 name="UnderlyingFutureID" id="2620" presence="optional"/>
        </sequence>
        <decimal name="HighLimitPx" id="1149" presence="optional"/>
        <decimal name="LowLimitPx" id="1148" presence="optional"/>
        <decimal name="MinPriceIncrement" id="969" presence="optional"/>
        <decimal name="MinPriceIncrementAmount" id="1146" presence="optional"/>
        <decimal name="InitialMarginOnBuy" id="20002" presence="optional"/>
        <decimal name="InitialMarginOnSell" id="20000" presence="optional"/>
        <decimal name="InitialMarginSyntetic" id="20001" presence="optional"/>
        <string name="QuotationList" id="20005" presence="optional"/>
        <decimal name="TheorPrice" id="20006" presence="optional"/>
        <decimal name="TheorPriceLimit" id="20007" presence="optional"/>
        <sequence name="InstrumentLegs" presence="optional">
            <length name="NoLegs" id="555"/>
            <string name="LegSymbol" id="600"/>
            <uInt64 name="LegSecurityID" id="602"/>
            <decimal name="LegRatioQty" id="623"/>
        </sequence>
        <sequence name="InstrumentAttributes" presence="optional">
            <length name="NoInstrAttrib" id="870"/>
            <int32 name="InstrAttribType" id="871"/>
            <string name="InstrAttribValue" id="872"/>
        </sequence>
        <decimal name="UnderlyingQty" id="879" presence="optional"/>
        <string name="UnderlyingCurrency" id="318" presence="optional"/>
        <sequence name="EvntGrp" presence="optional">
            <length name="NoEvents" id="864"/>
            <int32 name="EventType" id="865"/>
            <uInt32 name="EventDate" id="866"/>
            <uInt64 name="EventTime" id="1145"/>
        </sequence>
        <!-- UTC Date Only YYYYMMDD -->
        <uInt32 name="MaturityDate" id="541" presence="optional"/>
        <!-- UTC Time. HHMMSSsss -->
        <uInt32 name="MaturityTime" id="1079" presence="optional"/>
        <int64 name="Flags" id="20008" presence="optional"/>
    </template>

    <template name="SecurityDefinitionUpdateReport" id="4">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="BP"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <!-- Unique among all instruments; primary key -->
        <uInt64 name="SecurityID" id="48"/>
        <uInt32 name="SecurityIDSource" id="22">
            <constant value="8"/>
        </uInt32>
        <decimal name="Volatility" id="5678" presence="optional"/>
        <decimal name="TheorPrice" id="20006" presence="optional"/>
        <decimal name="TheorPriceLimit" id="20007" presence="optional"/>
    </template>

    <template name="SecurityStatus" id="5">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="f"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <!-- Unique among all instruments; primary key -->
        <uInt64 name="SecurityID" id="48"/>
        <uInt32 name="SecurityIDSource" id="22">
            <constant value="8"/>
        </uInt32>
        <string name="Symbol" id="55"/>
        <uInt32 name="SecurityTradingStatus" id="326" presence="optional"/>
        <decimal name="HighLimitPx" id="1149" presence="optional"/>
        <decimal name="LowLimitPx" id="1148" presence="optional"/>
        <decimal name="InitialMarginOnBuy" id="20002" presence="optional"/>
        <decimal name="InitialMarginOnSell" id="20000" presence="optional"/>
        <decimal name="InitialMarginSyntetic" id="20001" presence="optional"/>
    </template>

    <template name="Heartbeat" id="6">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="0"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
    </template>

    <template name="SequenceReset" id="7">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="4"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <uInt32 name="NewSeqNo" id="36"/>
    </template>

    <template name="TradingSessionStatus" id="8">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="h"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <uInt64 name="TradSesOpenTime" id="342"/>
        <uInt64 name="TradSesCloseTime" id="344"/>
        <uInt64 name="TradSesIntermClearingStartTime" id="5840" presence="optional"/>
        <uInt64 name="TradSesIntermClearingEndTime" id="5841" presence="optional"/>
        <uInt32 name="TradingSessionID" id="336"/>
        <uInt32 name="ExchangeTradingSessionID" id="5842" presence="optional"/>
        <uInt32 name="TradSesStatus" id="340"/>
        <string name="MarketID" id="1301">
            <constant value="MOEX"/>
        </string>
        <string name="MarketSegmentID" id="1300"/>
        <int32 name="TradSesEvent" id="1368" presence="optional"/>
    </template>

    <template name="News" id="9">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="B"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <uInt32 name="LastFragment" id="893" presence="optional"/>
        <string name="NewsId" id="1472" presence="optional"/>
        <uInt64 name="OrigTime" id="42" presence="optional"/>
        <string name="LanguageCode" id="1474" presence="optional"/>
        <uInt32 name="Urgency" id="61" presence="optional"/>
        <string name="Headline" id="148" charset="unicode"/>
        <string name="MarketID" id="1301">
            <constant value="MOEX"/>
        </string>
        <string name="MarketSegmentID" id="1300" presence="optional"/>
        <sequence name="NewsText">
            <length name="NoLinesOfText" id="33"/>
            <string name="Text" id="58" charset="unicode"/>
        </sequence>
    </template>

    <template name="OrdersLogMessage" id="14">
        <string name="ApplVerID" id="1128">
          <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
          <constant value="X"/>
        </string>
        <string name="SenderCompID" id="49">
          <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <uInt32 name="LastFragment" id="893"/>
        <sequence name="MDEntries">
            <length name="NoMDEntries" id="268"/>
            <uInt32 name="MDUpdateAction" id="279"/>
            <string name="MDEntryType" id="269"/>
            <int64 name="MDEntryID" id="278" presence="optional"/>
            <uInt64 name="SecurityID" id="48" presence="optional"/>
            <uInt32 name="SecurityIDSource" id="22">
              <constant value="8"/>
            </uInt32>
            <uInt32 name="RptSeq" id="83" presence="optional"/>
            <uInt32 name="MDEntryDate" id="272" presence="optional"/>
            <uInt64 name="MDEntryTime" id="273"/>
            <decimal name="MDEntryPx" id="270" presence="optional"/>
            <int64 name="MDEntrySize" id="271" presence="optional"/>
            <decimal name="LastPx" id="31" presence="optional"/>
            <int64 name="LastQty" id="32" presence="optional"/>
            <int64 name="TradeID" id="1003" presence="optional"/>
            <uInt32 name="ExchangeTradingSessionID" id="5842" presence="optional"/>
            <int64 name="MDFlags" id="20017" presence="optional"/>
            <uInt64 name="Revision" id="20018" presence="optional"/>
        </sequence>
    </template>

    <template name="QuotesLogMessage" id="18">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="X"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <uInt32 name="LastFragment" id="893"/>
        <sequence name="MDEntries">
            <length name="NoMDEntries" id="268"/>
            <uInt32 name="MDUpdateAction" id="279"/>
            <string name="MDEntryType" id="269"/>
            <int64 name="MDEntryID" id="278" presence="optional"/>
            <uInt64 name="SecurityID" id="48" presence="optional"/>
            <uInt32 name="SecurityIDSource" id="22">
                <constant value="8"/>
            </uInt32>
            <uInt32 name="RptSeq" id="83" presence="optional"/>
            <uInt32 name="MDEntryDate" id="272" presence="optional"/>
            <uInt64 name="MDEntryTime" id="273"/>
            <decimal name="MDEntryPx" id="270" presence="optional"/>
            <int64 name="MDEntrySize" id="271" presence="optional"/>
            <decimal name="LastPx" id="31" presence="optional"/>
            <int64 name="LastQty" id="32" presence="optional"/>
            <int64 name="TradeID" id="1003" presence="optional"/>
            <uInt32 name="ExchangeTradingSessionID" id="5842" presence="optional"/>
            <int64 name="MDFlags" id="20017" presence="optional"/>
            <uInt64 name="Revision" id="20018" presence="optional"/>
            <uInt64 name="OrderID" id="37" presence="optional"/>
            <uInt64 name="TrdMatchID" id="880" presence="optional"/>
        </sequence>
    </template>

    <template name="BookMessage" id="15">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="W"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <uInt32 name="LastMsgSeqNumProcessed" id="369"/>
        <uInt32 name="RptSeq" id="83" presence="optional"/>
        <uInt32 name="LastFragment" id="893"/>
        <uInt32 name="RouteFirst" id="7944"/> 
        <uInt32 name="ExchangeTradingSessionID" id="5842"/>
        <uInt64 name="SecurityID" id="48" presence="optional"/>
        <uInt32 name="SecurityIDSource" id="22">
            <constant value="8"/>
        </uInt32>
        <sequence name="MDEntries">
            <length name="NoMDEntries" id="268"/>
            <string name="MDEntryType" id="269"/>
            <int64 name="MDEntryID" id="278" presence="optional"/>
            <uInt32 name="MDEntryDate" id="272" presence="optional"/>
            <uInt64 name="MDEntryTime" id="273"/>
            <decimal name="MDEntryPx" id="270" presence="optional"/>
            <int64 name="MDEntrySize" id="271" presence="optional"/>
            <int64 name="TradeID" id="1003" presence="optional"/>
            <int64 name="MDFlags" id="20017" presence="optional"/>
        </sequence>
    </template>

    <template name="Logon" id="1000">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="A"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
    </template>

    <template name="Logout" id="1001">
        <string name="ApplVerID" id="1128">
            <constant value="9"/>
        </string>
        <string name="MessageType" id="35">
            <constant value="5"/>
        </string>
        <string name="SenderCompID" id="49">
            <constant value="MOEX"/>
        </string>
        <uInt32 name="MsgSeqNum" id="34"/>
        <uInt64 name="SendingTime" id="52"/>
        <string name="Text" id="58" presence="optional"/>
    </template>

</templates>
