用.NET语言写出计算股票技术指标BRAR,返回值为datatable类型,double类型全部四舍五入保留3位小数,请写好函数和参数的详细注释。
时间: 2023-05-20 15:01:13 浏览: 182
股票公式函数.rar
以下是用.NET语言编写计算股票技术指标BRAR的函数及其参数详细注释:
```
/// <summary>
/// 计算股票技术指标BRAR
/// </summary>
/// <param name="high">最高价数组</param>
/// <param name="low">最低价数组</param>
/// <param name="close">收盘价数组</param>
/// <param name="vol">成交量数组</param>
/// <param name="n">计算周期</param>
/// <returns>返回值为datatable类型,double类型全部四舍五入保留3位小数</returns>
public static DataTable CalculateBRAR(double[] high, double[] low, double[] close, double[] vol, int n)
{
// 参数说明:
// high:最高价数组
// low:最低价数组
// close:收盘价数组
// vol:成交量数组
// n:计算周期
// 返回值为datatable类型,double类型全部四舍五入保留3位小数
// 具体计算过程请参考股票技术指标BRAR的计算方法
// 这里不再赘述
DataTable dt = new DataTable();
dt.Columns.Add("BR", typeof(double));
dt.Columns.Add("AR", typeof(double));
for (int i = 0; i < high.Length; i++)
{
if (i < n - 1)
{
dt.Rows.Add(DBNull.Value, DBNull.Value);
}
else
{
double br = 0;
double ar = 0;
for (int j = i - n + 1; j <= i; j++)
{
double mid = (high[j] + low[j]) / 2;
if (mid > close[j - 1])
{
br += vol[j];
}
else if (mid < close[j - 1])
{
ar += vol[j];
}
}
br /= n;
ar /= n;
dt.Rows.Add(Math.Round(br, 3), Math.Round(ar, 3));
}
}
return dt;
}
```
阅读全文