onetick-py 1.180.0__tar.gz → 1.181.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {onetick_py-1.180.0/src/onetick_py.egg-info → onetick_py-1.181.0}/PKG-INFO +1 -1
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/_version.py +1 -1
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/joins.py +25 -6
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/tmp_otq.py +29 -1
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/source.py +9 -2
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/symbols.py +132 -71
- {onetick_py-1.180.0 → onetick_py-1.181.0/src/onetick_py.egg-info}/PKG-INFO +1 -1
- {onetick_py-1.180.0 → onetick_py-1.181.0}/LICENSE +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/README.md +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/pyproject.toml +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/requirements.strict.txt +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/requirements.txt +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/setup.cfg +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/setup.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/locator_parser/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/locator_parser/acl.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/locator_parser/actions.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/locator_parser/common.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/locator_parser/io.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/locator_parser/locator.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/doc_utilities/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/doc_utilities/napoleon.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/doc_utilities/ot_doctest.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/doc_utilities/snippets.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/lib/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/lib/instance.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/_stack_info.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/aggregations/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/aggregations/_base.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/aggregations/_docs.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/aggregations/compute.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/aggregations/functions.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/aggregations/generic.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/aggregations/high_low.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/aggregations/num_distinct.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/aggregations/order_book.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/aggregations/other.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/backports.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/cache.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/callback/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/callback/callback.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/callback/callbacks.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/compatibility.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/configuration.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_csv_inspector.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_manually_bound_value.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_nodes_history.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_op_utils/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_op_utils/every_operand.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_op_utils/is_const.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_per_tick_scripts/tick_list_sort_template.script +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_proxy_node.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_state_objects.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_state_vars.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/_symbol_param.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/schema.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/aggregations.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/applyers.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/columns.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/data_quality.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/debugs.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/drops.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/fields.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/filters.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/merges.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/misc.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/pandases.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/renames.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/sorts.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/switches.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/symbols.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/times.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/writes.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/symbol.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/_methods/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/_methods/_internal.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/_methods/conversions.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/_methods/methods.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/_methods/op_types.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/accessors/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/accessors/_accessor.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/accessors/decimal_accessor.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/accessors/dt_accessor.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/accessors/float_accessor.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/accessors/str_accessor.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/base.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/cut_builder.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/db_constants.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/eval_query.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/lambda_object.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/multi_output_source.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/per_tick_script.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/query_inspector.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/db/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/db/_inspection.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/db/db.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/db/utils.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/docs/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/docs/docstring_parser.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/docs/utils.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/functions.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/license.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/log.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/math.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/misc.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/oqd/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/oqd/eps.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/oqd/sources.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/otq.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/pyomd_mock.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/run.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/servers.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/session.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/cache.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/common.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/csv.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/custom.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/data_file.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/data_source.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/dataframe.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/empty.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/odbc.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/order_book.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/parquet.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/pit.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/query.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/snapshots.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/split_query_output_by_symbol.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/symbology_mapping.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/ticks.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sql.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/state.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/types.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/__init__.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/acl.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/config.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/debug.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/default.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/file.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/helpers.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/locator.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/perf.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/query.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/render.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/render_cli.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/script.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/temp.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/types.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/utils/tz.py +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick_py.egg-info/SOURCES.txt +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick_py.egg-info/dependency_links.txt +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick_py.egg-info/entry_points.txt +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick_py.egg-info/requires.txt +0 -0
- {onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick_py.egg-info/top_level.txt +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
# This file was generated automatically. DO NOT CHANGE.
|
|
2
|
-
VERSION = '1.
|
|
2
|
+
VERSION = '1.181.0'
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/joins.py
RENAMED
|
@@ -544,6 +544,8 @@ def join_with_query(
|
|
|
544
544
|
default_fields_for_outer_join=None,
|
|
545
545
|
symbol_time=None,
|
|
546
546
|
concurrency=None,
|
|
547
|
+
batch_size=None,
|
|
548
|
+
shared_thread_count=None,
|
|
547
549
|
process_query_async: bool = True,
|
|
548
550
|
**kwargs,
|
|
549
551
|
) -> 'Source':
|
|
@@ -621,7 +623,12 @@ def join_with_query(
|
|
|
621
623
|
symbol_time : :py:class:`otp.datetime <onetick.py.datetime>`, :py:class:`otp.Operation <onetick.py.Operation>`
|
|
622
624
|
Time that will be used by Onetick to map the symbol with which ``query`` is executed to the reference data.
|
|
623
625
|
This parameter is only necessary if the query is expected to perform symbology conversions.
|
|
624
|
-
concurrency
|
|
626
|
+
concurrency: int
|
|
627
|
+
Specifies concurrency for the joined ``query`` execution.
|
|
628
|
+
Default is 1 (no concurrency).
|
|
629
|
+
batch_size: int
|
|
630
|
+
Specifies batch size for the joined ``query`` execution. Default is 0.
|
|
631
|
+
shared_thread_count: int
|
|
625
632
|
Specifies number of threads for asynchronous processing of ``query`` per unbound symbol list.
|
|
626
633
|
By default, the number of threads is 1.
|
|
627
634
|
process_query_async: bool
|
|
@@ -904,11 +911,23 @@ def join_with_query(
|
|
|
904
911
|
columns.update(self._get_columns_with_prefix(sub_source, prefix))
|
|
905
912
|
columns.update(self.columns(skip_meta_fields=True))
|
|
906
913
|
|
|
914
|
+
otq_properties = {}
|
|
915
|
+
if concurrency is not None:
|
|
916
|
+
if not isinstance(concurrency, int) or concurrency <= 0:
|
|
917
|
+
raise ValueError(f"Parameter 'concurrency' should be a positive integer, got {concurrency}")
|
|
918
|
+
otq_properties['concurrency'] = concurrency
|
|
919
|
+
|
|
920
|
+
if batch_size is not None:
|
|
921
|
+
if not isinstance(batch_size, int) or batch_size < 0:
|
|
922
|
+
raise ValueError(f"Parameter 'batch_size' should be a non-negative integer, got {batch_size}")
|
|
923
|
+
otq_properties['batch_size'] = batch_size
|
|
924
|
+
|
|
907
925
|
res = self.copy(columns=columns)
|
|
908
926
|
|
|
909
927
|
res._merge_tmp_otq(sub_source)
|
|
910
928
|
query_name = sub_source._store_in_tmp_otq(
|
|
911
|
-
res._tmp_otq, symbols='_NON_EXISTING_SYMBOL_', operation_suffix="join_with_query"
|
|
929
|
+
res._tmp_otq, symbols='_NON_EXISTING_SYMBOL_', operation_suffix="join_with_query",
|
|
930
|
+
**otq_properties,
|
|
912
931
|
) # TODO: combine with _convert_symbol_to_string
|
|
913
932
|
# ------------------------------------ #
|
|
914
933
|
|
|
@@ -928,10 +947,10 @@ def join_with_query(
|
|
|
928
947
|
default_fields_for_outer_join=default_fields_for_outer_join_str,
|
|
929
948
|
process_query_asynchronously=process_query_async,
|
|
930
949
|
)
|
|
931
|
-
if
|
|
932
|
-
if not isinstance(
|
|
933
|
-
raise ValueError('
|
|
934
|
-
join_params['shared_thread_count'] =
|
|
950
|
+
if shared_thread_count is not None:
|
|
951
|
+
if not isinstance(shared_thread_count, int) or shared_thread_count <= 0:
|
|
952
|
+
raise ValueError("Parameter 'shared_thread_count' should be a positive integer")
|
|
953
|
+
join_params['shared_thread_count'] = shared_thread_count
|
|
935
954
|
|
|
936
955
|
start_time = kwargs.get('start_time', start)
|
|
937
956
|
end_time = kwargs.get('end_time', end)
|
|
@@ -63,6 +63,14 @@ class TmpOtq:
|
|
|
63
63
|
def __init__(self):
|
|
64
64
|
self.queries = {}
|
|
65
65
|
|
|
66
|
+
def __check_params(self, params):
|
|
67
|
+
supported_query_parameters = ('running_query_flag', 'symbol_date', 'concurrency', 'batch_size')
|
|
68
|
+
for param in params:
|
|
69
|
+
if param not in supported_query_parameters:
|
|
70
|
+
raise ValueError(
|
|
71
|
+
f"Query parameter '{param}' is not one of the supported parameters: {supported_query_parameters}"
|
|
72
|
+
)
|
|
73
|
+
|
|
66
74
|
def add_query(self, query, suffix="", name=None, params=None):
|
|
67
75
|
"""
|
|
68
76
|
Adds query with a unique generated name to the storage.
|
|
@@ -89,6 +97,7 @@ class TmpOtq:
|
|
|
89
97
|
raise ValueError(f"There is already a query with name '{name}' in {self.__class__.__name__} storage")
|
|
90
98
|
if params is None:
|
|
91
99
|
params = {}
|
|
100
|
+
self.__check_params(params)
|
|
92
101
|
self.queries[name] = (query, params)
|
|
93
102
|
return name
|
|
94
103
|
|
|
@@ -119,7 +128,9 @@ class TmpOtq:
|
|
|
119
128
|
def save_to_file(self, query=None, query_name="main_query", file_path=None, file_suffix="",
|
|
120
129
|
start=None, end=None, start_time_expression=None, end_time_expression=None, timezone=None,
|
|
121
130
|
running_query_flag=None,
|
|
122
|
-
symbol_date=None
|
|
131
|
+
symbol_date=None,
|
|
132
|
+
concurrency=None,
|
|
133
|
+
batch_size=None):
|
|
123
134
|
"""
|
|
124
135
|
Saves all queries from the query dict and one more query (if passed);
|
|
125
136
|
returns absolute path to passed query in file (if passed) or path of resulted file
|
|
@@ -146,9 +157,17 @@ class TmpOtq:
|
|
|
146
157
|
end time expression for the resulting .otq file
|
|
147
158
|
timezone: str
|
|
148
159
|
timezone for the resulting .otq file
|
|
160
|
+
running_query_flag:
|
|
161
|
+
Will be applied only to the query specified in the ``query`` parameter.
|
|
149
162
|
symbol_date: :py:class:`otp.datetime <onetick.py.datetime>` or :py:class:`datetime.datetime` or int
|
|
150
163
|
Symbol date for the query or integer in the YYYYMMDD format.
|
|
151
164
|
Will be applied only to the query specified in the ``query`` parameter.
|
|
165
|
+
concurrency: int
|
|
166
|
+
Concurrency set for the query.
|
|
167
|
+
Will be applied only to the query specified in the ``query`` parameter.
|
|
168
|
+
batch_size: int
|
|
169
|
+
Batch size set for the query.
|
|
170
|
+
Will be applied only to the query specified in the ``query`` parameter.
|
|
152
171
|
|
|
153
172
|
Returns
|
|
154
173
|
-------
|
|
@@ -178,6 +197,10 @@ class TmpOtq:
|
|
|
178
197
|
query_params['running_query_flag'] = running_query_flag
|
|
179
198
|
if symbol_date is not None:
|
|
180
199
|
query_params['symbol_date'] = symbol_date
|
|
200
|
+
if concurrency is not None:
|
|
201
|
+
query_params['concurrency'] = concurrency
|
|
202
|
+
if batch_size is not None:
|
|
203
|
+
query_params['batch_size'] = batch_size
|
|
181
204
|
queries_dict[query_name] = (query, query_params)
|
|
182
205
|
|
|
183
206
|
# defining file-wise start/end times and time expressions
|
|
@@ -217,6 +240,11 @@ class TmpOtq:
|
|
|
217
240
|
if stored_symbol_date is not None:
|
|
218
241
|
stored_symbol_date = int(utils.symbol_date_to_str(stored_symbol_date))
|
|
219
242
|
stored_query.set_symbol_date(stored_symbol_date)
|
|
243
|
+
if stored_query_params.get('concurrency') is not None:
|
|
244
|
+
stored_query.set_max_concurrency(stored_query_params['concurrency'])
|
|
245
|
+
if stored_query_params.get('batch_size') is not None:
|
|
246
|
+
stored_query.set_batch_size(stored_query_params['batch_size'])
|
|
247
|
+
|
|
220
248
|
query_list.append(stored_query)
|
|
221
249
|
|
|
222
250
|
_ = otli.OneTickLib()
|
|
@@ -526,7 +526,8 @@ class Source:
|
|
|
526
526
|
symbol_date=symbol_date)
|
|
527
527
|
|
|
528
528
|
def _store_in_tmp_otq(self, tmp_otq, operation_suffix="tmp_query", symbols=None, start=None, end=None,
|
|
529
|
-
raw=None, add_passthrough=True, name=None, timezone=None, symbol_date=None
|
|
529
|
+
raw=None, add_passthrough=True, name=None, timezone=None, symbol_date=None,
|
|
530
|
+
concurrency=None, batch_size=None):
|
|
530
531
|
"""
|
|
531
532
|
Adds this source to the tmp_otq storage
|
|
532
533
|
|
|
@@ -573,7 +574,13 @@ class Source:
|
|
|
573
574
|
else:
|
|
574
575
|
graph.time_interval_properties().set_timezone(timezone)
|
|
575
576
|
|
|
576
|
-
params = {
|
|
577
|
+
params = {}
|
|
578
|
+
if symbol_date is not None:
|
|
579
|
+
params['symbol_date'] = symbol_date
|
|
580
|
+
if concurrency is not None:
|
|
581
|
+
params['concurrency'] = concurrency
|
|
582
|
+
if batch_size is not None:
|
|
583
|
+
params['batch_size'] = batch_size
|
|
577
584
|
suffix = self._name_suffix(suffix=operation_suffix, separator='__', remove_invalid_symbols=True)
|
|
578
585
|
return tmp_otq.add_query(graph, suffix=suffix, name=name, params=params)
|
|
579
586
|
|
|
@@ -17,9 +17,9 @@ from .common import update_node_tick_type
|
|
|
17
17
|
|
|
18
18
|
class Symbols(Source):
|
|
19
19
|
"""
|
|
20
|
-
Construct a source that returns
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
Construct a source that returns symbol names from the database.
|
|
21
|
+
|
|
22
|
+
The **SYMBOL_NAME** field will contain symbol names.
|
|
23
23
|
|
|
24
24
|
Parameters
|
|
25
25
|
----------
|
|
@@ -42,7 +42,7 @@ class Symbols(Source):
|
|
|
42
42
|
If you want symbol name to contain literal ``%`` character, you should write ``NQ\\%``.
|
|
43
43
|
``\\`` is a special character too, so it need to be escaped too
|
|
44
44
|
if you want symbol name to contain literal backslash, e.g. ``NQ\\\\M23``.
|
|
45
|
-
Default is
|
|
45
|
+
Default is ``%`` (any symbol name).
|
|
46
46
|
|
|
47
47
|
for_tick_type: str
|
|
48
48
|
Fetch only symbols belong to this tick type, if specified.
|
|
@@ -54,10 +54,14 @@ class Symbols(Source):
|
|
|
54
54
|
Translation is performed, if destination symbology is not empty
|
|
55
55
|
and is different from that of the queried database.
|
|
56
56
|
show_original_symbols: bool
|
|
57
|
-
Switches original symbol name propagation as a tick field ORIGINAL_SYMBOL_NAME
|
|
58
|
-
if symbol name translation is performed (if
|
|
59
|
-
|
|
60
|
-
|
|
57
|
+
Switches original symbol name propagation as a tick field **ORIGINAL_SYMBOL_NAME**
|
|
58
|
+
if symbol name translation is performed (if parameter ``symbology`` is set).
|
|
59
|
+
|
|
60
|
+
.. note::
|
|
61
|
+
|
|
62
|
+
If this parameter is set to True, database symbols with missing translations are also propagated.
|
|
63
|
+
In this case **ORIGINAL_SYMBOL_NAME** will be presented, but **SYMBOL_NAME** field will be empty.
|
|
64
|
+
|
|
61
65
|
discard_on_match: bool
|
|
62
66
|
If True, then parameter ``pattern`` filters out symbols to return from the database.
|
|
63
67
|
cep_method: str
|
|
@@ -115,95 +119,152 @@ class Symbols(Source):
|
|
|
115
119
|
|
|
116
120
|
This class can be used to get a list of all symbols in the database:
|
|
117
121
|
|
|
118
|
-
>>>
|
|
119
|
-
>>> otp.run(
|
|
120
|
-
|
|
121
|
-
0
|
|
122
|
-
1
|
|
122
|
+
>>> data = otp.Symbols('US_COMP_SAMPLE', date=otp.dt(2024, 2, 1)) # doctest: +SKIP
|
|
123
|
+
>>> otp.run(data) # doctest: +SKIP
|
|
124
|
+
Time SYMBOL_NAME
|
|
125
|
+
0 2024-02-01 A
|
|
126
|
+
1 2024-02-01 AAL
|
|
127
|
+
2 2024-02-01 AAPL
|
|
128
|
+
3 2024-02-01 ABBV
|
|
129
|
+
4 2024-02-01 ABNB
|
|
130
|
+
.. ... ...
|
|
131
|
+
496 2024-02-01 XYL
|
|
132
|
+
497 2024-02-01 YUM
|
|
133
|
+
498 2024-02-01 ZBH
|
|
134
|
+
499 2024-02-01 ZBRA
|
|
135
|
+
500 2024-02-01 ZTS
|
|
123
136
|
|
|
124
137
|
By default database name and time interval will be inherited from :py:func:`otp.run <onetick.py.run>`:
|
|
125
138
|
|
|
126
|
-
>>> data = otp.Symbols()
|
|
127
|
-
>>> otp.run(data, symbols='
|
|
128
|
-
|
|
129
|
-
0
|
|
130
|
-
1
|
|
139
|
+
>>> data = otp.Symbols() # doctest: +SKIP
|
|
140
|
+
>>> otp.run(data, symbols='US_COMP_SAMPLE::', date=otp.dt(2024, 2, 1)) # doctest: +SKIP
|
|
141
|
+
Time SYMBOL_NAME
|
|
142
|
+
0 2024-02-01 A
|
|
143
|
+
1 2024-02-01 AAL
|
|
144
|
+
2 2024-02-01 AAPL
|
|
145
|
+
.. ... ...
|
|
131
146
|
|
|
132
|
-
Parameter ``keep_db`` can be used to show database name in
|
|
147
|
+
Parameter ``keep_db`` can be used to show database name in the output.
|
|
133
148
|
It is useful when querying symbols for many databases:
|
|
134
149
|
|
|
135
|
-
>>> data = otp.Symbols(keep_db=True)
|
|
136
|
-
>>> data =
|
|
137
|
-
>>> otp.
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
150
|
+
>>> data = otp.Symbols(keep_db=True) # doctest: +SKIP
|
|
151
|
+
>>> data = data.first(2) # doctest: +SKIP
|
|
152
|
+
>>> data = otp.merge([data], symbols=['US_COMP_SAMPLE::', 'CME_SAMPLE::']) # doctest: +SKIP
|
|
153
|
+
>>> otp.run(data, date=otp.dt(2024, 2, 1)) # doctest: +SKIP
|
|
154
|
+
Time SYMBOL_NAME
|
|
155
|
+
0 2024-02-01 US_COMP_SAMPLE::A
|
|
156
|
+
1 2024-02-01 US_COMP_SAMPLE::AAL
|
|
157
|
+
2 2024-02-01 CME_SAMPLE::CL\\F25
|
|
158
|
+
3 2024-02-01 CME_SAMPLE::CL\\F26
|
|
159
|
+
.. ... ...
|
|
143
160
|
|
|
144
161
|
By default symbols for all tick types are returned.
|
|
145
162
|
You can set parameter ``show_tick_type`` to print the tick type for each symbol:
|
|
146
163
|
|
|
147
|
-
>>>
|
|
148
|
-
>>> otp.run(
|
|
149
|
-
|
|
150
|
-
0
|
|
151
|
-
1
|
|
152
|
-
2
|
|
164
|
+
>>> data = otp.Symbols('US_COMP_SAMPLE', show_tick_type=True) # doctest: +SKIP
|
|
165
|
+
>>> otp.run(data, date=otp.dt(2024, 2, 1)) # doctest: +SKIP
|
|
166
|
+
Time SYMBOL_NAME TICK_TYPE
|
|
167
|
+
0 2024-02-01 A DAY
|
|
168
|
+
1 2024-02-01 A LULD
|
|
169
|
+
2 2024-02-01 A NBBO
|
|
170
|
+
3 2024-02-01 A QTE
|
|
171
|
+
4 2024-02-01 A STAT
|
|
172
|
+
.. ... ... ...
|
|
153
173
|
|
|
154
174
|
Parameter ``for_tick_type`` can be used to specify a single tick type for which to return symbols:
|
|
155
175
|
|
|
156
|
-
>>>
|
|
157
|
-
>>> otp.run(
|
|
158
|
-
|
|
159
|
-
0
|
|
160
|
-
1
|
|
176
|
+
>>> data = otp.Symbols('US_COMP_SAMPLE', show_tick_type=True, for_tick_type='TRD') # doctest: +SKIP
|
|
177
|
+
>>> otp.run(data, date=otp.dt(2024, 2, 1)) # doctest: +SKIP
|
|
178
|
+
Time SYMBOL_NAME TICK_TYPE
|
|
179
|
+
0 2024-02-01 A TRD
|
|
180
|
+
1 2024-02-01 AAL TRD
|
|
181
|
+
2 2024-02-01 AAPL TRD
|
|
182
|
+
3 2024-02-01 ABBV TRD
|
|
183
|
+
4 2024-02-01 ABNB TRD
|
|
184
|
+
.. ... ... ...
|
|
161
185
|
|
|
162
186
|
Parameter ``pattern`` can be used to specify the pattern to filter symbol names:
|
|
163
187
|
|
|
164
|
-
>>>
|
|
165
|
-
|
|
188
|
+
>>> data = otp.Symbols('US_COMP_SAMPLE', show_tick_type=True, for_tick_type='TRD',
|
|
189
|
+
... pattern='AAP_') # doctest: +SKIP
|
|
190
|
+
>>> otp.run(data, date=otp.dt(2024, 2, 1)) # doctest: +SKIP
|
|
166
191
|
Time SYMBOL_NAME TICK_TYPE
|
|
167
|
-
0
|
|
192
|
+
0 2024-02-01 AAPL TRD
|
|
168
193
|
|
|
169
194
|
Parameter ``discard_on_match`` can be used to use ``pattern`` to filter out symbols instead:
|
|
170
195
|
|
|
171
|
-
>>>
|
|
172
|
-
...
|
|
173
|
-
>>> otp.run(
|
|
174
|
-
|
|
175
|
-
0
|
|
196
|
+
>>> data = otp.Symbols('US_COMP_SAMPLE', show_tick_type=True, for_tick_type='TRD',
|
|
197
|
+
... pattern='AAP_', discard_on_match=True) # doctest: +SKIP
|
|
198
|
+
>>> otp.run(data, date=otp.dt(2024, 2, 1)) # doctest: +SKIP
|
|
199
|
+
Time SYMBOL_NAME TICK_TYPE
|
|
200
|
+
0 2024-02-01 A TRD
|
|
201
|
+
1 2024-02-01 AAL TRD
|
|
202
|
+
2 2024-02-01 ABBV TRD
|
|
203
|
+
3 2024-02-01 ABNB TRD
|
|
204
|
+
4 2024-02-01 ABT TRD
|
|
205
|
+
.. ... ... ...
|
|
176
206
|
|
|
177
207
|
``otp.Symbols`` object can be used to specify symbols for the main query:
|
|
178
208
|
|
|
179
|
-
>>> symbols = otp.Symbols('
|
|
180
|
-
>>>
|
|
181
|
-
>>>
|
|
182
|
-
>>> result
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
209
|
+
>>> symbols = otp.Symbols('US_COMP_SAMPLE') # doctest: +SKIP
|
|
210
|
+
>>> symbols = symbols.first(3) # doctest: +SKIP
|
|
211
|
+
>>> data = otp.DataSource('US_COMP_SAMPLE', tick_type='TRD') # doctest: +SKIP
|
|
212
|
+
>>> result = otp.run(data, symbols=symbols, date=otp.dt(2024, 2, 1)) # doctest: +SKIP
|
|
213
|
+
>>> result['AAPL'][['Time', 'PRICE', 'SIZE']] # doctest: +SKIP
|
|
214
|
+
Time PRICE SIZE
|
|
215
|
+
0 2024-02-01 04:00:00.008283417 186.50 6
|
|
216
|
+
1 2024-02-01 04:00:00.008290927 185.59 1
|
|
217
|
+
2 2024-02-01 04:00:00.008291153 185.49 107
|
|
218
|
+
3 2024-02-01 04:00:00.010381671 185.49 1
|
|
219
|
+
4 2024-02-01 04:00:00.011224206 185.50 2
|
|
220
|
+
.. ... ... ...
|
|
221
|
+
|
|
222
|
+
>>> result['AAL'][['Time', 'PRICE', 'SIZE']] # doctest: +SKIP
|
|
223
|
+
Time PRICE SIZE
|
|
224
|
+
0 2024-02-01 04:00:00.097381367 14.33 1
|
|
225
|
+
1 2024-02-01 04:00:00.138908789 14.37 1
|
|
226
|
+
2 2024-02-01 04:00:00.726613365 14.36 10
|
|
227
|
+
3 2024-02-01 04:00:02.195702506 14.36 73
|
|
228
|
+
4 2024-02-01 04:01:55.268302813 14.39 1
|
|
229
|
+
.. ... ... ...
|
|
191
230
|
|
|
192
231
|
Additional fields of the ``otp.Symbols`` can be used in the main query as symbol parameters:
|
|
193
232
|
|
|
194
|
-
>>> symbols = otp.Symbols('
|
|
195
|
-
>>> symbols['PARAM'] = symbols['SYMBOL_NAME'] + '__' + symbols['TICK_TYPE']
|
|
196
|
-
>>> data = otp.DataSource('
|
|
197
|
-
>>> data
|
|
198
|
-
>>> data =
|
|
199
|
-
>>> otp.
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
233
|
+
>>> symbols = otp.Symbols('US_COMP_SAMPLE', show_tick_type=True, for_tick_type='TRD') # doctest: +SKIP
|
|
234
|
+
>>> symbols['PARAM'] = symbols['SYMBOL_NAME'] + '__' + symbols['TICK_TYPE'] # doctest: +SKIP
|
|
235
|
+
>>> data = otp.DataSource('US_COMP_SAMPLE', tick_type='TRD') # doctest: +SKIP
|
|
236
|
+
>>> data = data.first(1) # doctest: +SKIP
|
|
237
|
+
>>> data['S_PARAM'] = data.Symbol['PARAM', str] # doctest: +SKIP
|
|
238
|
+
>>> data = otp.merge([data], symbols=symbols) # doctest: +SKIP
|
|
239
|
+
>>> data = data[['PRICE', 'SIZE', 'S_PARAM']] # doctest: +SKIP
|
|
240
|
+
>>> otp.run(data, date=otp.dt(2024, 2, 1)) # doctest: +SKIP
|
|
241
|
+
Time PRICE SIZE S_PARAM
|
|
242
|
+
0 2024-02-01 04:00:00.001974784 193.800 4 HSY__TRD
|
|
243
|
+
1 2024-02-01 04:00:00.003547904 57.810 18 OXY__TRD
|
|
244
|
+
2 2024-02-01 04:00:00.006354688 42.810 30 DVN__TRD
|
|
245
|
+
3 2024-02-01 04:00:00.007310080 165.890 9 WMT__TRD
|
|
246
|
+
4 2024-02-01 04:00:00.007833957 43.170 22 INTC__TRD
|
|
247
|
+
.. ... ... ... ...
|
|
248
|
+
|
|
249
|
+
Use parameter ``symbology`` to specify different symbology to translate to.
|
|
250
|
+
You can also use parameter ``show_original_symbols`` to print original symbols.
|
|
251
|
+
Note that some symbols may not have a translation in target symbology, so their names will be empty:
|
|
252
|
+
|
|
253
|
+
>>> data = otp.Symbols('US_COMP', for_tick_type='TRD',
|
|
254
|
+
... symbology='FGV', show_original_symbols=True) # doctest: +SKIP
|
|
255
|
+
>>> otp.run(data, start=otp.dt(2023, 5, 15, 9, 30), end=otp.dt(2023, 5, 15, 9, 30, 1)) # doctest: +SKIP
|
|
256
|
+
Time SYMBOL_NAME ORIGINAL_SYMBOL_NAME
|
|
257
|
+
0 2023-05-15 09:30:00 BBG000C2V3D6 US_COMP::A
|
|
258
|
+
1 2023-05-15 09:30:00 BBG00B3T3HD3 US_COMP::AA
|
|
259
|
+
2 2023-05-15 09:30:00 BBG01B0JRCS6 US_COMP::AAA
|
|
260
|
+
3 2023-05-15 09:30:00 BBG00LPXX872 US_COMP::AAAU
|
|
261
|
+
4 2023-05-15 09:30:00 BBG00YZC2Z91 US_COMP::AAC
|
|
262
|
+
... ... ... ...
|
|
263
|
+
10946 2023-05-15 09:30:00 US_COMP::ZXIET
|
|
264
|
+
10947 2023-05-15 09:30:00 US_COMP::ZXZZT
|
|
265
|
+
10948 2023-05-15 09:30:00 BBG019XSYC89 US_COMP::ZYME
|
|
266
|
+
10949 2023-05-15 09:30:00 BBG007BBS8B7 US_COMP::ZYNE
|
|
267
|
+
10950 2023-05-15 09:30:00 BBG000BJBXZ2 US_COMP::ZYXI
|
|
207
268
|
|
|
208
269
|
**Escaping special characters in the pattern**
|
|
209
270
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_manually_bound_value.py
RENAMED
|
File without changes
|
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_op_utils/__init__.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_op_utils/every_operand.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_internal/_op_utils/is_const.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/__init__.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/aggregations.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/applyers.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/columns.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/data_quality.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/debugs.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/drops.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/fields.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/filters.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/merges.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/misc.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/pandases.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/renames.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/sorts.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/switches.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/symbols.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/times.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/_source/source_methods/writes.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/_methods/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/_methods/methods.py
RENAMED
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/core/column_operations/_methods/op_types.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{onetick_py-1.180.0 → onetick_py-1.181.0}/src/onetick/py/sources/split_query_output_by_symbol.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|