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
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| run_one-1.2.9.tar.gz | 13.3 kB | Without provenance | Details for run_one-1.2.9.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| run_one-1.2.9-py3-none-any.whl | Python 3 | none | any | Details for run_one-1.2.9-py3-none-any.whl |
Total release size: 30.8 kB
Release files / run_one-1.2.9.tar.gz
| Download URL | run_one-1.2.9.tar.gz |
|---|---|
| Size | 13.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
01d2adb9f3206ff6ba6e32cd60dff1ce99c6ee6273a8ac0b71efcd5b09093666
|
|
BLAKE2b-256 checksum How to use checksums |
8883bdf47fdb294ca1ed74573cf17de2943fea67e940f238e3f56e5920950cc6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.12.2
|
Release files / run_one-1.2.9-py3-none-any.whl
| Download URL | run_one-1.2.9-py3-none-any.whl |
|---|---|
| Size | 17.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e88c8f17f1970d9803dab6136a5ec57e565bf1376a56ed2d3646eafb49ab3ee4
|
|
BLAKE2b-256 checksum How to use checksums |
95521ac1501e32d35abb75f9cde1a8700421213ea161c1fe5767515ae6ebb9a4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.12.2
|
Security for run-one 1.2.9
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.