問題タブ [quantitative-finance]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
620 参照

r - quantstrat パッケージの単純な日中信号処理コード

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

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

私の質問 / TL;DR

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

データ構造

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

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

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

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

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

  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 で処理します)

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

0 投票する
1 に答える
2723 参照

python - Python pandas で簡単なシグナル バックテストを実行する方法

買いシグナルを DatetimeIndex として提供して ohlc の引用符 DataFrame (調整された終値) をチェックすることで、pandas で簡単かつ迅速なバックテストを実行したいと考えていますが、これが正しいかどうかはわかりません。

明確にするために、保有期間全体にわたるすべてのスワッピング買いシグナル (および株式リターンも?) の累積リターンを計算したいと思います。その後、単純なシャープ関数を使用していくつかの計算を比較したいと思います。これは、パンダで購入信号をすばやく簡単にテストする正しい方法ですか?

どんな助けでも大歓迎です!

シグナル:

ohlc:

バックテスト:

期待される結果 (buy_returns の値が正しくありません):

私の質問は、パンダで提供された購入シグナル (True/False シリーズまたは Datetimeindex) の強さを表すために、返品シリーズをどのように計算する必要があるかということです。

0 投票する
1 に答える
2474 参照

c# - C# でローリング ウィンドウの最大ドローダウンを計算する

要件は、リターンなどの時系列について C# のローリング ウィンドウの最大ドローダウンを計算することです。つまり、新しい観測ごとに、新しい時間ウィンドウの最大ドローダウンを再計算します。

0 投票する
1 に答える
294 参照

r - 固定ボリューム サイズで株式市場データを集計する方法は?

目標: 株式市場データを 5000 株の出来高間隔でスライスする

データ形式:日付、時間、価格、出来高

私のコードは、100 万行のデータ フレームで非常に遅いです。より高速な方法はありますか? コードと使用したデータセットを含めました。ご協力ありがとうございました!

私のコード:

私のデータセット:

0 投票する
1 に答える
521 参照

python - パンダを使用して日中のデータからオーバーナイトのリターンを削除する方法

数か月にわたる日中の価格データ (ボリューム加重、分単位で集計) を持つ Pandas DataFrame があります。

ご覧のとおり、一部の分にはデータがありません (取引がないため)。

一晩の収益を無視して、各データ ポイント間の収益を計算したいと思います。最初の取引が毎日同じ時間に行われるとは考えられません。どうすればこれを達成できますか?

0 投票する
1 に答える
176 参照

r - 取引終了のためにブロッターで addTxn() から TxnPrice を参照する

最新のブロッター エントリー トランザクションが行われた (ループ内の) 価格を参照する quantstrat/blotter 内でトレード エグジットをバックテストしたいと考えています。最新の取引が開始からたとえば 5% 下落した場合、一種のストップ ロスとして取引を終了するというルールを追加したいと考えています。

ここで TxnPrice を参照します。

ClosePrice の場所

問題は、TxnPrice がグローバル環境内のオブジェクトとして存在しないことです。私はそれを参照するための非常に単純なものが欠けていると確信しています。どんな助けでも大歓迎です。

0 投票する
1 に答える
1154 参照

trading - MQL4 ワンクリック パネルから取引量を取得できますか?

現在のチャートのワンクリック取引パネルから取引量を取得できるかどうか、またその方法を知っている人はいますか?

私はいくつかの簡単な取引スクリプトをまとめており、ワンクリック パネルから現在の取引量またはロット サイズを引き出すことができれば素晴らしいと思います。

前もって感謝します