C#MSChart蜡烛棒和;移动平均线图。错误:;公式错误-该期间没有足够的数据点
你不能在自己的岗位上投票 0 我试图在每日数据上创建一个MA(15)的股票蜡烛 我可以创建一个图表与OHLC酒吧没有任何问题 但当我开始为MA使用DataManipular.FinancialFormula时,我不断得到“公式错误-该期间没有足够的数据点”的错误 有人能帮我吗?谢谢 这是代码C#MSChart蜡烛棒和;移动平均线图。错误:;公式错误-该期间没有足够的数据点,c#,mschart,moving-average,candlestick-chart,C#,Mschart,Moving Average,Candlestick Chart,你不能在自己的岗位上投票 0 我试图在每日数据上创建一个MA(15)的股票蜡烛 我可以创建一个图表与OHLC酒吧没有任何问题 但当我开始为MA使用DataManipular.FinancialFormula时,我不断得到“公式错误-该期间没有足够的数据点”的错误 有人能帮我吗?谢谢 这是代码 DataSet ds = new DataSet(); SqlConnection connection = new SqlConnection(); con
DataSet ds = new DataSet();
SqlConnection connection = new SqlConnection();
connection.ConnectionString = @"Data Source=XXX;Database=Stock;Integrated Security=SSPI;";
connection.Open();
string sql = "Select datestamp, highprice, lowprice,openprice, closeprice from daymarketdata where tickname='GS' and datestamp>'1/1/2011' order by datestamp asc";
System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand(sql, connection);
cmd.CommandType = CommandType.Text;
SqlDataAdapter sa = new SqlDataAdapter();
sa.SelectCommand = cmd;
sa.Fill(ds, "Cos");
connection.Close();
chart1.Series["Daily"].ChartType = SeriesChartType.Candlestick;
chart1.DataSource = sa;
chart1.DataBind();
chart1.Series["Daily"].XValueMember = "DateStamp";
chart1.Series["Daily"].YValueMembers = "HighPrice, LowPrice, OpenPrice, ClosePrice";
chart1.Series["Daily"].IsXValueIndexed = true;
chart1.Series["Daily"].BorderColor = System.Drawing.Color.Black;
chart1.Series["Daily"].Color = System.Drawing.Color.Black;
chart1.Series["Daily"].CustomProperties = "PriceDownColor=Green, PriceUpColor=Red";
chart1.Series["Daily"].XValueType = ChartValueType.Date;
chart1.ChartAreas[0].AxisY.Minimum = 100;
chart1.ChartAreas[0].AxisY.Maximum = 180;
chart1.DataManipulator.FinancialFormula(FinancialFormula.MovingAverage, "15", "Daily", "MA");
请加上
Chart1.DataManipular.IsStartFromFirst=True虽然我已经很老了,但我认为我离开了我的贡献,因为我一直在与 同样的错误信息和发布的代码实际上为我指明了正确的方向 我认为在设置XValueMember和YValueMembers之后,chart1.DataBind()需要移动。像这样:
chart1.Series["Daily"].XValueMember = "DateStamp";
chart1.Series["Daily"].YValueMembers = "HighPrice, LowPrice, OpenPrice, ClosePrice";
chart1.DataBind();
当应用财务公式时,数据将不会加载到series对象中。
不过,您可能会遇到其他问题;) 你确定你的系列赛得分超过1-2分吗?移动平均需要计算最小值…正如我所说,“我可以用OHLC条创建一个图表,没有任何问题。”当我添加MA公式时,它显示了错误。我有超过3000个数据点显示。我还尝试将日期转换为datediff(“2011年1月1日”),因此x轴是数字isstead of date。同样的错误。我也使用过滤器忽略了前15个周期,仍然是相同的错误。我不知道为什么会出现这个错误。