Pre-release
This release is a pre-release and may not be stable for production use.
run-one
Tool for parsing matrix files, extracting actions and processing them according to user defined logic
How to setup environment and install dependencies
python -m venv $VENV_PATH
$VENV_PATH/bin/pip install -U pip setuptools
$VENV_PATH/bin/pip install poetry
$VENV_PATH/bin/poetry install -E th2
Note: -E th2 is optional and can be omitted if you don't need th2-related dependencies.
Config example (using th2 processor)
matrix_path: "matrix_case.csv" # path to matrix file or directory with matrices
filename_pattern: "*.matrix.csv" # matching pattern for files (can contain shell-style wildcards)
processed_actions: # which actions to process (action name to name of handler class)
send: "TH2ActHandler"
receive: "TH2Check1Handler"
store: "TH2EstoreHandler"
sleep: "SleepHandler"
actSsh: "TH2ActSSHHandler"
field_mapping: # mapping for field renaming (old name to new name)
TIF: "TimeInForce"
nested_fields: ["NoPartyIDs", "OrderQtyData", "Parties", "Instrument"] # which fields to convert to collections
fields_to_drop: # which fields to remove
["PreviousID", "Protocol", "CaseName", "Seq"]
fields_to_extract: # which fields to extract and keep as additional information
["Action", "MessageType", "Time", "User", "ID", "ExecutionAlias", "Direction", "Description"]
regenerate_id_fields: ["ClOrdID", "OrigClOrdID"] # ID-like fields to regenerate
regenerate_time_fields: ["TransactTime"] # Time-like fields to regenerate
processor_config: # processor config in free form
th2_configs: "th2_configs" # path to directory with th2 configs
root_event_name: 'run-one root event' # name of created root event
book: "test_book" # book name
scope: "test_script" # scope name
use_place_method: False # use th2 act place methods (True) or plain send (False)
key_fields: # mapping of key fields (message type to list of field names with support of nested fields) for th2-check1 request
ExecutionReport:
- "Side"
- "ClOrdID"
- "OrigClOrdID"
- Instrument:
- "Symbol"
fail_unexpected: "NO" # rule of failing the validation for th2-check1 request if any unexpected field received
ignore_fields: # mapping of fields (message type to list of field names) to be ignored in the th2-check1 rule validation
ExecutionReport:
- "header"
- "trailer"
sleep: 1 # delay between each action processing in seconds
matrix_delay: 5 # delay between each matrix processing in seconds
timestamp_shift: 1 # for how many seconds to the past make a shift for event timestamps
Metadata
Release files for run-one 1.2.9.dev10678046584
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| run_one-1.2.9.dev10678046584.tar.gz | 13.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| run_one-1.2.9.dev10678046584-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.0 kB
Release files / run_one-1.2.9.dev10678046584.tar.gz
| Download URL | run_one-1.2.9.dev10678046584.tar.gz |
|---|---|
| Size | 13.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3b572bb0dc5588c88e4d40d4a9d7795602c564907523edf705259ce7ac4d369e
|
|
BLAKE2b-256 checksum How to use checksums |
0935976bd9bb65c036562ca62e6f54a52d230bb1d27fa3b342b847148eb4c567
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.19
|
Release files / run_one-1.2.9.dev10678046584-py3-none-any.whl
| Download URL | run_one-1.2.9.dev10678046584-py3-none-any.whl |
|---|---|
| Size | 17.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f401ae6ee4b055e416bf508f5276dfc6f1f567d86d1422a48dc0919c8c5c8bba
|
|
BLAKE2b-256 checksum How to use checksums |
3d06ea8669084159dce16897c48eac937a9592ab81716d317206d2a5bf6acd91
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.19
|