Samples

Common Select Statements

Please note that statements, column names, and field values are case-insensitive.

Account

  • SELECT * FROM ACCOUNT
  • SELECT Account,Name FROM ACCOUNT
  • SELECT Account,Name FROM ACCOUNT WHERE Account IN [‘1001[Demo]', ‘1002[Demo]']

Balance

  • SELECT * FROM BALANCE
  • SELECT Type,Amount FROM BALANCE WHERE Account = ‘1001[Demo]’

Holding

  • SELECT * FROM Holding
  • SELECT Code,Exchange,TotalAvailable FROM HOLDING WHERE Account = ‘1001[Demo]’

Order

  • SELECT Account,OrderId,Symbol,Exchange,Side,Status,Type,VisibleQuantity,LimitPrice,Validity FROM ORDER WHERE Account = ‘1001[Demo]’
  • SELECT * FROM ORDER WHERE OrderId = ‘20200306990’

OrderStatus

  • SELECT Code FROM ORDERSTATUS WHERE Provider = ‘Malacca[Demo]’

Transaction

  • SELECT * FROM TRANSACTION WHERE Symbol = ‘1015’ AND TradingMarket = ‘MYX[DEMO]’

News

  • SELECT * FROM NEWS WHERE SymbolCodes = ‘1015 3395’

NewsSources

  • select * from NewsSources

ChartHistory

  • SELECT * FROM CHARTHISTORY WHERE SymbolCode = ‘1015.MYX[Demo]’

Depth

  • SELECT * FROM DEPTH WHERE SymbolCode = ‘3395.MYX[Demo]’

DepthLevel

  • SELECT * FROM DEPTHLEVEL WHERE SymbolCode = ‘3395.MYX[Demo]’

Market

  • SELECT Market FROM MARKET

Security

  • SELECT Code,Exchange,Name FROM SECURITY WHERE SymbolCode = ‘3395.MYX[Demo]’
  • select Code,Exchange,Name from Security where SymbolCode IN [‘3395.MYX[Demo]',‘1015.MYX[Demo]']

Symbol

  • SELECT * FROM SYMBOL WHERE Code BEGINS ‘100’
  • SELECT Code,Name FROM SYMBOL WHERE Name CONTAINS ‘RED’

Trade

  • SELECT Quantity,Price,TradedAt,Flags FROM TRADE WHERE SymbolCode = ‘3395.MYX[Demo]’

TradingState

  • SELECT Market,Name,Reason FROM TradingState

CatalogueField

  • SELECT * FROM CatalogueField WHERE TableName = ‘SECURITY’

CatalogueTable

  • SELECT * FROM CatalogueTable

Common Insert Statements

For New and Amend order there exists a Verify function. This carries out a “what if” scenario by only partially executing the request and returning any possible errors discovered. The parameters are exactly the same for the Verify and the Request.

RequestId’s need to be unique over time. If you supply one then we suggest using a GUID. If you don’t specify one then one will be allocated automatically.

NewOrderRequest & NewOrderVerify

  • INSERT INTO NewOrderRequest (Exchange,TradingMarket,AccountCode,SymbolCode,LimitPrice,Side,Type,VisibleQuantity,Validity) VALUES (‘MYX[Demo]',‘MYX::NM[Demo]',‘1001[Demo]',‘3395.MYX[Demo]',0.13,‘Bid’,'Limit',200,‘UntilCancel’)
  • INSERT INTO NewOrderRequest (Exchange,TradingMarket,AccountCode,SymbolCode,Side,Type,VisibleQuantity,Validity) VALUES (‘MYX[Demo]',‘MYX::NM[Demo]',‘1002[Demo]',‘0012.MYX[Demo]',‘Bid’,'Market',100,‘UntilCancel’)

AmendOrderRequest & AmendOrderVerify

  • INSERT INTO AmendOrderRequest (AccountCode,OrderId,LimitPrice) VALUES (‘1001[Demo]',‘20200310434’,0.12)
  • INSERT INTO AmendOrderRequest (AccountCode,OrderId,LimitPrice,VisibleQuantity) VALUES (‘1001[Demo]',‘20200310434’,0.11,800)

CancelOrderRequest

  • INSERT INTO CancelOrderRequest (AccountCode,OrderId) VALUES (‘1001[Demo]',‘20200310434’)