0

クエリ標準に従って、カスタムのタイム スパン入力、開始日、終了日を使用してティック データを OHLC に変換する最良の方法は何ですか?

ストアド プロシージャには、渡す 3 つのパラメーターが必要です。

  • 期間、
  • 開始日、および
  • 終了日。

2 つのシナリオ (それぞれにストアド プロシージャを使用) が必要です。1 つは時間範囲間にレコードがない場合のギャップのないシナリオで、もう 1 つは時間範囲間にレコードがない場合のギャップのあるシナリオです。


データは次のとおりです。

BigIntDateTime,    DateTime,                Ask,     Bid
20000530171000000, 2000-05-30 17:10:00.000, 0.93020, 0.93970
20000530171010000, 2000-05-30 17:10:10.000, 0.98020, 0.98970
20000530171030000, 2000-05-30 17:10:30.000, 0.92020, 0.92970
20000530171040000, 2000-05-30 17:10:40.000, 0.9020,  0.90970
20000530171336000, 2000-05-30 17:13:36.000, 0.93020, 0.93970

タイムスパン: 1分

最初のシナリオの出力

  • 時間:1分
  • 開始日: 2000-05-30 17:10:00.000
  • 終了日: 2000-05-30 17:13:36.000
Time,                    OpenAsk, HighAsk, LowAsk,  CloseAsk, OpenBid, HighBid, LowBid,  CloseBid 
2000-05-30 17:10:00.000, 0.93020, 0.98020, 0.90200, 0.90200,  0.93970, 0.98970, 0.90970, 0.90970
2000-05-30 17:13:36.000, 0.93020, 0.93020, 0.93020, 0.93020,  0.93970, 0.93970, 0.93970, 0.93970

2 番目のシナリオの出力

  • 時間:1分
  • 開始日: 2000-05-30 17:10:00.000
  • 終了日: 2000-05-30 17:13:36.000
Time,                    OpenAsk, HighAsk, LowAsk,  CloseAsk, OpenBid, HighBid, LowBid,  CloseBid 
2000-05-30 17:10:00.000, 0.93020, 0.98020, 0.90200, 0.90200,  0.93970, 0.98970, 0.90970, 0.90970
2000-05-30 17:11:00.000, 0.93020, 0.98020, 0.90200, 0.90200,  0.93970, 0.98970, 0.90970, 0.90970
2000-05-30 17:12:00.000, 0.93020, 0.98020, 0.90200, 0.90200,  0.93970, 0.98970, 0.90970, 0.90970
2000-05-30 17:13:36.000, 0.93020, 0.93020, 0.93020, 0.93020,  0.93970, 0.93970, 0.93970, 0.93970
4

1 に答える 1

0

解決

多くの理由 (業界の慣行、パフォーマンス、再利用、スケーラビリティ、ETL/統合の必要性など) により、最良の方法は、見積もりの​​ストリームを<_static_forever_> OHLC Vテーブルに定期的に前処理することです。 -必要なすべての TimeFRAME (業界共通のものと合成のものの両方) について事前に計算された、定量的モデルでの使用。

シナリオ A と B の両方の < aVarTimeSPAN > のSQL 部分

次に、標準の SQL クエリを使用してSELECT、必要な変数、ユーザー定義の期間のみを取得します

SELECT * FROM aCurrenex_AUDUSD_M1
WHERE  aUTC_BarTimeSTAMP BETWEEN <_value1_> AND <_value2_>;

.

引用符のカスタム定義された非線形のリフレーミング (別名 ticks )

Scenario.AScenario.B[Bid,Ask]は、要求された期間の「内部」でレコードの異なる再フレーミングを行います。

上で定義された DataSET のサンプルは、複数の解釈を可能にします。いずれかのシナリオ アプローチで OHLC をどのように計算するか。

期間が [ 2013.11.04-00:00:55.000,

YYYY.MM.DD HH:MM:SS.TTT  |Bid     |Ask
|          |             |        |
2013.11.04 00:00:53.843; 0.94582; 0.94554;
2013.11.04 00:00:59.500; 0.94575; 0.94551;
2013.11.04 00:00:59.234; 0.94582; 0.94551;
#----------|-------------|--------|-------------------------<aStandardM1BAR.EoB>
2013.11.04 00:01:02.750; 0.94582; 0.94554;
2013.11.04 00:01:02.793; 0.94582; 0.94551;
2013.11.04 00:01:08.937; 0.94582; 0.94548;
2013.11.04 00:01:09.968; 0.94580; 0.94548;
2013.11.04 00:01:11.984; 0.94573; 0.94548;
2013.11.04 00:01:12.390; 0.94573; 0.94545;
2013.11.04 00:01:12.434; 0.94573; 0.94542;
2013.11.04 00:01:34.500; 0.94581; 0.94542;
2013.11.04 00:01:38.703; 0.94581; 0.94541;
2013.11.04 00:01:38.796; 0.94573; 0.94541;
2013.11.04 00:01:42.031; 0.94572; 0.94541;
2013.11.04 00:01:47.343; 0.94582; 0.94547;
2013.11.04 00:01:48.546; 0.94582; 0.94561;
2013.11.04 00:01:48.551; 0.94575; 0.94555;
2013.11.04 00:01:50.843; 0.94570; 0.94542;
2013.11.04 00:01:50.940; 0.94570; 0.94546;
2013.11.04 00:01:51.546; 0.94568; 0.94538;
2013.11.04 00:01:51.359; 0.94570; 0.94540;
2013.11.04 00:01:55.859; 0.94570; 0.94546;
2013.11.04 00:01:55.937; 0.94563; 0.94543;
2013.11.04 00:01:57.359; 0.94564; 0.94543;
#----------|-------------|--------|-------------------------<aStandardM1BAR.EoB>
2013.11.04 00:02:05.078; 0.94563; 0.94543;
2013.11.04 00:02:06.562; 0.94564; 0.94543;
2013.11.04 00:02:08.812; 0.94572; 0.94550;
2013.11.04 00:02:15.359; 0.94572; 0.94549;
2013.11.04 00:02:15.078; 0.94572; 0.94547;
2013.11.04 00:02:32.178; 0.94563; 0.94540;
2013.11.04 00:02:32.432; 0.94564; 0.94540;
2013.11.04 00:02:33.359; 0.94564; 0.94538;
2013.11.04 00:02:34.031; 0.94564; 0.94535;
2013.11.04 00:02:39.218; 0.94564; 0.94537;
2013.11.04 00:02:41.343; 0.94559; 0.94535;
2013.11.04 00:02:46.906; 0.94559; 0.94529;
2013.11.04 00:02:46.978; 0.94559; 0.94532;
2013.11.04 00:02:51.640; 0.94559; 0.94529;
2013.11.04 00:02:55.500; 0.94560; 0.94529;
2013.11.04 00:02:56.578; 0.94582; 0.94552;
#----------|-------------|--------|-------------------------<aStandardM1BAR.EoB>
2013.11.04 00:03:01.046; 0.94582; 0.94555;
2013.11.04 00:03:03.968; 0.94585; 0.94555;
2013.11.04 00:03:04.734; 0.94583; 0.94555;
2013.11.04 00:03:09.562; 0.94581; 0.94536;
2013.11.04 00:03:10.718; 0.94568; 0.94530;
2013.11.04 00:03:10.968; 0.94561; 0.94530;
2013.11.04 00:03:11.562; 0.94566; 0.94537;
2013.11.04 00:03:13.718; 0.94568; 0.94539;
2013.11.04 00:03:14.218; 0.94568; 0.94538;
2013.11.04 00:03:14.750; 0.94569; 0.94538;
2013.11.04 00:03:15.953; 0.94569; 0.94540;
2013.11.04 00:03:16.437; 0.94570; 0.94540;
2013.11.04 00:03:21.359; 0.94575; 0.94545;
2013.11.04 00:03:23.796; 0.94573; 0.94542;
2013.11.04 00:03:29.203; 0.94570; 0.94540;
2013.11.04 00:03:29.875; 0.94567; 0.94540;
2013.11.04 00:03:34.859; 0.94572; 0.94550;
2013.11.04 00:03:36.062; 0.94574; 0.94550;
2013.11.04 00:03:36.359; 0.94574; 0.94548;
2013.11.04 00:03:36.671; 0.94574; 0.94546;
2013.11.04 00:03:36.915; 0.94575; 0.94550;
2013.11.04 00:03:37.578; 0.94578; 0.94550;
2013.11.04 00:03:37.781; 0.94576; 0.94546;
2013.11.04 00:03:37.896; 0.94573; 0.94541;
2013.11.04 00:03:38.532; 0.94571; 0.94540;
2013.11.04 00:03:39.765; 0.94570; 0.94540;
2013.11.04 00:03:39.803; 0.94568; 0.94540;
2013.11.04 00:03:58.500; 0.94573; 0.94548;
#----------|-------------|--------|-------------------------<aStandardM1BAR.EoB>
2013.11.04 00:04:08.375; 0.94575; 0.94548;
2013.11.04 00:04:09.734; 0.94580; 0.94560;
2013.11.04 00:04:14.784; 0.94592; 0.94564;
2013.11.04 00:04:14.987; 0.94587; 0.94563;
2013.11.04 00:04:14.996; 0.94587; 0.94566;
2013.11.04 00:04:15.062; 0.94574; 0.94552;
于 2014-06-14T22:55:06.327 に答える