MotifXL

Microsoft Excel is a very popular tool for traders, advisers, researchers and brokers. This spreadsheet program has many uses in this field including:

  • Prototyping trading strategies and generating buy/sell signals.
  • Recording portfolios and other registies
  • Communicating lists of buy/sell orders.
  • Supporting internal workflows

The attractiveness of Excel is that is both powerful and well understood by a the above group of people. In addition, it supports add-ins which extend the capabilities of Excel and has a powerful internal development environment, (VBA) which allows it to be customised for specific applications.

MotifXL is an Excel add-in which incorporates our Websocket API and IQ API into Excel. This add-in gives Excel access to real-time security data from Motionite. In addition, snapshots of market data and trading data can be retrieved into spreadsheets. It also allows order requests to be directly sent to the market.

MotifXL makes this capabilities available in the following 2 ways:

  • It has a RTD server which allows a spreadsheet cell to show any field from a security. To display this data in a cell, simply enter a RTD formula into the cell. The RTD formula has the following parameters:
    =RTD("motifxl.rtdserver",,"Security","xyz","Last")
    This cell will display the bid price for the security xyz. The cell will update whenever the bid price changes. For example:
=RTD("motifxl.rtdserver",,"Security","1015.MYX[Demo]","Last")
  • The add-in provides a access to the MotifXL.IQServer library. This library allows Excel VBA scripts to be developed to both access data and place order requests. Data is retrieved or orders placed with commands using our IQ Language. This is a SQL like language which is can be intuitively used. Below is a snippet of code below demonstrates how the library can be used to retrieve security data. (Note that this will return a snapshot whereas RTD will provide dynamic updates in Excel.)
    Set IQ = CreateObject("MotifXL.IQServer")
    Command = "select * from security where SymbolCode = '1015.MYX[Demo]'"
    IQ.ExecuteIQCommand (Command)
    ColCount = IQ.GetColumnCount()
    For Col = 1 To ColCount
        Cells(1, Col) = IQ.GetFieldByIndex(1, Col)
    Next Col

MotifXL opens up huge potential for traders and researchers familiar with Excel and can greatly assist with workflows for advisers and brokerages.

More information