Volume-Weighted Average Prive (VWAP)のprice_per_unit
とquantitiy
の取引を一定の期間にわたってプロットする必要があります。弾性検索集計:量加重平均価格
集計の結果、date_histogram
のすべてのバケットには、これまでに発生したすべての取引のVWAPが含まれている必要があります。
これはElasticsearchを使用することが可能かどうか、またスクリプトに似たアプローチ(スクリプトを使用するようなことはありませんか?
trade
文書のための基本的なマッピングは非常に簡単です:execution_time
一方
"trade": {
"properties":
"trade_id": {"type": "string", "index": "not_analyzed"},
"product_id": {"type": "string", "index": "not_analyzed"},
"quantity": {'type': 'double'}, // number of units
"execution_time": {'type': 'date'},
"price_per_unit": {'type': 'double'},
}
}
がdate_histogram
のために使用されるべきであるとの貿易の合計価格はprice_per_unit
とquantity
の製品です。したがって、VWAP = sum(price_per_unit * quantity)/sum(quantity)
。
[累積合計](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-pipeline-cumulative-sum-aggregation.html)のようなサウンドは役立ちます。 –
上記の質問のコードサンプルを用意してもらえますか?私は累積合計を調べてみましたが、実際にそれを実装できませんでした。 –
私が提供したリンクにサンプルがあります。そして、私は、あなたがテストデータ、所望の出力とインデックスのマッピングを提供していないので、それよりも優れたサンプルを思いつくことができません。 –