📄 finiteimpulseresponse.aspx
字号:
<%@ Page Language="VB" Debug="true" Description="dotnetCHARTING Component" %>
<%@ Register TagPrefix="dotnet" Namespace="dotnetCHARTING" Assembly="dotnetCHARTING"%>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Drawing2D" %>
<%@ Import Namespace="dotnetCHARTING"%>
<HTML>
<HEAD>
<TITLE>.netCHARTING Sample</TITLE>
<script runat="server">
Sub Page_Load(sender As [Object], e As EventArgs)
' This sample demonstrates the use of financial indicator Finite Impulse Response
' The Financial Chart
FinancialChart.Title = "Company X Financial Analysis"
FinancialChart.TempDirectory = "temp"
FinancialChart.Debug = True
FinancialChart.LegendBox.Template = "%icon %name"
FinancialChart.Size = "850X400"
FinancialChart.YAxis.Label.Text = "Price (USD)"
FinancialChart.YAxis.FormatString = "currency"
FinancialChart.YAxis.Scale = Scale.Range
FinancialChart.TitleBox.Position = TitleBoxPosition.FullWithLegend
FinancialChart.DefaultSeries.DefaultElement.Marker.Visible = False
FinancialChart.DefaultSeries.Type = SeriesType.Spline
FinancialChart.ChartAreaLayout.Mode = ChartAreaLayoutMode.Vertical
' Modify the x axis labels.
FinancialChart.XAxis.Scale = Scale.Time
FinancialChart.XAxis.TimeInterval = TimeInterval.Day
FinancialChart.XAxis.TimeIntervalAdvanced.Multiplier = 5
FinancialChart.XAxis.TimeScaleLabels.DayFormatString = "o"
FinancialChart.XAxis.TimeScaleLabels.RangeIntervals.Add(TimeInterval.Month)
FinancialChart.XAxis.TimeScaleLabels.MonthFormatString = "MMM"
' For Finite Impulse Response indicator the time scale is inverted (i.e. the first element of the series is the newest)
FinancialChart.XAxis.InvertScale = True
Dim priceDataEngine As New DataEngine()
priceDataEngine.ChartObject = FinancialChart
priceDataEngine.ChartType = ChartType.Financial
priceDataEngine.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;data source=" + Server.MapPath("../../database/chartsample.mdb")
priceDataEngine.DateGrouping = TimeInterval.Day
priceDataEngine.StartDate = New DateTime(2002, 1, 1, 0, 0, 0)
priceDataEngine.EndDate = New DateTime(2002, 2, 28, 23, 59, 59)
' Here we import data from the FinancialMicrosoft table from within chartsample.mdb
priceDataEngine.SqlStatement = "SELECT [Date],[Open],[Close],[High],[Low] FROM FinancialMicrosoft WHERE date >= #STARTDATE# AND date <= #ENDDATE# ORDER BY Date DESC"
priceDataEngine.DataFields = "xAxis=Date,Open=Open,Close=Close,High=High,Low=Low"
Dim sc As SeriesCollection = priceDataEngine.GetSeries()
Dim prices As Series = Nothing
If sc.Count > 0 Then
prices = sc(0)
Else
Return
End If
prices.Name = "Prices"
'prices.DefaultElement.ShowValue=true;
prices.DefaultElement.ToolTip = "L:%Low | H:%High"
prices.DefaultElement.SmartLabel.Text = "O:%Open | C:%Close"
prices.Type = SeriesTypeFinancial.Bar
Dim cp As New CalendarPattern(TimeInterval.Day, TimeInterval.Week, "0000001")
prices.Trim(cp, ElementValue.XDateTime)
FinancialChart.SeriesCollection.Add(prices)
' AveragePrice financial indicator which is arithmetic average of the High, Low, Close and Open price
' for a trading day.
Dim averagePrice As Series = FinancialEngine.AveragePrice(prices)
averagePrice.DefaultElement.Color = Color.FromArgb(49, 99, 49)
FinancialChart.SeriesCollection.Add(averagePrice)
' Finite Impulse Response financial indicator.
Dim weights() As Double = {0.1, 0.2, 0.3, 0.4}
Dim firIndicator As Series = FinancialEngine.FiniteImpulseResponse(prices, ElementValue.High, weights)
firIndicator.DefaultElement.Color = Color.FromArgb(126, 125, 255)
FinancialChart.SeriesCollection.Add(firIndicator)
End Sub 'Page_Load
</script>
</HEAD>
<BODY>
<DIV align="center">
<dotnet:Chart id="FinancialChart" runat="server"/>
</dotnet:Chart>
</DIV>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -