设为首页收藏本站

 找回密码
 注册
查看: 2609|回复: 9
打印 上一主题 下一主题

NthCon函数测试 [复制链接]

Rank: 6Rank: 6

精华
0
UID
208212
积分
2006
帖子
103
主题
24
阅读权限
70
注册时间
2015-5-2
最后登录
2019-6-18
跳转到指定楼层
1#
发表于 2016-11-17 20:42:15 |只看该作者 |倒序浏览
//------------------------------------------------------------------------
// 简称: Test_NthCon
// 名称: NthCon函数测试
// 类别: 公式应用
// 类型: 用户应用
// 输出: Void
//------------------------------------------------------------------------
Params

        Numeric N(20);
Vars
        Bool Con(false);
        NumericSeries PreConIndex;
        NumericSeries BarNums;
        Numeric i(0);
        Numeric ReBars(0);
        Numeric HIF;
Begin
        Con = H[1]<=H[2];
        If(Con)
        {
                HIF = 1;
                BarNums = 0;
                PreConIndex = BarNums[1] + 1;
        }Else
        {
                HIF = -1;
                BarNums = BarNums + 1;
                PreConIndex = BarNums;
        }

        ReBars = BarNums;
        For i = 2 To N
        {
                ReBars = ReBars + PreConIndex[ReBars];
        }
       
        FileAppend("E:\Test_NthCon.Log","Date= "+Text(Date) +" H= "+Text(H)+" H[1]="+Text(H[1])+" H[2]="+TEXT(H[2])+" HIF="+Text(HIF)+" BarNums="+Text(BarNums)+"  PreConIndex="+Text(PreConIndex) + "  PreConIndex[ReBars]="+Text(PreConIndex[ReBars])+"  ReBars="+Text(ReBars));
End




附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 6Rank: 6

精华
0
UID
208212
积分
2006
帖子
103
主题
24
阅读权限
70
注册时间
2015-5-2
最后登录
2019-6-18
2#
发表于 2016-11-17 20:58:22 |只看该作者
For i = 2 To N
        {
                ReBars = ReBars + PreConIndex[ReBars];
                FileAppend("E:\Test_NthCon1.Log","Date= "+Text(Date) + " i="+Text(i) );
        }

以上语句输出结果如下
Date= 20161021 i=2
Date= 20161021 i=3
Date= 20161021 i=4
Date= 20161021 i=5
Date= 20161021 i=6
Date= 20161021 i=7
Date= 20161021 i=8
Date= 20161021 i=9
Date= 20161021 i=10
Date= 20161021 i=11
Date= 20161021 i=12
Date= 20161021 i=13
Date= 20161021 i=14
Date= 20161021 i=15
Date= 20161021 i=16
Date= 20161021 i=17
Date= 20161021 i=18
Date= 20161021 i=19
Date= 20161021 i=20
Date= 20161024 i=2
Date= 20161024 i=3
Date= 20161024 i=4
Date= 20161024 i=5
Date= 20161024 i=6
Date= 20161024 i=7
Date= 20161024 i=8
Date= 20161024 i=9
Date= 20161024 i=10
Date= 20161024 i=11
Date= 20161024 i=12
Date= 20161024 i=13
Date= 20161024 i=14
Date= 20161024 i=15
Date= 20161024 i=16
Date= 20161024 i=17
Date= 20161024 i=18
Date= 20161024 i=19
Date= 20161024 i=20
Date= 20161025 i=2
Date= 20161025 i=3
Date= 20161025 i=4
Date= 20161025 i=5
Date= 20161025 i=6
Date= 20161025 i=7
Date= 20161025 i=8
Date= 20161025 i=9
Date= 20161025 i=10
Date= 20161025 i=11
Date= 20161025 i=12
Date= 20161025 i=13
Date= 20161025 i=14
Date= 20161025 i=15
Date= 20161025 i=16
Date= 20161025 i=17
Date= 20161025 i=18
Date= 20161025 i=19
Date= 20161025 i=20
Date= 20161026 i=2
Date= 20161026 i=3
Date= 20161026 i=4
Date= 20161026 i=5
Date= 20161026 i=6
Date= 20161026 i=7
Date= 20161026 i=8
Date= 20161026 i=9
Date= 20161026 i=10
Date= 20161026 i=11
Date= 20161026 i=12
Date= 20161026 i=13
Date= 20161026 i=14
Date= 20161026 i=15
Date= 20161026 i=16
Date= 20161026 i=17
Date= 20161026 i=18
Date= 20161026 i=19
Date= 20161026 i=20
Date= 20161027 i=2
Date= 20161027 i=3
Date= 20161027 i=4
Date= 20161027 i=5
Date= 20161027 i=6
Date= 20161027 i=7
Date= 20161027 i=8
Date= 20161027 i=9
Date= 20161027 i=10
Date= 20161027 i=11
Date= 20161027 i=12
Date= 20161027 i=13
Date= 20161027 i=14
Date= 20161027 i=15
Date= 20161027 i=16
Date= 20161027 i=17
Date= 20161027 i=18
Date= 20161027 i=19
Date= 20161027 i=20
Date= 20161028 i=2
Date= 20161028 i=3
Date= 20161028 i=4
Date= 20161028 i=5
Date= 20161028 i=6
Date= 20161028 i=7
Date= 20161028 i=8
Date= 20161028 i=9
Date= 20161028 i=10
Date= 20161028 i=11
Date= 20161028 i=12
Date= 20161028 i=13
Date= 20161028 i=14
Date= 20161028 i=15
Date= 20161028 i=16
Date= 20161028 i=17
Date= 20161028 i=18
Date= 20161028 i=19
Date= 20161028 i=20
Date= 20161031 i=2
Date= 20161031 i=3
Date= 20161031 i=4
Date= 20161031 i=5
Date= 20161031 i=6
Date= 20161031 i=7
Date= 20161031 i=8
Date= 20161031 i=9
Date= 20161031 i=10
Date= 20161031 i=11
Date= 20161031 i=12
Date= 20161031 i=13
Date= 20161031 i=14
Date= 20161031 i=15
Date= 20161031 i=16
Date= 20161031 i=17
Date= 20161031 i=18
Date= 20161031 i=19
Date= 20161031 i=20
Date= 20161101 i=2
Date= 20161101 i=3
Date= 20161101 i=4
Date= 20161101 i=5
Date= 20161101 i=6
Date= 20161101 i=7
Date= 20161101 i=8
Date= 20161101 i=9
Date= 20161101 i=10
Date= 20161101 i=11
Date= 20161101 i=12
Date= 20161101 i=13
Date= 20161101 i=14
Date= 20161101 i=15
Date= 20161101 i=16
Date= 20161101 i=17
Date= 20161101 i=18
Date= 20161101 i=19
Date= 20161101 i=20
Date= 20161102 i=2
Date= 20161102 i=3
Date= 20161102 i=4
Date= 20161102 i=5
Date= 20161102 i=6
Date= 20161102 i=7
Date= 20161102 i=8
Date= 20161102 i=9
Date= 20161102 i=10
Date= 20161102 i=11
Date= 20161102 i=12
Date= 20161102 i=13
Date= 20161102 i=14
Date= 20161102 i=15
Date= 20161102 i=16
Date= 20161102 i=17
Date= 20161102 i=18
Date= 20161102 i=19
Date= 20161102 i=20
Date= 20161103 i=2
Date= 20161103 i=3
Date= 20161103 i=4
Date= 20161103 i=5
Date= 20161103 i=6
Date= 20161103 i=7
Date= 20161103 i=8
Date= 20161103 i=9
Date= 20161103 i=10
Date= 20161103 i=11
Date= 20161103 i=12
Date= 20161103 i=13
Date= 20161103 i=14
Date= 20161103 i=15
Date= 20161103 i=16
Date= 20161103 i=17
Date= 20161103 i=18
Date= 20161103 i=19
Date= 20161103 i=20
Date= 20161104 i=2
Date= 20161104 i=3
Date= 20161104 i=4
Date= 20161104 i=5
Date= 20161104 i=6
Date= 20161104 i=7
Date= 20161104 i=8
Date= 20161104 i=9
Date= 20161104 i=10
Date= 20161104 i=11
Date= 20161104 i=12
Date= 20161104 i=13
Date= 20161104 i=14
Date= 20161104 i=15
Date= 20161104 i=16
Date= 20161104 i=17
Date= 20161104 i=18
Date= 20161104 i=19
Date= 20161104 i=20
Date= 20161107 i=2
Date= 20161107 i=3
Date= 20161107 i=4
Date= 20161107 i=5
Date= 20161107 i=6
Date= 20161107 i=7
Date= 20161107 i=8
Date= 20161107 i=9
Date= 20161107 i=10
Date= 20161107 i=11
Date= 20161107 i=12
Date= 20161107 i=13
Date= 20161107 i=14
Date= 20161107 i=15
Date= 20161107 i=16
Date= 20161107 i=17
Date= 20161107 i=18
Date= 20161107 i=19
Date= 20161107 i=20
Date= 20161108 i=2
Date= 20161108 i=3
Date= 20161108 i=4
Date= 20161108 i=5
Date= 20161108 i=6
Date= 20161108 i=7
Date= 20161108 i=8
Date= 20161108 i=9
Date= 20161108 i=10
Date= 20161108 i=11
Date= 20161108 i=12
Date= 20161108 i=13
Date= 20161108 i=14
Date= 20161108 i=15
Date= 20161108 i=16
Date= 20161108 i=17
Date= 20161108 i=18
Date= 20161108 i=19
Date= 20161108 i=20
Date= 20161109 i=2
Date= 20161109 i=3
Date= 20161109 i=4
Date= 20161109 i=5
Date= 20161109 i=6
Date= 20161109 i=7
Date= 20161109 i=8
Date= 20161109 i=9
Date= 20161109 i=10
Date= 20161109 i=11
Date= 20161109 i=12
Date= 20161109 i=13
Date= 20161109 i=14
Date= 20161109 i=15
Date= 20161109 i=16
Date= 20161109 i=17
Date= 20161109 i=18
Date= 20161109 i=19
Date= 20161109 i=20
Date= 20161110 i=2
Date= 20161110 i=3
Date= 20161110 i=4
Date= 20161110 i=5
Date= 20161110 i=6
Date= 20161110 i=7
Date= 20161110 i=8
Date= 20161110 i=9
Date= 20161110 i=10
Date= 20161110 i=11
Date= 20161110 i=12
Date= 20161110 i=13
Date= 20161110 i=14
Date= 20161110 i=15
Date= 20161110 i=16
Date= 20161110 i=17
Date= 20161110 i=18
Date= 20161110 i=19
Date= 20161110 i=20
Date= 20161111 i=2
Date= 20161111 i=3
Date= 20161111 i=4
Date= 20161111 i=5
Date= 20161111 i=6
Date= 20161111 i=7
Date= 20161111 i=8
Date= 20161111 i=9
Date= 20161111 i=10
Date= 20161111 i=11
Date= 20161111 i=12
Date= 20161111 i=13
Date= 20161111 i=14
Date= 20161111 i=15
Date= 20161111 i=16
Date= 20161111 i=17
Date= 20161111 i=18
Date= 20161111 i=19
Date= 20161111 i=20
Date= 20161114 i=2
Date= 20161114 i=3
Date= 20161114 i=4
Date= 20161114 i=5
Date= 20161114 i=6
Date= 20161114 i=7
Date= 20161114 i=8
Date= 20161114 i=9
Date= 20161114 i=10
Date= 20161114 i=11
Date= 20161114 i=12
Date= 20161114 i=13
Date= 20161114 i=14
Date= 20161114 i=15
Date= 20161114 i=16
Date= 20161114 i=17
Date= 20161114 i=18
Date= 20161114 i=19
Date= 20161114 i=20
Date= 20161115 i=2
Date= 20161115 i=3
Date= 20161115 i=4
Date= 20161115 i=5
Date= 20161115 i=6
Date= 20161115 i=7
Date= 20161115 i=8
Date= 20161115 i=9
Date= 20161115 i=10
Date= 20161115 i=11
Date= 20161115 i=12
Date= 20161115 i=13
Date= 20161115 i=14
Date= 20161115 i=15
Date= 20161115 i=16
Date= 20161115 i=17
Date= 20161115 i=18
Date= 20161115 i=19
Date= 20161115 i=20
Date= 20161116 i=2
Date= 20161116 i=3
Date= 20161116 i=4
Date= 20161116 i=5
Date= 20161116 i=6
Date= 20161116 i=7
Date= 20161116 i=8
Date= 20161116 i=9
Date= 20161116 i=10
Date= 20161116 i=11
Date= 20161116 i=12
Date= 20161116 i=13
Date= 20161116 i=14
Date= 20161116 i=15
Date= 20161116 i=16
Date= 20161116 i=17
Date= 20161116 i=18
Date= 20161116 i=19
Date= 20161116 i=20
Date= 20161117 i=2
Date= 20161117 i=3
Date= 20161117 i=4
Date= 20161117 i=5
Date= 20161117 i=6
Date= 20161117 i=7
Date= 20161117 i=8
Date= 20161117 i=9
Date= 20161117 i=10
Date= 20161117 i=11
Date= 20161117 i=12
Date= 20161117 i=13
Date= 20161117 i=14
Date= 20161117 i=15
Date= 20161117 i=16
Date= 20161117 i=17
Date= 20161117 i=18
Date= 20161117 i=19
Date= 20161117 i=20

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
208212
积分
2006
帖子
103
主题
24
阅读权限
70
注册时间
2015-5-2
最后登录
2019-6-18
3#
发表于 2016-11-17 22:28:39 |只看该作者
//------------------------------------------------------------------------
// 简称: Test_NthCon
// 名称: NthCon函数测试
// 类别: 公式应用
// 类型: 用户应用
// 输出: Void
//------------------------------------------------------------------------
Params
        Numeric N(20);
Vars
        Bool Con(false);
        NumericSeries PreConIndex;
        NumericSeries BarNums;
        Numeric i(0);
        Numeric ReBars(0);
        Numeric HIF;
Begin
        Con = H[1]<=H[2]; //设定逻辑条件H[1]<=H[2],这里Con由默认值(false)变为条件为真
        If(Con)//条件为真
        {
                HIF = 1;//赋值为1,表示条件为真
                BarNums = 0;//赋值BarNums为0
                PreConIndex = BarNums[1] + 1;//回溯BarNums的前一个值 + 1
                //一直为If(Con),则If(Con)的值一直为1
                //If(Con)为假之后又变为真时,则PreConIndex的值等于条件为假的累计次数 + 1
                FileAppend("E:\Test_NthCon1.Log"," Date= "+Text(Date) +" H= "+Text(H)+" H[1]= "+Text(H[1])+" H[2]= "+TEXT(H[2])+" HIF= "+Text(HIF)+" BarNums= "+Text(BarNums)+"  BarNums[1]= "+Text(BarNums[1]) + "  PreConIndex= "+Text(PreConIndex)+"  PreConIndex[ReBars]= "+Text(PreConIndex[ReBars]));
        }Else//条件为假
        {
                HIF = -1;//赋值为-1,表示条件为假
                BarNums = BarNums + 1;//计算条件为假的累计次数
                PreConIndex = BarNums;//将计算出来的条件为假的累计次数赋值给PreConIndex
                FileAppend("E:\Test_NthCon2.Log"," Date= "+Text(Date) +" H= "+Text(H)+" H[1]= "+Text(H[1])+" H[2]= "+TEXT(H[2])+" HIF= "+Text(HIF)+" BarNums= "+Text(BarNums)+"  PreConIndex= "+Text(PreConIndex));
        }

        ReBars = BarNums;//将BarNums的值赋值给ReBars
        FileAppend("E:\Test_NthCon3.Log","Date= "+Text(Date) + " ReBars="+Text(BarNums) );
        For i = 2 To N//在每一根Bar上都从“i = 2 To N” 计算 “ReBars = ReBars + PreConIndex[ReBars]”的值
        {
                FileAppend("E:\Test_NthCon4.Log","Date= "+Text(Date) + " i="+Text(i) );
                ReBars = ReBars + PreConIndex[ReBars];
                //条件不存在时,初始值为ReBars=N-1
                //PreConIndex[ReBars]总是等于1
                //条件为假时,回溯值累加1
                //条件为真是,回溯值累加0
                FileAppend("E:\Test_NthCon5.Log","Date= "+Text(Date) + " ReBars="+Text(BarNums) );
        }
       
        FileAppend("E:\Test_NthCon6.Log","Date= "+Text(Date) +" H= "+Text(H)+" H[1]= "+Text(H[1])+" H[2]= "+TEXT(H[2])+" HIF= "+Text(HIF)+" BarNums= "+Text(BarNums)+"  PreConIndex= "+Text(PreConIndex) + "  PreConIndex[ReBars]= "+Text(PreConIndex[ReBars])+"  ReBars= "+Text(ReBars));
End

使用道具 举报

Rank: 2

精华
0
UID
173393
积分
107
帖子
89
主题
10
阅读权限
30
注册时间
2013-10-9
最后登录
2023-4-4
4#
发表于 2016-11-17 23:04:41 |只看该作者
楼主想说明什么呢?

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
208212
积分
2006
帖子
103
主题
24
阅读权限
70
注册时间
2015-5-2
最后登录
2019-6-18
5#
发表于 2016-11-17 23:10:04 |只看该作者
本帖最后由 china_lizhi 于 2016-11-17 23:29 编辑

//------------------------------------------------------------------------
// 简称: Test_NthCon
// 名称: NthCon函数测试
// 类别: 公式应用
// 类型: 用户应用
// 输出: Void
//------------------------------------------------------------------------
Params
        Numeric N(20);
Vars
        Bool Con(false);
        NumericSeries PreConIndex;
        NumericSeries BarNums;
        Numeric i(0);
        Numeric ReBars(0);
        Numeric HIF;
Begin
        Con = H[1]<=H[2]; //设定逻辑条件H[1]<=H[2],这里Con由默认值(false)变为条件为真
        If(Con)//条件为真
        {
                HIF = 1;//赋值为1,表示条件为真
                BarNums = 0;//赋值BarNums为0
                PreConIndex = BarNums[1] + 1;//回溯BarNums的前一个值 + 1
                //一直为If(Con),则If(Con)的值一直为1
                //If(Con)为假之后又变为真时,则PreConIndex的值等于条件为假的累计次数 + 1
                FileAppend("E:\Test_NthCon1.Log"," Date= "+Text(Date) +" H= "+Text(H)+" H[1]= "+Text(H[1])+" H[2]= "+TEXT(H[2])+" HIF= "+Text(HIF)+" BarNums= "+Text(BarNums)+"  BarNums[1]= "+Text(BarNums[1]) + "  PreConIndex= "+Text(PreConIndex)+"  PreConIndex[ReBars]= "+Text(PreConIndex[ReBars]));
                Commentary("真"+" 《HIF = "+Text(HIF)+" 》《BarNums = 0为:"+text(BarNums) +" 》《BarNums[1]为:"+Text(BarNums[1])+" 》《PreConIndex= BarNums[1] + 1为:"+Text(PreConIndex)+"》");
        }Else//条件为假
        {
                HIF = -1;//赋值为-1,表示条件为假
                BarNums = BarNums + 1;//计算条件为假的累计次数
                PreConIndex = BarNums;//将计算出来的条件为假的累计次数赋值给PreConIndex
                FileAppend("E:\Test_NthCon2.Log"," Date= "+Text(Date) +" H= "+Text(H)+" H[1]= "+Text(H[1])+" H[2]= "+TEXT(H[2])+" HIF= "+Text(HIF)+" BarNums= "+Text(BarNums)+"  PreConIndex= "+Text(PreConIndex));
                Commentary("假"+" 《HIF = "+Text(HIF)+"》 《BarNums =  BarNums + 1为:"+text(BarNums) +" 》《PreConIndex=  BarNums为:"+Text(PreConIndex)+"》");
        }

        ReBars = BarNums;//将BarNums的值赋值给ReBars
        FileAppend("E:\Test_NthCon3.Log","Date= "+Text(Date) + " ReBars="+Text(BarNums) );
        Commentary("ReBars = BarNums为:"+Text(BarNums));
        For i = 2 To N//在每一根Bar上都从“i = 2 To N” 计算 “ReBars = ReBars + PreConIndex[ReBars]”的值
        {
                FileAppend("E:\Test_NthCon4.Log","Date= "+Text(Date) + " i="+Text(i) );
                ReBars = ReBars + PreConIndex[ReBars];
                //条件不存在时,初始值为ReBars=N-1
                //PreConIndex[ReBars]总是等于1
                //条件为假时,回溯值累加1
                //条件为真是,回溯值累加0
                FileAppend("E:\Test_NthCon5.Log","Date= "+Text(Date) + " ReBars="+Text(BarNums));
                //Commentary("PreConIndex[ReBars]为:"+Text(PreConIndex[ReBars]));
                //Commentary(" ReBars= ReBars + PreConIndex[ReBars]为:"+Text(BarNums));
        }
        Commentary("Return ReBars 为:"+Text(ReBars));
        FileAppend("E:\Test_NthCon6.Log","Date= "+Text(Date) +" H= "+Text(H)+" H[1]= "+Text(H[1])+" H[2]= "+TEXT(H[2])+" HIF= "+Text(HIF)+" BarNums= "+Text(BarNums)+"  PreConIndex= "+Text(PreConIndex) + "  PreConIndex[ReBars]= "+Text(PreConIndex[ReBars])+"  ReBars= "+Text(ReBars));
Commentary("NthCon(Con,1)="+Text(NthCon(Con,1)));
        Commentary("NthCon(Con,2)="+Text(NthCon(Con,2)));
        Commentary("NthCon(Con,3)="+Text(NthCon(Con,3)));
        Commentary("NthCon(Con,4)="+Text(NthCon(Con,4)));
        Commentary("NthCon(Con,5)="+Text(NthCon(Con,5)));
End

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
208212
积分
2006
帖子
103
主题
24
阅读权限
70
注册时间
2015-5-2
最后登录
2019-6-18
6#
发表于 2016-11-17 23:10:54 |只看该作者
ego90289698 发表于 2016-11-17 23:04
楼主想说明什么呢?


体会TB工程师的编程思路与技巧及TB的运行机制

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
208212
积分
2006
帖子
103
主题
24
阅读权限
70
注册时间
2015-5-2
最后登录
2019-6-18
7#
发表于 2016-11-17 23:32:47 |只看该作者
本帖最后由 china_lizhi 于 2016-11-17 23:34 编辑

终于彻底弄明白NthCon函数了。TB的功能挺强大但指南与帮助文档太弱了——把用户不当小白看待
希望TB在用户指南、帮助文档上多下功夫,这即对用户用好TB有帮助,同时对扩大TB的用户、增加TB公司的营业收入有好处。

使用道具 举报

Rank: 2

精华
0
UID
173393
积分
107
帖子
89
主题
10
阅读权限
30
注册时间
2013-10-9
最后登录
2023-4-4
8#
发表于 2016-11-17 23:39:59 |只看该作者
china_lizhi 发表于 2016-11-17 23:32
终于彻底弄明白NthCon函数了。TB的功能挺强大但指南与帮助文档太弱了——把用户不当小白看待
希望TB在用户 ...

没做盘呢?

使用道具 举报

Rank: 2

精华
0
UID
173393
积分
107
帖子
89
主题
10
阅读权限
30
注册时间
2013-10-9
最后登录
2023-4-4
9#
发表于 2016-11-17 23:42:34 |只看该作者
china_lizhi 发表于 2016-11-17 23:32
终于彻底弄明白NthCon函数了。TB的功能挺强大但指南与帮助文档太弱了——把用户不当小白看待
希望TB在用户 ...

指教下:NthCon 函数找满足条件的BAR ,是往前,往后,本BAR ,一起找的。
         能改写成只往前回溯找吗? 我需要实时判断。它这个函数往后找或者在本BAR找 ,都是算”未来“了。

使用道具 举报

Rank: 2

精华
0
UID
173393
积分
107
帖子
89
主题
10
阅读权限
30
注册时间
2013-10-9
最后登录
2023-4-4
10#
发表于 2016-11-17 23:44:23 |只看该作者
我一直在感受奇怪的开仓函数。

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-7 22:49

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部