设为首页收藏本站

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

可以搞个函数示例吗 ? [复制链接]

Rank: 4

精华
0
UID
188
积分
597
帖子
91
主题
27
阅读权限
50
注册时间
2007-8-24
最后登录
2019-4-5
跳转到指定楼层
1#
发表于 2007-9-5 11:53:57 |只看该作者 |倒序浏览
函数nmins ndays nmoths 终于出来了!
可以用nmins 举个例子吗?
就在5分钟 的周期取 开盘价 和收盘价吧 !谢谢

Rank: 10Rank: 10Rank: 10

精华
11
UID
1
积分
25127
帖子
6291
主题
149
阅读权限
255
注册时间
2007-7-20
最后登录
2024-4-22
2#
发表于 2007-9-5 12:05:09 |只看该作者
您看看技术指标nMins,nDays等函数,这些就是例子阿
交易开拓者 - 期货程序化与量化系统自动交易领航者

网站已支持在线开通模拟账户功能

使用道具 举报

Rank: 4

精华
0
UID
188
积分
597
帖子
91
主题
27
阅读权限
50
注册时间
2007-8-24
最后登录
2019-4-5
3#
发表于 2007-9-5 13:02:02 |只看该作者
我把这个10分钟的周期加入交易指令 !在保存公式的时候 报错
“函数PlotNumeric不能不能用于交易指令”
这是部分原码

Params
        Numeric lots(2);
        Numeric N(10);
Vars
    Bool szwy;
        Bool ssly;
        Bool sly;
        Bool sszwy;
        Bool Kk;
        Bool Kd;
        Bool Kztm;       // 看涨吞没
        Bool Kdtm;       // 看跌吞没
    Numeric op;
    Numeric Clo;
Begin
Ope=PlotNumeric("Open",DataConvert(Open,"min",N,"Open"));
Clos=PlotNumeric("Close",DataConvert(Close,"min",N,"Close"));       
       
       
SZWY=(clo<op)&&(close[1]<=open[1])&&(close[2]<=open[2]);
SSLY=(CLO>OP)&&(CLOSE[1]>=OPEN[1])&&(CLOSE[2]>=OPEN[2])&&(CLOSE[3]>=OPEN[3]);
SLY=(CLO>OP )&&(CLOSE[1]>=OPEN[1])&&(CLOSE[2]>=OPEN[2]);
SSZWY=(CLOSE<OPEN)&&(CLOSE[1]<=OPEN[1])&&(CLOSE[2]<=OPEN[2])&&(CLOSE[3]<=Open[3]);
、、、、、、、、、、、、、、、、、、
end

使用道具 举报

Rank: 4

精华
0
UID
188
积分
597
帖子
91
主题
27
阅读权限
50
注册时间
2007-8-24
最后登录
2019-4-5
4#
发表于 2007-9-5 13:07:06 |只看该作者
我公布的原码就是 常见的 三连阳 三连阴等 !现在怎么在5分钟周期取 10分钟的 三连阳 三连阴呢?

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
5#
发表于 2007-9-5 13:13:19 |只看该作者
呵呵。在交易指令中使用这些数据当然不能用PlotNumeric,您需要自己建变量来保存。
例子如下:
  1. Params
  2.         Numeric lots(2);
  3.         Numeric N(10);
  4. Vars
  5.         Numeric op;
  6.         Numeric Clo;
  7. Begin
  8.         op = DataConvert(Open,"min",N,"Open");
  9.         Clo= DataConvert(Close,"min",N,"Close");
  10. ....
  11. End
复制代码

使用道具 举报

Rank: 4

精华
0
UID
188
积分
597
帖子
91
主题
27
阅读权限
50
注册时间
2007-8-24
最后登录
2019-4-5
6#
发表于 2007-9-5 13:28:56 |只看该作者
在检验公式的时候 报错   无法识别字符串
函数 dataconvert 好象无法识别

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
7#
发表于 2007-9-5 13:33:39 |只看该作者
原帖由 dengwenle 于 2007-9-5 13:28 发表
在检验公式的时候 报错   无法识别字符串
函数 dataconvert 好象无法识别


我这里只是提供了一个示例,您可以不要连省略号都一起copy过去啦。

使用道具 举报

Rank: 4

精华
0
UID
188
积分
597
帖子
91
主题
27
阅读权限
50
注册时间
2007-8-24
最后登录
2019-4-5
8#
发表于 2007-9-5 15:05:59 |只看该作者
Params
        Numeric N(10);        // N 分钟  
    Numeric op;
    Numeric clo;
   
Begin
        op=DataConvert(Open,"min",N,"Open");
        clo=DataConvert(Close,"min",N,"Close");
        op[1]=DataConvert(Open[1],"min",N,"Open");
        clo[1]=DataConvert(Close[1],"min",N,"Close");
        op[2] =DataConvert(Open[2],"min",N,"Open");
        clo[2]=DataConvert(Close[2],"min",N,"Close");
        op[3] =DataConvert(Open[3],"min",N,"Open");
        clo[3]=DataConvert(Close[3],"min",N,"Close");
End

就是这个原码 !
报错

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
20
UID
4
积分
22709
帖子
4802
主题
64
阅读权限
255
注册时间
2007-7-20
最后登录
2024-1-15
9#
发表于 2007-9-5 15:14:01 |只看该作者
1、序列变量不能直接用Open[1]这种方式传入。先定义一个序列变量,赋值之后,用变量传入。
2、op是普通变量,不能使用op[1],即使是序列变量也不能对op[1]进行赋值。
如下:
Vars
    Numeric op;
    NumericSeries MyOpen;
Begin
    MyOpen = Open[1];
    op = DataConvert(MyOpen,"min",N,"Open");

End

使用道具 举报

Rank: 4

精华
1
UID
117
积分
427
帖子
79
主题
12
阅读权限
50
注册时间
2007-8-15
最后登录
2016-3-30
10#
发表于 2007-9-5 22:40:08 |只看该作者
op = DataConvert(MyOpen,"min",N,"Open");

这样有点麻烦啊

使用道具 举报

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

bottom

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

GMT+8, 2024-5-1 14:17

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部