一些易盛函数的误区,只发现这些,其他的慢慢来
首先是1.currentbar,本意“当前公式应用商品当前Bar的索引值,第一个Bar返回值为0,以下其他Bar递增 ”请不要理解为从当天开始,这是从品种上市之日起计算,我不知道设计的时候怎么考虑的,但是希望大家不要有无去。如果要用今天的第一个算起,就用 BarsSinceToday;
2.HighestFC,本意“该函数计算指定周期内的数值型序列值的最高值,返回值为浮点数。” 不要用来计算N周期内最高值,如果计算用 Highest;
不懂帮顶 {:soso_e113:} {:soso_e181:}楼主是编程方面的高手 //--------------------------------------------------------------
// 简称: HighestFC
// 名称: 快速计算最高
// 类型: 用户函数
// 输出: Numeric
//--------------------------------------------------------------
Params
NumericSeries Price(1);
Numeric Length(10);
Vars
Numeric HighestValue;
Numeric ExtremesBar;
Begin
HighestValue = Extremes(Price, Length, True, ExtremesBar);
Return HighestValue;
End
//--------------------------------------------------------------
// 简称: Extremes
// 名称: 求极值
// 类型: 用户函数
// 输出: Numeric
//--------------------------------------------------------------
Params
NumericSeries Price;
Numeric Length;
Bool bMax;
NumericRef ExtremeBar;
Vars
NumericSeries MyVal;
NumericSeries MyBar;
Numeric i;
Begin
MyVal = Price;
MyBar = 0;
If ( CurrentBar <= Length - 1 || MyBar == Length - 1)
{
for i = 1 to Length - 1
{
If (bMax )
{
If ( Price > MyVal)
{
MyVal = Price;
MyBar = i;
}
}Else
{
If ( Price < MyVal)
{
MyVal = Price;
MyBar = i;
}
}
}
}Else
{
If ( bMax )
{
If ( Price >= MyVal)
{
MyVal = Price;
MyBar = 0;
}Else
{
MyVal = MyVal;
MyBar = MyBar + 1;
}
}Else
{
If ( Price <= MyVal)
{
MyVal = Price;
MyBar = 0;
}Else
{
MyVal = MyVal;
MyBar = MyBar + 1;
}
}
}
ExtremeBar = MyBar;
Return MyVal;
End
//--------------------------------------------------------------
// 简称: Highest
// 名称: 求最高
// 类型: 用户函数
// 输出: Numeric
//--------------------------------------------------------------
Params
NumericSeries Price(0);
Numeric Length(5);
Vars
Numeric HighestValue;
Numeric i;
Begin
HighestValue = Price;
for i=1 to Length - 1
{
If(Price > HighestValue)
HighestValue = Price;
}
Return HighestValue;
End 这两个函数的作用是不一样的 Highest用于数值计算比较简单 初级炒单 发表于 2012-5-25 12:05 static/image/common/back.gif
Highest用于数值计算比较简单
一个的参数是序列
一个的参数是数组
HighestFC主要是在图表上用的
Highest是纯数组计算
HigestFC和Highest都是计算N周期的最高值。功能相同。但是HigestFC的算法效率高,执行速度快,所以叫做xxxxFC,FC就是(Fast Caluate快速计算的意思)。
HigestFC函数以前版本曾经有Bug,所以计算结果和Highest不一致,但该Bug已经修改,可能你的客户端版本较低,到www.esunny.com.cn下载最新版本试试
经过测试,HighestFC确实有点问题。已经修复了。最近两天会部署到升级服务器上,谢谢批评指正 {:soso_e163:} {:soso_e100:} 学习!消化ing,新手,记得头发晕 来学习的~~~楼主辛苦了! 学习了,谢谢! 楼主是高手
页:
[1]