设为首页收藏本站

 找回密码
 注册
楼主: nopain
打印 上一主题 下一主题

跨周期情况下的均线计算。 [复制链接]

Rank: 1

精华
0
UID
220227
积分
11
帖子
9
主题
0
阅读权限
10
注册时间
2015-9-21
最后登录
2015-11-29
71#
发表于 2015-10-23 10:11:27 |只看该作者
请教先Nopain,函数TransMinsData是什么意思呢?能不能帮解释下,万分感谢

使用道具 举报

Rank: 1

精华
0
UID
220227
积分
11
帖子
9
主题
0
阅读权限
10
注册时间
2015-9-21
最后登录
2015-11-29
72#
发表于 2015-10-24 11:46:52 |只看该作者
请问版主,复制代码编译,提示错误编号W0201,包含序列函数,可能存在潜在风险,如附件,这个该怎么解决呢?谢谢



Params
        Numeric Length(10);
Vars
        Numeric MyOpen;
        Numeric MyHigh;
        Numeric MyLow;
        Numeric MyClose;
        NumericSeries MyAvgPrice;
        
        Numeric SumValue(0);
        Numeric Value1;
        Numeric i;
Begin
        MyOpen = DataConvert(Open,"min",5,"Open");
        MyHigh = DataConvert(High,"min",5,"High");
        MyLow = DataConvert(Low,"min",5,"Low");
        MyClose = DataConvert(Close,"min",5,"Close");
        MyAvgPrice = (MyOpen+MyHigh+MyLow+MyClose)*0.25;
        
        For i = Length-1 DownTo 0
        {
                Value1 = TransMinsData(MyAvgPrice,5,i);
                SumValue = SumValue + Value1;
        }
        PlotNumeric("AvgPrice",SumValue/Length);
End
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

使用道具 举报

Rank: 1

精华
0
UID
216672
积分
5
帖子
3
主题
0
阅读权限
10
注册时间
2015-8-11
最后登录
2016-1-12
73#
发表于 2015-12-21 18:44:40 |只看该作者
崇拜,新手学习中。

使用道具 举报

Rank: 2

精华
0
UID
223286
积分
81
帖子
49
主题
11
阅读权限
30
注册时间
2015-11-17
最后登录
2021-3-10
74#
发表于 2016-4-27 15:20:23 |只看该作者
请问一下,那个transmindate是要实现什么功能

使用道具 举报

Rank: 1

精华
0
UID
229582
积分
25
帖子
21
主题
3
阅读权限
10
注册时间
2016-3-9
最后登录
2016-12-7
75#
发表于 2016-5-3 10:43:35 |只看该作者
怎么感觉  开拓者的跨周期 这么复杂呢  老师们能不能 封装几个函数 直接调用时间函数 就可以跨周期引用

使用道具 举报

Rank: 2

精华
0
UID
114590
积分
68
帖子
22
主题
9
阅读权限
30
注册时间
2013-1-3
最后登录
2016-8-1
76#
发表于 2016-7-12 23:55:12 |只看该作者
时间来到了2016年,请问下NOPAIN楼主是否还在?求教下现在V5旗舰版中,在小时线上需要知道日线数据有没有更好的办法了

使用道具 举报

Rank: 1

精华
0
UID
230338
积分
27
帖子
26
主题
0
阅读权限
10
注册时间
2016-3-18
最后登录
2017-4-30
77#
发表于 2016-9-26 18:05:24 |只看该作者

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
208212
积分
2006
帖子
103
主题
24
阅读权限
70
注册时间
2015-5-2
最后登录
2019-6-18
78#
发表于 2016-10-27 15:11:15 |只看该作者
本帖最后由 china_lizhi 于 2016-10-27 22:51 编辑
zzhong 发表于 2008-12-30 16:53
这样算走完了吧?

Params


?

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
208212
积分
2006
帖子
103
主题
24
阅读权限
70
注册时间
2015-5-2
最后登录
2019-6-18
79#
发表于 2016-10-27 22:50:29 |只看该作者
//------------------------------------------------------------------------
// 简称: Test_TransMinsData
// 名称: 测试TransMinsData
// 类别: 公式应用
// 类型: 用户应用
// 输出: Void
//------------------------------------------------------------------------
Params
        Numeric nMinSet(5);     //想按N分钟来处理,本例是5分钟,不能大于60
        Numeric MinsAgo(2);    //希望取多少个N分钟前的数据
Vars
        NumericSeries BarCnt;    //bar的数量统计,可回溯
        NumericSeries MinData;  //5分钟数据,可回溯
        NumericSeries MyMinData;
        Numeric i;  //循环变量
        Numeric j;  //中间变量
        Numeric nIndex(0);  //MinData的回溯索引号
        String Mystring;
Begin
        //IntPart 函数: 返回指定实数舍入后的整数值
        //Minute 函数: 返回当前Bar的分钟信息
        //求模运算符%  是指将两个数相除并只返回余数
        //===============计算并记录Bar的根数(从第一根到第五根循环计算并记录)======================
        If(IntPart(Minute%nMinSet)==0) //如果返回指定实数(Minute%nMinSet)舍入后的整数值等于0
        {
                BarCnt = 1; //每当满5分钟、不满下一个1分钟时BarCnt的值恢复为1。
        }Else //即当时间不是5分钟的整数倍时
        {
                BarCnt = BarCnt[1] + 1;
                //nMinSet参数为5时,BarCnt的值依次是1(不满1分钟时)、2、3、4、5(不满5分钟时)
                //BarCnt[1] 的值依次是1、2、3、4——循环往复
        }
        //=====================================================================================
        MinData = Close;
     //======================================================================================           
        If(MinsAgo == 0)
        {
                MyMinData = MinData;
        }Else
        {
                For i = 1 To MinsAgo //
                {
                        If( i == 1) //
                        {        
                                j = 0; //如果j = 0,则BarCnt[j]==BarCnt[0]==1;
                        }Else //
                        {
                                j = j + BarCnt[j]; // j 依次输出1、2、3、4、5——循环往复
                                //BarCnt[j]的输出值是1、1、1、1、1、5、5、5、......、5、                              
                        }
                        If (j > CurrentBar )//前5个Bar的CurrentBar索引值依次是0、1、2、3、4
                        Mystring = "InvalidNumeric";//If (j > CurrentBar ),则前5根1分钟bar上输出无效值
                        nIndex = nIndex + BarCnt[j]; //nIndex的输出值是2、3、4、5、6、6、7、8、9、10、6、7、8、9、10、6、....
                }
                MyMinData = MinData[nIndex];
        }
        //======================================================================================
        FileAppend("e:\TransMinsData.log","==Date=="+Text(Date)+"hour=="+Text(Hour)+"==Minute==" + Text(Minute) + "==BarCnt==" + Text(BarCnt) + "==i==" + Text(i) + "==j==" + Text(j) + "==BarCnt[j]==" + Text(BarCnt[j]) + "==nIndex==" + Text(nIndex)+ "==Mystring==" + Mystring);
End
//------------------------------------------------------------------------
// 编译版本:        2016/10/27 200052
// 内核版本:        V2.3.2.10
// 版权所有        china_lizhi
// 更改声明        TradeBlazer Software保留对TradeBlazer平台
//                        每一版本的TradeBlazer公式修改和重写的权利
//------------------------------------------------------------------------

使用道具 举报

Rank: 2

精华
0
UID
213293
积分
97
帖子
85
主题
5
阅读权限
30
注册时间
2015-7-9
最后登录
2017-3-13
80#
发表于 2016-11-3 09:46:50 |只看该作者
翻出老帖,收获颇丰。

请问楼主NoPain, 为何要使用DataConvert? 我直接使用TransMinsData(Close,5,i)也没有问题。

这里有什么门道吗?求指点!

使用道具 举报

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

bottom

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

GMT+8, 2024-5-19 07:01

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部