开拓者期货期权程序化系统交易论坛

标题: 一个简单的交易指令,不能编译: [打印本页]

作者: wg3k99    时间: 2007-11-29 22:16:19     标题: 一个简单的交易指令,不能编译:

下面是我写的一个简单的交易系统,不能编译,提示说:RSI没有被申明。通过公式管理器,我看了一下,RSI是一个技术指标而不是一个用户函数,那么我的理解是:在交易指令中,可以调用所有的用户函数,但是不能直接调用“技术指标”的值,是这样吗?

Params
Vars
Numeric RsiValue(0);
Numeric Dqcc(0);
Begin
SetStopLoss(0,6000,True);
RsiValue=RSI(14,30,70);
if(RsiValue<20)//如果RSI指标的值小于20
{
IF(A_TotalPosition()<0) buy(10,0);//如果当前持有空单,则平掉所有空单,并且开10手多单
Else IF(A_TotalPosition()>=0)
{
  Dqcc=10-A_TotalPosition();
  buy(Dqcc,0);
}
}
End

作者: 孤舟骑浪    时间: 2007-11-30 09:11:33

你可以打开技术指标RSI,把里面的代码放到你的交易指令中,不是解决问题了吗?技术指标是用来看的,要用到他们作开平仓条件时,是应该把它们的代码再挖出来,变成交易代码的一部分。个人理解。
作者: wg3k99    时间: 2007-11-30 09:15:27

是啊,我就是纠正这一点,看看是不是技术指标是不能调用的,只有:用户函数,用户字段,个别系统函数,可以在交易指令公式中调用。。。
作者: 孤舟骑浪    时间: 2007-11-30 09:19:47

所有函数都是可以调用的,函数其实就是数据.
作者: wg3k99    时间: 2007-11-30 09:29:10

呵呵,我觉得这个涉及到的是编程思想的问题哈,就是总体上来了解一下TB内在的处理机制,这样用起来得心应手一些,像文化,金狐等软件,技术指标的值是可以直接引用的。但是TB的分类更细致,更严谨一些,功能也更强大了




欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/) Powered by Discuz! X2