trader
v0.1a
A framework to build trading applications
|
A bittrex processing connection. More...
#include <bittrexconnection.h>
Classes | |
struct | BittrexMarketData |
In-memory cache of marketdata. More... | |
struct | MarketDataRequestRetrievalData |
A market data request retrieval data. More... | |
Public Types | |
typedef std::unordered_map< std::string, BittrexMarketData > | SymIDMap |
Defines an alias representing the symbol identifier map. More... | |
typedef std::unordered_map< std::string, MarketDataRequestRetrievalData > | MarketDataUpdateMap |
Defines an alias representing the market data update map. More... | |
Public Member Functions | |
void | SecurityListRequest (Poco::AutoPtr< Interface::SecurityListRequestData > securityListRequestData) override |
[Client-Side] Get a list of securities that can be traded on the exchange. More... | |
void | MarketDataRequest (Poco::AutoPtr< Interface::MarketDataRequestData > marketDataRequestData) override |
[Client-Side] Subscribes the current session to a Market Data - Snapshot/Full Refresh followed by zero or more Market Data - Incremental Refresh messages. More... | |
void | NewOrderSingle (Poco::AutoPtr< Interface::NewOrderSingleData > newOrderSingleData) override |
[Client-Side] Submit a new order to exchange More... | |
void | OrderCancelRequest (Poco::AutoPtr< Interface::OrderCancelRequestData > orderCancelRequestData) override |
TODO: Documentation. More... | |
void | TradeCaptureReportRequest (Poco::AutoPtr< Interface::TradeCaptureReportRequestData > tradeCaptureReportRequestData) override |
TODO: Documentation. More... | |
void | SetConnectionId (const std::string &_connectionId) |
Sets connection identifier. More... | |
void | SetExchange (Bittrex *_exchange) |
Sets an exchange. More... | |
void | RunMore () |
Executes the more operation. More... | |
Public Member Functions inherited from trader::Interface::MessageReceivingConnection | |
void | ProcessMessage (Poco::AutoPtr< IMessageData > _messageData) |
virtual void | IOI (Poco::AutoPtr< IOIData > iOIData) override |
virtual void | Advertisement (Poco::AutoPtr< AdvertisementData > advertisementData) override |
virtual void | ExecutionReport (Poco::AutoPtr< ExecutionReportData > executionReportData) override |
virtual void | OrderCancelReject (Poco::AutoPtr< OrderCancelRejectData > orderCancelRejectData) override |
virtual void | News (Poco::AutoPtr< NewsData > newsData) override |
virtual void | Email (Poco::AutoPtr< EmailData > emailData) override |
virtual void | NewOrderSingle (Poco::AutoPtr< NewOrderSingleData > newOrderSingleData) override |
virtual void | NewOrderList (Poco::AutoPtr< NewOrderListData > newOrderListData) override |
virtual void | OrderCancelRequest (Poco::AutoPtr< OrderCancelRequestData > orderCancelRequestData) override |
virtual void | OrderCancelReplaceRequest (Poco::AutoPtr< OrderCancelReplaceRequestData > orderCancelReplaceRequestData) override |
virtual void | OrderStatusRequest (Poco::AutoPtr< OrderStatusRequestData > orderStatusRequestData) override |
virtual void | AllocationInstruction (Poco::AutoPtr< AllocationInstructionData > allocationInstructionData) override |
virtual void | ListCancelRequest (Poco::AutoPtr< ListCancelRequestData > listCancelRequestData) override |
virtual void | ListExecute (Poco::AutoPtr< ListExecuteData > listExecuteData) override |
virtual void | ListStatusRequest (Poco::AutoPtr< ListStatusRequestData > listStatusRequestData) override |
virtual void | ListStatus (Poco::AutoPtr< ListStatusData > listStatusData) override |
virtual void | AllocationInstructionAck (Poco::AutoPtr< AllocationInstructionAckData > allocationInstructionAckData) override |
virtual void | DontKnowTrade (Poco::AutoPtr< DontKnowTradeData > dontKnowTradeData) override |
virtual void | QuoteRequest (Poco::AutoPtr< QuoteRequestData > quoteRequestData) override |
virtual void | Quote (Poco::AutoPtr< QuoteData > quoteData) override |
virtual void | SettlementInstructions (Poco::AutoPtr< SettlementInstructionsData > settlementInstructionsData) override |
virtual void | MarketDataRequest (Poco::AutoPtr< MarketDataRequestData > marketDataRequestData) override |
virtual void | MarketDataSnapshotFullRefresh (Poco::AutoPtr< MarketDataSnapshotFullRefreshData > marketDataSnapshotFullRefreshData) override |
virtual void | MarketDataIncrementalRefresh (Poco::AutoPtr< MarketDataIncrementalRefreshData > marketDataIncrementalRefreshData) override |
virtual void | MarketDataRequestReject (Poco::AutoPtr< MarketDataRequestRejectData > marketDataRequestRejectData) override |
virtual void | QuoteCancel (Poco::AutoPtr< QuoteCancelData > quoteCancelData) override |
virtual void | QuoteStatusRequest (Poco::AutoPtr< QuoteStatusRequestData > quoteStatusRequestData) override |
virtual void | MassQuoteAcknowledgement (Poco::AutoPtr< MassQuoteAcknowledgementData > massQuoteAcknowledgementData) override |
virtual void | SecurityDefinitionRequest (Poco::AutoPtr< SecurityDefinitionRequestData > securityDefinitionRequestData) override |
virtual void | SecurityDefinition (Poco::AutoPtr< SecurityDefinitionData > securityDefinitionData) override |
virtual void | SecurityStatusRequest (Poco::AutoPtr< SecurityStatusRequestData > securityStatusRequestData) override |
virtual void | SecurityStatus (Poco::AutoPtr< SecurityStatusData > securityStatusData) override |
virtual void | TradingSessionStatusRequest (Poco::AutoPtr< TradingSessionStatusRequestData > tradingSessionStatusRequestData) override |
virtual void | TradingSessionStatus (Poco::AutoPtr< TradingSessionStatusData > tradingSessionStatusData) override |
virtual void | MassQuote (Poco::AutoPtr< MassQuoteData > massQuoteData) override |
virtual void | BusinessMessageReject (Poco::AutoPtr< BusinessMessageRejectData > businessMessageRejectData) override |
virtual void | BidRequest (Poco::AutoPtr< BidRequestData > bidRequestData) override |
virtual void | BidResponse (Poco::AutoPtr< BidResponseData > bidResponseData) override |
virtual void | ListStrikePrice (Poco::AutoPtr< ListStrikePriceData > listStrikePriceData) override |
virtual void | RegistrationInstructions (Poco::AutoPtr< RegistrationInstructionsData > registrationInstructionsData) override |
virtual void | RegistrationInstructionsResponse (Poco::AutoPtr< RegistrationInstructionsResponseData > registrationInstructionsResponseData) override |
virtual void | OrderMassCancelRequest (Poco::AutoPtr< OrderMassCancelRequestData > orderMassCancelRequestData) override |
virtual void | OrderMassCancelReport (Poco::AutoPtr< OrderMassCancelReportData > orderMassCancelReportData) override |
virtual void | NewOrderCross (Poco::AutoPtr< NewOrderCrossData > newOrderCrossData) override |
virtual void | CrossOrderCancelReplaceRequest (Poco::AutoPtr< CrossOrderCancelReplaceRequestData > crossOrderCancelReplaceRequestData) override |
virtual void | CrossOrderCancelRequest (Poco::AutoPtr< CrossOrderCancelRequestData > crossOrderCancelRequestData) override |
virtual void | SecurityTypeRequest (Poco::AutoPtr< SecurityTypeRequestData > securityTypeRequestData) override |
virtual void | SecurityTypes (Poco::AutoPtr< SecurityTypesData > securityTypesData) override |
virtual void | SecurityListRequest (Poco::AutoPtr< SecurityListRequestData > securityListRequestData) override |
virtual void | SecurityList (Poco::AutoPtr< SecurityListData > securityListData) override |
virtual void | DerivativeSecurityListRequest (Poco::AutoPtr< DerivativeSecurityListRequestData > derivativeSecurityListRequestData) override |
virtual void | DerivativeSecurityList (Poco::AutoPtr< DerivativeSecurityListData > derivativeSecurityListData) override |
virtual void | NewOrderMultileg (Poco::AutoPtr< NewOrderMultilegData > newOrderMultilegData) override |
virtual void | MultilegOrderCancelReplace (Poco::AutoPtr< MultilegOrderCancelReplaceData > multilegOrderCancelReplaceData) override |
virtual void | TradeCaptureReportRequest (Poco::AutoPtr< TradeCaptureReportRequestData > tradeCaptureReportRequestData) override |
virtual void | TradeCaptureReport (Poco::AutoPtr< TradeCaptureReportData > tradeCaptureReportData) override |
virtual void | OrderMassStatusRequest (Poco::AutoPtr< OrderMassStatusRequestData > orderMassStatusRequestData) override |
virtual void | QuoteRequestReject (Poco::AutoPtr< QuoteRequestRejectData > quoteRequestRejectData) override |
virtual void | RFQRequest (Poco::AutoPtr< RFQRequestData > rFQRequestData) override |
virtual void | QuoteStatusReport (Poco::AutoPtr< QuoteStatusReportData > quoteStatusReportData) override |
virtual void | QuoteResponse (Poco::AutoPtr< QuoteResponseData > quoteResponseData) override |
virtual void | Confirmation (Poco::AutoPtr< ConfirmationData > confirmationData) override |
virtual void | PositionMaintenanceRequest (Poco::AutoPtr< PositionMaintenanceRequestData > positionMaintenanceRequestData) override |
virtual void | PositionMaintenanceReport (Poco::AutoPtr< PositionMaintenanceReportData > positionMaintenanceReportData) override |
virtual void | RequestForPositions (Poco::AutoPtr< RequestForPositionsData > requestForPositionsData) override |
virtual void | RequestForPositionsAck (Poco::AutoPtr< RequestForPositionsAckData > requestForPositionsAckData) override |
virtual void | PositionReport (Poco::AutoPtr< PositionReportData > positionReportData) override |
virtual void | TradeCaptureReportRequestAck (Poco::AutoPtr< TradeCaptureReportRequestAckData > tradeCaptureReportRequestAckData) override |
virtual void | TradeCaptureReportAck (Poco::AutoPtr< TradeCaptureReportAckData > tradeCaptureReportAckData) override |
virtual void | AllocationReport (Poco::AutoPtr< AllocationReportData > allocationReportData) override |
virtual void | AllocationReportAck (Poco::AutoPtr< AllocationReportAckData > allocationReportAckData) override |
virtual void | ConfirmationAck (Poco::AutoPtr< ConfirmationAckData > confirmationAckData) override |
virtual void | SettlementInstructionRequest (Poco::AutoPtr< SettlementInstructionRequestData > settlementInstructionRequestData) override |
virtual void | AssignmentReport (Poco::AutoPtr< AssignmentReportData > assignmentReportData) override |
virtual void | CollateralRequest (Poco::AutoPtr< CollateralRequestData > collateralRequestData) override |
virtual void | CollateralAssignment (Poco::AutoPtr< CollateralAssignmentData > collateralAssignmentData) override |
virtual void | CollateralResponse (Poco::AutoPtr< CollateralResponseData > collateralResponseData) override |
virtual void | CollateralReport (Poco::AutoPtr< CollateralReportData > collateralReportData) override |
virtual void | CollateralInquiry (Poco::AutoPtr< CollateralInquiryData > collateralInquiryData) override |
virtual void | NetworkCounterpartySystemStatusRequest (Poco::AutoPtr< NetworkCounterpartySystemStatusRequestData > networkCounterpartySystemStatusRequestData) override |
virtual void | NetworkCounterpartySystemStatusResponse (Poco::AutoPtr< NetworkCounterpartySystemStatusResponseData > networkCounterpartySystemStatusResponseData) override |
virtual void | UserRequest (Poco::AutoPtr< UserRequestData > userRequestData) override |
virtual void | UserResponse (Poco::AutoPtr< UserResponseData > userResponseData) override |
virtual void | CollateralInquiryAck (Poco::AutoPtr< CollateralInquiryAckData > collateralInquiryAckData) override |
virtual void | ConfirmationRequest (Poco::AutoPtr< ConfirmationRequestData > confirmationRequestData) override |
virtual void | ContraryIntentionReport (Poco::AutoPtr< ContraryIntentionReportData > contraryIntentionReportData) override |
virtual void | SecurityDefinitionUpdateReport (Poco::AutoPtr< SecurityDefinitionUpdateReportData > securityDefinitionUpdateReportData) override |
virtual void | SecurityListUpdateReport (Poco::AutoPtr< SecurityListUpdateReportData > securityListUpdateReportData) override |
virtual void | AdjustedPositionReport (Poco::AutoPtr< AdjustedPositionReportData > adjustedPositionReportData) override |
virtual void | AllocationInstructionAlert (Poco::AutoPtr< AllocationInstructionAlertData > allocationInstructionAlertData) override |
virtual void | ExecutionAcknowledgement (Poco::AutoPtr< ExecutionAcknowledgementData > executionAcknowledgementData) override |
virtual void | TradingSessionList (Poco::AutoPtr< TradingSessionListData > tradingSessionListData) override |
virtual void | TradingSessionListRequest (Poco::AutoPtr< TradingSessionListRequestData > tradingSessionListRequestData) override |
virtual void | SettlementObligationReport (Poco::AutoPtr< SettlementObligationReportData > settlementObligationReportData) override |
virtual void | DerivativeSecurityListUpdateReport (Poco::AutoPtr< DerivativeSecurityListUpdateReportData > derivativeSecurityListUpdateReportData) override |
virtual void | TradingSessionListUpdateReport (Poco::AutoPtr< TradingSessionListUpdateReportData > tradingSessionListUpdateReportData) override |
virtual void | MarketDefinitionRequest (Poco::AutoPtr< MarketDefinitionRequestData > marketDefinitionRequestData) override |
virtual void | MarketDefinition (Poco::AutoPtr< MarketDefinitionData > marketDefinitionData) override |
virtual void | MarketDefinitionUpdateReport (Poco::AutoPtr< MarketDefinitionUpdateReportData > marketDefinitionUpdateReportData) override |
virtual void | ApplicationMessageRequest (Poco::AutoPtr< ApplicationMessageRequestData > applicationMessageRequestData) override |
virtual void | ApplicationMessageRequestAck (Poco::AutoPtr< ApplicationMessageRequestAckData > applicationMessageRequestAckData) override |
virtual void | ApplicationMessageReport (Poco::AutoPtr< ApplicationMessageReportData > applicationMessageReportData) override |
virtual void | OrderMassActionReport (Poco::AutoPtr< OrderMassActionReportData > orderMassActionReportData) override |
virtual void | OrderMassActionRequest (Poco::AutoPtr< OrderMassActionRequestData > orderMassActionRequestData) override |
virtual void | UserNotification (Poco::AutoPtr< UserNotificationData > userNotificationData) override |
virtual void | StreamAssignmentRequest (Poco::AutoPtr< StreamAssignmentRequestData > streamAssignmentRequestData) override |
virtual void | StreamAssignmentReport (Poco::AutoPtr< StreamAssignmentReportData > streamAssignmentReportData) override |
virtual void | StreamAssignmentReportACK (Poco::AutoPtr< StreamAssignmentReportACKData > streamAssignmentReportACKData) override |
void | DoOperation (Poco::Int32 operation) |
Public Member Functions inherited from trader::Interface::Connection | |
virtual void | SetReceivingConnection (Poco::AutoPtr< Connection > _connection) |
virtual void | SetName (const std::string &_name) |
virtual const std::string & | GetName () const |
Public Attributes | |
Bittrex * | exchange |
std::string | connectionId |
SymIDMap | marketToTradeHistoryMap |
The market to trade history map. | |
MarketDataUpdateMap | marketDataUpdateMap |
The market data update map. | |
Public Attributes inherited from trader::Interface::Connection | |
Poco::AutoPtr< Connection > | receivingConnection |
std::string | name |
A bittrex processing connection.
typedef std::unordered_map< std::string, MarketDataRequestRetrievalData > trader::BittrexProcessingConnection::MarketDataUpdateMap |
Defines an alias representing the market data update map.
typedef std::unordered_map< std::string, BittrexMarketData > trader::BittrexProcessingConnection::SymIDMap |
Defines an alias representing the symbol identifier map.
|
override |
[Client-Side] Subscribes the current session to a Market Data - Snapshot/Full Refresh followed by zero or more Market Data - Incremental Refresh messages.
Market data request.
marketDataRequestData | Market Data Request Params |
marketDataRequestData.MDReqID | Unique identifier of the market data request.Uniqueness must be guaranteed by the institution for the duration of the connection to the market data channel. |
marketDataRequestData.SubscriptionRequestType | Indicates what type of response is expected. Valid Value: 1 = Snapshot + Updates(Subscribe) |
marketDataRequestData.MarketDepth | Depth of the book to receive snapshot and updates for. |
Valid Value: 0 = Full Book, 1 = Top of Book
marketDataRequestData.NoMDEntryTypes | Number of MDEntryType fields requested |
marketDataRequestData.MDEntryType | Type of market data entry to receive snapshots and updates for. |
Valid values : 0 = Bid 1 = Offer 2 = Trade Q = Auction Clearing Price
marketDataRequestData.NoRelatedSym | Number of symbols requested. |
marketDataRequestData.Symbol | Market data symbol requested. Valid Values : See Security List for a list of supported symbols. |
marketDataRequestData | Information describing the market data request. |
|
override |
[Client-Side] Submit a new order to exchange
Creates a new order single.
newOrderSingleData | New Order Single Data Params |
newOrderSingleData.ClOrdID | Unique identifier of the order as assigned by the institution. Uniqueness must be guaranteed by the institution for the duration of the connection to the order entry channel. |
newOrderSingleData.ExecInst | [Optional]Specifies that an order should be Maker-or-Cancel, TimeInForce must be 1 (Good Till Cancel) Valid Value: 6 = Participate don't initiate (maker-or-cancel) |
newOrderSingleData.OrderQty | Decimal amount of security to purchase. Full quantity will be visible on the book. |
newOrderSingleData.OrdType | Order Type, Valid Value: 2 = Limit |
newOrderSingleData.Price | [Optional]Decimal amount of USD to spend per Security. |
Price is required when OrdTyp is 2 = Limit.
newOrderSingleData.Side | Side of the order. Valid Value: 1 = Buy, 2 = Sell |
newOrderSingleData.Symbol | Market data symbol requested. Valid Values : See Security List for a list of supported symbols. |
newOrderSingleData.TimeInForce | Specifies how long the order remains in effect. Use 7 (At the close) for Auction orders Valid Values : 1 = Good Till Cancel (GTC) 3 = Immediate Or Cancel (IOC) |
newOrderSingleData.TransactTime | Time of order creation(expressed in UTC). |
newOrderSingleData | Information describing the new order single. |
|
override |
TODO: Documentation.
Order cancel request.
orderCancelRequestData | Information describing the order cancel request. |
void trader::BittrexProcessingConnection::RunMore | ( | ) |
Executes the more operation.
|
override |
[Client-Side] Get a list of securities that can be traded on the exchange.
Security list request.
securityListRequestData | Request Data |
securityListRequestData.SecurityReqID | Unique identifier of this request. |
securityListRequestData | Information describing the security list request. |
|
inline |
Sets connection identifier.
_connectionId | Identifier for the connection. |
|
inline |
Sets an exchange.
_exchange | [in,out] If non-null, the exchange. |
|
override |
TODO: Documentation.
tradeCaptureReportRequestData | Information describing the trade capture report request. |