- 精华
- 0
- 在线时间
- 26 小时
- UID
- 111129
- 积分
- 36
- 帖子
- 8
- 阅读权限
- 10
- 注册时间
- 2012-6-22
- 最后登录
- 2016-2-23
- 精华
- 0
- UID
- 111129
- 积分
- 36
- 帖子
- 8
- 主题
- 7
- 阅读权限
- 10
- 注册时间
- 2012-6-22
- 最后登录
- 2016-2-23
|
本帖最后由 snake3342 于 2012-6-27 11:12 编辑
Params
Vars
Numeric periodth;
Numeric maxperiodth;/*本k线为本日内第periodth个K线,单日k线个数*/
Numeric prelow;
Numeric prehigh;
Numeric preclose;
Numeric preopen;
/*昨日最低价prelow,昨日最高价prehigh,昨日收盘价,昨日开盘价
单日最大k线个数global[0]
本k线序号global[1],
昨日最低global[2],
昨日最高global[3],
昨日收盘价global[4],
昨日开盘价global[5],把全局变量在注释里称呼为global[],方便理解
*/
Begin
if (Time<=0.0900)/*如果本K线为本日第1根*/
{SetGlobalVar(0,GetGlobalVar(1));/*将昨日最后一根K线的序号,作为单日最大K线个数,存入全局变量0*/
SetGlobalVar(1,1);}/*本K线设为本日第1根*/
Else/*如果本k线不是今天第一个*/
SetGlobalVar(1,GetGlobalVar(1)+1);/*将全局变量1,即K线序数,在上一根的基础上+1*/
periodth=GetGlobalVar(1);/*本k线序数为当日第n个*/
maxperiodth=GetGlobalVar(0);/*单日最大k线个数*/
prelow=GetGlobalVar(2);
prehigh=GetGlobalVar(3);
preopen=GetGlobalVar(5);
preclose=GetGlobalVar(4);
/*将全局变量2,3,5,4的值分别赋予昨日最低,最高,开盘,收盘*/
PlotString("preopen",text(preopen),preopen,Cyan);
PlotString("preclose",text(preclose),preclose,Yellow);
PlotString("prelow",text(prelow),prelow,blue);
PlotString("prehigh",text(prehigh),prehigh,Red);
IF (maxperiodth==periodth)/*如果本k线是今天最后一个*/
{
SetGlobalVar(5,Open[maxperiodth-1]);/*设全局变量5为今天开盘价*/
SetGlobalVar(4,Close);/*设全局变量4为今天收盘价*/
SetGlobalVar(3,Max(high,highest(high,maxperiodth-1)));/*设全局变量3为今天最高价,编译时提示这里if里面用序列变量问题,前面的行都正常*/
SetGlobalVar(2,Min(low,lowest(low,maxperiodth-1)));/*设全局变量2为今天最低价,编译时提示这里if里面用序列变量问题*/
}
End |
|