XamDataChart コントロールの FinancialPriceSeries は、株価をプロットして各日の株の高値、安値、始値、終値を示すためによく使用されます。さらに、株価トレンドラインも表示できます。財務物価シリーズは、物価トレンドの変化の測定や検証のために多数のその他の 財務指標と組み合わせて使用される場合が多くあります。
財務物価シリーズは、 DisplayType プロパティに列挙値を設定することにより構成可能な 2 つの表示モードがあります。
FinancialPriceSeries ( Candlestick モード) は、株価をプロットして各日の株の高値、安値、始値、終値を示すためによく使用されます。各データ ポイントは、上下の両方に垂直線で垂直列としてプロットされます。垂直の線は投資の高値と安値の間の範囲を示します。垂直線の一番上はセッション中の高値を示し、垂直線の一番下はセッション中の低値を示します。垂直柱は、投資の始値と終値の間の期間を示します。開始値と終了値の間で正の値がある場合は Series の Brush を使用して列が満たされ、負の値がある場合は Series の NegativeBrush を使用して列が満たされます。
FinancialPriceSeries ( Candlestick モード) は、株価をプロットして各日の株の高値、安値、始値、終値を示すためによく使用されます。各データ ポイントは、左と右の両側に水平の垂直線を伴った縦の線としてプロットされます。垂直の線は投資の高値と安値の間の範囲を示します。垂直線の一番上はセッション中の高値を示し、垂直線の一番下はセッション中の低値を示します。水平の線は投資の始値と終値の間の範囲を示します。垂直線の左側の水平の線はセッションの開始値を示します。垂直の線の右側の水平の線は取引期間の終値を示します。
以下のコード例は、Candlestick
モードの FinancialPriceSeries
を XamDataChart
コントロールに追加し、 サンプル株データ ソースへバインドする方法を示します。
XAML の場合:
xmlns:local="clr-namespace:Infragistics.Models;assembly=YourAppName"
XAML の場合:
<ig:XamDataChart x:Name="chart" >
<ig:XamDataChart.Resources>
<local:StockPriceData x:Key="data" />
</ig:XamDataChart.Resources>
<ig:XamDataChart.Axes>
<ig:NumericYAxis x:Name="yAxis" />
<ig:CategoryXAxis x:Name="xAxis" ItemsSource="{StaticResource data}" Label="{}{Date}" />
</ig:XamDataChart.Axes>
<ig:XamDataChart.Series>
<ig:FinancialPriceSeries
DisplayType="Candlestick"
ItemsSource="{StaticResource data}"
OpenMemberPath="Open"
CloseMemberPath="Close"
HighMemberPath="High"
LowMemberPath="Low"
VolumeMemberPath="Volume"
XAxis="{Binding ElementName=xAxis}"
YAxis="{Binding ElementName=yAxis}">
</ig:FinancialPriceSeries>
</ig:XamDataChart.Series>
</ig:XamDataChart>
C# の場合:
var data = new StockPriceData();
var yAxis = new NumericYAxis();
var xAxis = new CategoryXAxis();
xAxis.ItemsSource = data;
xAxis.Label = "Date";
var series = new FinancialPriceSeries();
series.DisplayType = PriceDisplayType.Candlestick;
series.ItemsSource = data;
series.OpenMemberPath = "Open";
series.HighMemberPath = "High";
series.LowMemberPath = "Low";
series.CloseMemberPath = "Close";
series.VolumeMemberPath = "Volume";
series.XAxis = xAxis;
series.YAxis = yAxis;
chart.Axes.Add(xAxis);
chart.Axes.Add(yAxis);
chart.Series.Add(series);
Visual Basic の場合:
Dim data As New StockPriceData()
Dim yAxis As New NumericYAxis()
Dim xAxis As New CategoryXAxis()
xAxis.ItemsSource = data
xAxis.Label = "Date"
Dim series As New FinancialPriceSeries()
series.DisplayType = PriceDisplayType.Candlestick
series.ItemsSource = data
series.OpenMemberPath = "Open"
series.HighMemberPath = "High"
series.LowMemberPath = "Low"
series.CloseMemberPath = "Close"
series.VolumeMemberPath = "Volume"
series.XAxis = xAxis
series.YAxis = yAxis
chart.Axes.Add(xAxis)
chart.Axes.Add(yAxis)
chart.Series.Add(series)