-2

一部の資産 (製品) の毎日の価格を示すテーブルがあり、一部の日付が欠落しています。毎年の価格変動率を計算するために、月末の価格を取得したいと考えています。価格のボラティリティは、月末価格の標準偏差として定義されます。

2010 年 12 月 31 日のように月末日が欠落している場合、アルゴリズムは製品の日付をさかのぼって検索し、最も近い日付を月末日として使用する必要があります。

このロジックを c# で実装する簡単な方法はありますか?

4

3 に答える 3

1

おそらく必要なのは、ターゲットとソースの日付を使用した日付サンプリング (または日付アルゴリズム) です。

日付によるテーブルのフィルタリングとサンプリングを参照してください http://finaquant.com/filtering-and-sampling-tables-by-dates/2606

于 2013-01-15T15:25:58.547 に答える
0

これはあまり複雑であってはなりません。

PriceData次のようなインスタンスのリストがあるとしますPriceData

class PriceData
{
    public DateTime Date { get; set; }
    public double Price { get; set; }
}

List<PriceData> prices = ...

var lastPricePerMonth = prices.GroupBy(x => x.Date.Year * 12 + y.Date.Month)
                              .Select(x => x.OrderByDescending(y => y.Date)
                                            .First());

これにより、各月の最新のPriceDataオブジェクトが返されます。

于 2013-01-15T11:26:29.757 に答える