📄 oscillators.aspx
字号:
<%@ Page Language="C#" Description="dotnetCHARTING Component" %>
<%@ Register TagPrefix="dotnet" Namespace="dotnetCHARTING" Assembly="dotnetCHARTING"%>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Drawing2D" %>
<HTML>
<HEAD>
<TITLE>.netCHARTING Sample</TITLE>
<script runat="server">
void Page_Load(Object sender,EventArgs e)
{
// This sample demonstrates the use of financial indicators : Momentum and MoneyFlowIndexOverPeriod
// The Financial Chart
FinancialChart.Title="Financial Chart";
FinancialChart.TempDirectory="temp";
FinancialChart.Debug=true;
FinancialChart.ShadingEffect = true;
FinancialChart.LegendBox.Template ="%icon %name";
FinancialChart.Size="800X600";
FinancialChart.TitleBox.Position = TitleBoxPosition.FullWithLegend;
FinancialChart.DefaultElement.Marker.Visible = false;
// For financial indicators the time scale is inverted (i.e. the first element of the series is the newest)
FinancialChart.XAxis.InvertScale = true;
FinancialChart.YAxis.Label.Text = "Price (USD)";
FinancialChart.YAxis.FormatString = "currency";
FinancialChart.YAxis.Scale = Scale.Range;
// Modify the x axis labels.
FinancialChart.XAxis.Scale = Scale.Time;
FinancialChart.XAxis.TimeInterval = TimeInterval.Day;
FinancialChart.XAxis.TimeScaleLabels.DayFormatString = "o";
FinancialChart.XAxis.TimeScaleLabels.RangeIntervals.Add(TimeInterval.Month);
FinancialChart.XAxis.TimeScaleLabels.MonthFormatString = "MMM";
DataEngine priceDataEngine = 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 (2001,6,1);
priceDataEngine.EndDate = new DateTime (2001,7,30);
// Here we import data from the FinancialIBM table from within chartsample.mdb
priceDataEngine.SqlStatement = @"SELECT [Date], [High], [Low],[Close],[Volume],[Open] FROM FinancialIBM WHERE Date >= #STARTDATE# AND Date <= #ENDDATE# ORDER BY Date Desc";
priceDataEngine.DataFields = "xAxis=Date,High=High,Low=Low,Close=Close,Volume=Volume,Open=Open";
SeriesCollection sc = priceDataEngine.GetSeries ();
Series prices = null;
if(sc.Count>0)
prices = sc[0];
else
return;
prices.Name = "Prices";
prices.DefaultElement.ToolTip="L:%Low | H:%High";
prices.Type = SeriesTypeFinancial.CandleStick;
CalendarPattern cp = new CalendarPattern (TimeInterval.Day, TimeInterval.Week, "0000001");
prices.Trim (cp, ElementValue.XDateTime);
FinancialChart.SeriesCollection.Add (prices);
// Take off the marker
// Money flow chart area
ChartArea moneyFlowChartArea = new ChartArea ();
moneyFlowChartArea.HeightPercentage = 20;
moneyFlowChartArea.YAxis.Label.Text = "Money Flow";
FinancialChart.ExtraChartAreas.Add (moneyFlowChartArea);
// MoneyFlowIndexOverPeriod - <P>Evaluates the Money Flow Index (MFI) measures the strength of money flowing
// in and out of a security over a given period.
Series moneyFlowOverPeriod = FinancialEngine.MoneyFlowIdxOverPeriod(prices,10);
moneyFlowOverPeriod.Type = SeriesType.Spline;
moneyFlowOverPeriod.DefaultElement.Color = Color.FromArgb(150,Color.Red);
moneyFlowChartArea.SeriesCollection.Add (moneyFlowOverPeriod);
// Momentum chart area
ChartArea momentumChartArea = new ChartArea ();
momentumChartArea.HeightPercentage = 20;
momentumChartArea.YAxis.Label.Text = "Momentum";
FinancialChart.ExtraChartAreas.Add (momentumChartArea);
// Momentum - We evaluate the 10-day momentum which is simply the difference between today's
// closing price and the close price 10 days ago.
Series momentum = FinancialEngine.Momentum(prices,10);
momentum.Type = SeriesType.Spline;
momentum.DefaultElement.Color = Color.FromArgb(200,Color.Blue);
momentumChartArea.SeriesCollection.Add(momentum);
}
</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 + -