JayBeams  0.1
Another project to have fun coding.
Classes | Namespaces | Functions
array_based_order_book.hpp File Reference
#include <jb/itch5/price_field.hpp>
#include <jb/itch5/price_levels.hpp>
#include <jb/itch5/quote_defaults.hpp>
#include <jb/assert_throw.hpp>
#include <jb/config_object.hpp>
#include <jb/feed_error.hpp>
#include <jb/log.hpp>
#include <algorithm>
#include <cmath>
#include <functional>
#include <map>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

class  jb::itch5::array_based_book_side< compare_t >
 Represent one side of the book. More...
 
struct  jb::itch5::array_based_order_book
 Define the types of buy and sell side classes. More...
 
class  jb::itch5::array_based_order_book::config
 Configure an array_based_order_book config object. More...
 
class  jb::itch5::array_based_book_side< compare_t >
 Represent one side of the book. More...
 
struct  jb::itch5::array_based_book_side< compare_t >::side< ordering, DUMMY >
 template specialization struct to handle differences between BUY and SELL version SELL side. More...
 
struct  jb::itch5::array_based_book_side< compare_t >::side< std::greater< std::size_t >, DUMMY >
 version BUY side More...
 

Namespaces

 jb
 The top-level namespace for the JayBeams library.
 
 jb::itch5
 Contains classes and functions to parse NASDAQ ITCH-5.0 messages, more information about ITCH-5.0 can be found at: http://www.nasdaqtrader.com/content/technicalsupport/specifications/dataproducts/NQTVITCHSpecification.pdf.
 
 jb::itch5::detail
 

Functions

void jb::itch5::detail::raise_invalid_operation_parameters (char const *operation, int qty, price4_t px)
 Raise the right exception when we detect invalid parameters for add_order() or reduce_order() More...
 
void jb::itch5::detail::validate_operation_params (char const *operation, int qty, price4_t px)
 Validate the input parameters for all array_order_book operations. More...
 
void jb::itch5::detail::raise_invalid_reduce (std::string const &msg, std::size_t tk_begin_top, std::size_t tk_inside, price4_t px, int book_qty, int qty)
 Raise an exception describing a invalid reduce operation. More...
 

Class Documentation

◆ jb::itch5::array_based_order_book

struct jb::itch5::array_based_order_book

Define the types of buy and sell side classes.

It is used as template parameter book_type of the template classes order_book and compute_book:

  • usage: jb::itch5::order_book<jb::itch5::array_based_order_book>

Definition at line 87 of file array_based_order_book.hpp.

Class Members
typedef array_based_book_side
< greater< size_t > >
buys_t
typedef array_based_book_side
< less< size_t > >
sells_t