特定の自己防衛が作成される方法で時系列を並べることは可能でしょうか?

私は2500の乱数を含むファイルを持っています。特定の自己相関が生成されるように、これらの保存された数値を並べ替えることは可能ですか?例えば、0.2の遅れ1への自己相関、0.4の遅れ2への自己相関などと言います。

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

具体的には:

ある資産の1日のリターンの時系列は、私が再作成しようとしている次のような特徴があります。

  1. Leptokurtic、対称分布、一日の戻り値がゼロになるとしましょう
  2. 重要な自己相関はありません(日々のリターンの兆候は予測できないため)
  3. 時系列が自乗である場合の重要な自己相関

この3つの特性をすべて満たすランダムな時系列を生成することが目的です。唯一の2つの入力は、leptokurtic分布(私が既に作成したもの)と、結果として得られる二乗の時系列の特定の自己相関でなければなりません(例えば、最終二乗時系列は、0.2の遅れで自己相関を持つべきです)。

私は自分の混合分布から乱数を作り出す方法しか知りません。もちろん、この結果の時系列を二乗すると、自己相関はありません。私はこれを考慮に入れる方法を見つけたいと思います。

1

2 答え

一般的に、自己相関データを作成する最も直接的な方法は、自己相関するようにデータを生成することです。たとえば、p-1の値を期間pでのランダム描画の平均として常に使用することによって、自動相関パスを作成できます。

並べ替えは難しいだけでなく、概念的には奇妙なものです。あなたは本当に最後に何をしようとしていますか?いくつかの文脈を与えることでより良い答えが得られるかもしれません。

8
追加された
私は、私がやろうとした私の背中のこれらの愚かなクリートマークのために良い答えしか持っていません...このタイプのもの...過去に:O
追加された 著者 JD Long,
時間t(Pt)の価格が(Pt-1)^ 2の関数である1つの資産? Um ...(Pt-1)^ 2の値をPtでの価格リターン引き分けの平均として使用しますか?上記の私の答えのように聞こえます。これ以上の手助けをするには、さらに詳しい情報や例が必要です。
追加された 著者 JD Long,
クリス、私は、返品が二乗されない限り、自己相関していないことについて少しは理解していなかったので、混乱しました。それは難しいです。また、プログラミング問題と数学問題の問題を完全に取り除きます。一度あなたが数学を解くと、Rへの数学のコード化を解決するのに助けを求めることができるでしょう:)しかし、それは楽しい謎に変わっているので、私はまだこれを考えます。
追加された 著者 JD Long,
暗闇の中で非常に知られていないスタブ:GARCHプロセスからシミュレートするツールを見つけることができるのだろうか?自己相関のボラティリティを処理しています。これは多かれ少なかれゼロの2乗の自己相関に相当します - 変数...?
追加された 著者 Ben Bolker,
良い良い答え
追加された 著者 mdsumner,
あなたの答えをありがとう!さて、私がしようとしているのは、特定の株式の毎日のリターンをシミュレートすることです。私は、特定の株式(2つの通常分布と1つのt分布の混合)の1日のリターンの混合分布を作成しました。これは株式リターンの「レプトクトーシス」を反映しています。今度は、通常のリターンでは相関はないが、二乗リターンについては特定の自己相関を持つ混合分布の時系列を作成したいと考えています。誰かここに道が見えますか?親切に、キリスト教徒
追加された 著者 Chris437,
ちょっとJD、私はあなたが間違っていないことを願っています(もし私がそうすれば私を修正してください)。私は、アセットそのものの価格ではなく、資産のリターンをパーセントで表しています。資産の価格は常に重要な自己相関を持ち、P(t)= P(t-1)+ Noiseと定義されていたと思いました。より具体的に私のオリジナルの質問を編集しました。
追加された 著者 Chris437,

相関データをシミュレートする機能があります。 statsパッケージの arima.sim()および予測パッケージの simulate.Arima()

simulate.Arima() has the advantages that (1.) it can simulate seasonal ARIMA models (maybe sometimes called "SARIMA") and (2.) It can simulate a continuation of an existing timeseries to which you have already fit an ARIMA model. To use simulate.Arima(), you do need to already have an Arima object.

更新:

?arima.sim と入力して「examples」までスクロールします。

あるいは:

install.packages( "forecast")

ライブラリ(予定)

fit <- auto.arima(USAccDeaths)

plot(USAccDeaths、xlim = c(1973,1982))

lines(simulate(fit、36)、col = "red")

4
追加された
簡単な例を与えるためのケア?
追加された 著者 Roman Luštrik,
あなたの答えを編集してください。 ;)
追加された 著者 Roman Luštrik,
RomanLuštrikと入力し、?arima.sim と入力して「examples」までスクロールします。代わりに: install.packages( "forecast");ライブラリ(予報);フィット< - auto.arima(USAccDeaths); plot(USAccDeaths、xlim = c(1973,1982))lines(simulate(fit、36)、col = "red")
追加された 著者 power,
^私は新しい方法、私はセミコロンの代わりに新しい行を使用します。
追加された 著者 power,