JayBeams
0.1
Another project to have fun coding.
|
This program reads a raw ITCH-5.0 file and generates the inside quotes in an ASCII (though potentially compressed) file. More...
#include <jb/itch5/generate_inside.hpp>
#include <jb/itch5/process_iostream.hpp>
#include <jb/fileio.hpp>
#include <jb/log.hpp>
#include <stdexcept>
#include <type_traits>
#include <unordered_map>
Go to the source code of this file.
Functions | |
template<typename book_type_t , typename cfg_book_t > | |
void | run_inside (config const &cfg, cfg_book_t const &cfg_book) |
Template function to refactor the usage of a book side type. More... | |
int | main (int argc, char *argv[]) |
This program reads a raw ITCH-5.0 file and generates the inside quotes in an ASCII (though potentially compressed) file.
The program also generates statistics about the feed and the book build, using jb::offline_feed_statistics.
It reports the percentiles of "for each change in the inside, how long did it take to process the event, and what was the elapsed time since the last change to the inside".
Definition in file itch5inside.cpp.
int main | ( | int | argc, |
char * | argv[] | ||
) |
if enable_array_based uses array_based_order_book type and the config built by the call's arguments
... uses map_based_order_book type and a default config
Definition at line 139 of file itch5inside.cpp.
References jb::usage::exit_status(), and jb::offline_feed_statistics::config::reporting_interval_seconds.
void run_inside | ( | config const & | cfg, |
cfg_book_t const & | cfg_book | ||
) |
Template function to refactor the usage of a book side type.
book_type_t | based order book type |
cfg_book_t | Defines the config type |
cfg | Application config object |
cfg_book | Book side config object |
Definition at line 65 of file itch5inside.cpp.
References jb::itch5::generate_inside(), jb::log::init(), JB_LOG, jb::open_input_file(), jb::open_output_file(), jb::offline_feed_statistics::print_csv_header(), jb::itch5::process_iostream(), jb::itch5::book_update::recvts, jb::itch5::book_update::stock, jb::itch5::message_header::timestamp, and jb::itch5::timestamp::ts.