3

私は R と を初めて使用するquantstratので、しばらくお待ちください。

Web 上の quantstrat のデモ/サンプル ファイルの多くは、TA ルールを使用した優れた例を提供していることに注意してください。

私の質問 / TL;DR

始値とその後の日中データを使用して、TA を使用せずに quantstrat で単純な日中しきい値交差ルールを構築するにはどうすればよいですか?

データ構造

商品がティッカー付きの株であると仮定しますXYZ

XYZ はxts、日中 (1 分) OHLC データのオブジェクトとして格納されます。いいえ:

2014-05-30 15:55:00 148.6231 148.6239 148.6632 148.7173
2014-05-30 15:56:00 148.7574 148.7373 148.7976 148.7976
2014-05-30 15:57:00 148.7775 148.7844 148.7976 148.7775
2014-05-30 15:58:00 148.7574 148.7443 148.7706 148.8246
2014-05-30 15:59:00 148.7574 148.8115 148.9586 148.9051
2014-05-30 16:00:00 148.8649 148.8919 148.9586 148.8919

を介してto.daily()、次のようになります。

2014-05-23   145.5871   146.8550  145.5196    146.0925
2014-05-26   146.2252   146.3783  145.7475    145.7497
2014-05-27   145.8070   146.1233  145.4283    145.7542
2014-05-28   146.0079   146.2983  145.5477    145.7511
2014-05-29   147.3544   147.7388  147.1623    147.4640
2014-05-30   147.3642   148.8919  147.4933    148.8919

構築しようとしているトレード

私が(簡単な出発点として)テストしたいのは次のとおりです。

  1. ある日の始値からn bps以上上昇したときに XYZ を空売りし、終値で手仕舞うことの収益性。
  2. ある日に XYZ がn bps を超えて下落したときに XYZ を購入することの収益性。

例題

  1. 2014-05-30上記のデータでは、始値は でした147.36
  2. XYZ がそのオープニング プリントから 50 bps を超えている場合はショートしたいと思います (つまり、 147.34*1.005 = 148.08.148.08が「アップ」のしきい値になりました)。
  3. 逆に、XYZ が最初の出力 (つまり ) から -50 bps 未満の場合は長くしたいと思い147.34*.995 = 146.60ます。146.60は現在、私の「ダウン」しきい値です)。
  4. どちらの場合も、出口はその日の終値になります。
  5. 理想的には、私のコードは、各分バーの終値が <> シグナルしきい値価格 (始値から派生) であるかどうかを評価し、それにblotter応じてトランザクションを入力します。
  6. 私が始めるための答えに満足していますが、特に、注文サイズの処理のおもちゃの例をいくつか示すことができれば(つまり、しきい値を超えると、予想される復帰が発生する前にその動きがしばらく延長される可能性があります-取得方法がわからないquantstrat で処理します)

これがばかげて単純な場合はお詫び申し上げます。さまざまな例とデモを試してみましたが、うまくいかないようで、このクエリを正しく設定する方法について助けていただければ幸いです

4

0 に答える 0