Bookmap Knowledge Base

Bookmap Knowledge Base

  • User guide
  • Addons
  • Java API
  • JavaScript API

›9. Appendices

1. Introduction to Bookmap

  • Welcome
  • Bookmap® Connectivity
  • Software Versions
  • Bookmap System Requirements

2. Getting Started

  • Register And Download Bookmap
  • Visit Bookmap Portal
  • Enter Your License Key
  • Select A Run Mode
  • Connect To A Broker Or A Data Provider
  • Install An Adapter
  • Connect To Own Data Source
  • Subscribe To An Instrument
  • Open The Main Window
  • Activate Bookmap Offline

3. Setting Up & Operating Bookmap

  • Tabs
  • Heatmap. Main Chart
  • Columns

4. Trading

  • Trading with Bookmap
  • Order Types
  • Orders Management
  • Cross-Instrument Trading
  • Trading Configuration Panel
  • Trading from DOM
  • Cross Trading

5. Indicators

  • Display And Settings
  • Cumulative Volume Delta
  • Large Lot Tracker
  • Imbalance Indicators
  • Strength Level Indicator
  • Correlation Tracker

6. Strategies

  • Automated Strategies
  • Automated Strategies FAQ

7. Help

  • Bookmap Basics FAQ
  • Bookmap Marketplace FAQ
  • Bookmap Performance FAQ
  • MBO Bundle Installation Guide
  • MBO Bundle FAQ
  • Glossary
  • Release Notes

8. Errors

  • General Errors And Crashes
  • Performance Issues
  • dxFeed Data And Backfill Data Issues
  • Rithmic Issues
  • Other Issues

9. Appendices

  • Appendix I. Keyboard Hotkeys
  • Appendix II. Custom Notes
  • Appendix III. Special Orders
  • Appendix IV. Orders Format
  • Appendix V. Colour Value Names

Appendix IV. Orders Format

Bookmap allows recording and replaying users’ orders with all the events that occur during each order's lifetime. Like the market data, orders files are stored by Bookmap in the C:\Bookmap\Feeds folder in an encrypted format, named as '*bmo', and are automatically replayed with corresponding market data. Traders can also export and import orders files in human-readable format, which implies that such files can be edited or even generated from scratch (e.g., from an external simulation software). This page describes the format of the file.

Human-readable orders files

Orders files can be exported via File >> Export >> Export orders as plain text. The files may contain lines with comments starting with '#'. Each line except the header and comments represents a particular event of a particular order where the type of the event is represented by a single letter as shown below.

Exported Order Data Example

Here is a simple scenario that includes three orders and shows a corresponding text file. For simplicity, in this example, there is only one working order at a time.

screenshot

!BOOKMAP_FORMAT_V1
!DO_NOT_UPDATE_AFTER_EXECUTION
S,20180817,132604,0.278443826,1105671107,ESU8.CME@RITHMIC,1,2837.0,2
C,20180817,132606,0.660462608,1105671107
S,20180817,132608,0.448465391,1105671108,ESU8.CME@RITHMIC,0,2838.0,2
E,20180817,132609,0.385849739,1105671108,2838.0,2
F,20180817,132609,0.386520348,1105671108
S,20180817,132612,0.325328,1105671115,ESU8.CME@RITHMIC,1,2837.25,2
U,20180817,132614,0.282056116,1105671115,2837.5,2
U,20180817,132617,0.837655884,1105671115,2837.75,2
U,20180817,132621,0.738012058,1105671115,2838.25,2
U,20180817,132625,0.130369159,1105671115,2838.5,2
E,20180817,132625,0.130665043,1105671115,2838.5,2
F,20180817,132625,0.130980406,1105671115

File header

The header is needed for internal use to allow backwards compatibility in case the format changes in the future.

!BOOKMAP_FORMAT_V1
!DO_NOT_UPDATE_AFTER_EXECUTION

Timestamps

Each line has a timestamp represented by three fields: date, hours in UTC timezone, and subseconds. For instance, here it's 17-Aug-2018 13:26:04, 278 milliseconds, 443 microseconds, 826 nanoseconds. The subseconds field can be anything in the range [0,1).

<date>,<time>,<subsecond>
20180817,132604,0.278443826

Send order message

The first event for any order is always called ‘Send Order’, which starts with S and includes the order's properties and its unique Order ID. This ID will be used for referencing the order during its lifetime:

S,<date>,<time>,<subsecond>,<order id>,<instrument alias>,<bid(1) or ask(0)>,<price>,<size>
S,20180817,132604,0.278443826,1105671107,ESU8.CME@RITHMIC,1,2837.0,2

Update order

An update order event starts with U and appears when price and / or size of the order are modified:

U,<date>,<time>,<subsecond>,<order id>,<new price>,<new size>
U,20180817,132621,0.738012058,1105671115,2838.25,2

Cancel order

A cancel order event starts with C:

C,<date>,<time>,<subsecond>,<order id>
C,20180817,132606,0.660462608,1105671107

Execution

Full or partial execution events start with E and tell at what price and how much of the order was executed:

E,<date>,<time>,<subsecond>,<order id>,<price>,<size>
E,20180817,132625,0.130665043,1105671115,2838.5,2

Fill

A fill event (F) allows to mark an order as filled (it will be displayed as 0 size by some versions):

F,<date>,<time>,<subsecond>,<order id>
F,20180817,132625,0.130980406,1105671115;
← Appendix III. Special OrdersAppendix V. Colour Value Names →
  • Human-readable orders files
  • Exported Order Data Example
  • File header
  • Timestamps
  • Send order message
  • Update order
  • Cancel order
  • Execution
  • Fill
Bookmap Knowledge Base
RESOURCES
Main PageForumBlog
Tutorials
Video TutorialsWebinar Recordings
Social
Bookmap Knowledge BaseBookmap Knowledge BaseBookmap Knowledge BaseBookmap Knowledge BaseBookmap Knowledge BaseBookmap Knowledge Base
Copyright © 2021 Bookmap Ltd