qteasy の組み込み履歴データ型
データ タイプは、qteasy の中核概念です。これは、過去の市場データやマクロ経済系列など、トレーディング戦略で使用される情報です。情報は生データと同じではありません。古いバージョンでは、qteasy はデータ型を DataSource テーブル列と同等視していましたが、これは次の理由から不適切でした。
一部の生のフィールドだけではほとんど意味がないため、他のデータと組み合わせる必要があります。
一部のフィールドには、さまざまな角度から抽出できる複数種類の情報がエンコードされています
情報の意味は動的であり、同じデータでも異なる解釈が可能です。
情報とデータを同一視するのは不注意です。論理的には、データは情報の伝達手段にすぎません。
新しい qteasy 定義では、データ型は、複雑に格納されたデータから抽出された情報です。一部はテーブルから直接読み取ることができます。次に例を示します。
株価の始値、価格表から直接読み取る
一部のデータは複数のテーブルから組み立てる必要があります。次に例を示します。
調整後の株価には、価格データ、調整係数、および計算が必要です
場合によっては、1 つの列から異なる情報が得られることがあります。たとえば、次のとおりです。
前終値と日次変動は同じ価格表でも異なる情報です
qteasy は、データ型を必要な情報として再定義し、データ型を迅速に抽出し、カスタム型をサポートし、結果をグラフ化、比較、分析するためのシンプルな API を使用します。
各データ型はクラスとして実装されており、簡単にカスタマイズできます。 qteasy には、多くのテーブルをカバーする広範な組み込みタイプも同梱されているため、ダウンロードしたデータは完全に使用できます。
論理的に、データ型を定義するには以下が必要です。
データ ソース: この情報を提供するテーブルと列はどれですか?
取得: 情報はどのように抽出されるのでしょうか?
多くの組み込み型は、単純かつパラメトリックに定義する必要があります。クラス モデルは、パラメーター駆動型の定義にとって十分小さいままです。
使用法と出力 — データ型は 2 つの統合 API を公開します。
API1: data_type.get(start, end, frequency) — 1 つの周波数でのシンボルに依存しない間隔データ、系列のような出力。
API2: data_type.get(shares, start, end, frequency) — 1 つの周波数でのシェアごとの間隔データ。
3 番目の API: data_type.get(shares, start, end, frequency, **kwargs)
組み込み型とカスタム型は同じ戻り形式を共有します。
取得カテゴリは、直接読み取りと構成テーブル、調整された価格などの複数テーブルのクエリなど、データの読み取りと生成方法によって異なります。個別のパターンには個別の処理が必要です。
純粋な複数フィールドの数学タイプ (調整価格を除く) を無視すると、取得タイプには次のものが含まれます。
acquisition_type は、シンボル化された出力と非シンボル化された出力、および期間とタイムスタンプのレイアウトを制御します。
サポートされる出力レイアウトはデータ型定義時に固定されます
- 'basics':
basics— 時間に依存しない参照データ。 kwargs: 1 つのテーブルと列- 'direct':
direct— 一定の間隔と頻度で 1 つのテーブル/列を読み取ります- 'adjustment':
adjustment— 2 つのテーブルから A と B を読み取り、A を B で調整します (例: 調整された価格)- 'relations':
relations— A と B 間の関係出力 (eq/ne/gt/or/nor など)- 'operation':
operation— A と B の間の算術 (+/-/*//)- 'event_status':
event_status— イベント影響ウィンドウ全体のステータスを埋める (一時停止、名前変更など)- 'event_multi_stat':
event_multi_stat— イベントウィンドウにわたる複数のステータス (管理名簿など)- 'event_signal':
event_signal— イベント日のシグナル (指値の上下、上場、配当など)- 'composition':
composition— 構成テーブルをフィルターし、行/列をピボットします。特別な手続き型を追加- 'compound':
compound— 複数のフィールドを 1 つのタイムスタンプで結合します (財務諸表など)
Output Type
- 'symbolised':
シンボル化された期間データ: DataFrame に似ており、行 = 期間、列 = シェア コード
- 'un-symbolised':
非シンボル化期間データ: 系列のような、行 = 期間、単一列
クラス設計はパラメトリックです。パラメータは取得方法とターゲット テーブルを固定します。
1 つのパブリック メソッドは取得タイプによってディスパッチし、ターゲット テーブルを読み取り、クリーンアップしてデータを返します。
タイプメタデータはフィールドセマンティクスをエンコードできます。 open は最新サイクルで使用可能ですが、close は使用できません
フック メソッドはカスタム取得ロジック用にオーバーライドされる可能性があります
多くの組み込み型は、型 ID からキー パラメーターへのマッピング テーブルを介して作成されます。
1, DATA_TYPE_MAP:
DATA_TYPE_MAP は、各データ タイプ ID をそのストレージ テーブル (タイプごとに一意の ID と場所) にマッピングします。
データテーブルマッピング列: htype_name (キー): データ型名
freq (キー): 利用可能な周波数 — min/d/w/m/q
asset_type (キー): E、IDX、FT、FD、OPT、THS、SW など。
description: 検索用の詳細な説明
acquisition_type:取得方法
table_name: ストレージテーブル名
column: テーブル内の列名
"""