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

标题: 咨询几个问题 [打印本页]

作者: 轮回    时间: 2007-8-26 20:04:55     标题: 咨询几个问题

斑竹:
1.现在TB不能登陆了,是否意味着所有的开发/调试工作就得停止?能离线运行吗?
2.K线主图的技术指标公式在哪?如何画BAR.

作者: 思迷思    时间: 2007-8-26 20:49:50

原帖由 轮回 于 2007-8-26 20:04 发表
斑竹:
1.现在TB不能登陆了,是否意味着所有的开发/调试工作就得停止?能离线运行吗?
2.K线主图的技术指标公式在哪?如何画BAR.

若兄懂C++,熟悉VC++6.0和VS2005的话,可在
http://tsking.net/viewthread.php?tid=954&extra=page%3D1
处下载源代码.
作者: tradeblazer    时间: 2007-8-26 21:10:06

原帖由 轮回 于 2007-8-26 20:04 发表
斑竹:
1.现在TB不能登陆了,是否意味着所有的开发/调试工作就得停止?能离线运行吗?
2.K线主图的技术指标公式在哪?如何画BAR.


1、TB需要在线运行,至少登陆的时候必须在线,登录之后网断了,其他不需要网络的还可以继续使用!
2、没有这样的主图技术指标,如果想要画Bar,您需要定义4条线,命名为Open,High,Low,Close!
参见下贴:
怎样在子图指标中加入K线?
作者: 轮回    时间: 2007-8-26 21:31:41

首先感谢思迷思,有时间我会好好研读你提供给我的资料.
TO tradeblazer 管理员:
"1、TB需要在线运行,至少登陆的时候必须在线,登录之后网断了,其他不需要网络的还可以继续使用!"
这种方式于TB公司,于他人没有半点好处,下载的历史数据更是如同虚设.
"2、没有这样的主图技术指标,如果想要画Bar,您需要定义4条线,命名为Open,High,Low,Close!"
如果这样的话,不矛盾是偶然的,有矛盾是必然的.
作者: skywalker    时间: 2007-8-26 23:31:30

之所以必须在线使用,是为了方便管理,限制盗版。下载历史数据并不是为了让客户离线使用,而是方便客户可以倒数据到其他软件比如MATLAB中去做进一步分析。

不大明白你的问题“K线主图的技术指标公式在哪?如何画BAR. ”的具体意思。
作者: 轮回    时间: 2007-8-27 10:20:23

"不大明白你的问题“K线主图的技术指标公式在哪?如何画BAR. ”的具体意思。"
我想看一看你们画K图的代码,自己怎样画棒线.
作者: nopain    时间: 2007-8-27 12:12:17

原帖由 轮回 于 2007-8-27 10:20 发表
"不大明白你的问题“K线主图的技术指标公式在哪?如何画BAR. ”的具体意思。"
我想看一看你们画K图的代码,自己怎样画棒线.

  1. Begin
  2.     PlotNumeric("Open",Open);
  3.     PlotNumeric("High",High);
  4.     PlotNumeric("Low",Low);
  5.     PlotNumeric("Close",Close);
  6. End
复制代码

作者: 轮回    时间: 2007-8-27 12:19:12

原帖由 nopain 于 2007-8-27 12:12 发表




Begin
    PlotNumeric("Open",Open);
    PlotNumeric("High",High);
    PlotNumeric("Low",Low);
    PlotNumeric("Close",Close);
End

问题就在这里,OPEN/CLOSE....都是关键字,而此OPEN/CLOSE....非彼OPEN/CLOSE...
作者: nopain    时间: 2007-8-27 12:52:35

输出的值可以随便写,当然还是要满足高开低收的原则。
但是命名不能随便写!
如下:
  1. Begin
  2.     PlotNumeric("Open",Open/2);
  3.     PlotNumeric("High",High/2);
  4.     PlotNumeric("Low",Low/2);
  5.     PlotNumeric("Close",Close/2);
  6. End
复制代码

作者: 轮回    时间: 2007-8-27 13:50:00

在1分K图上再叠加输出5分K图,那么指标中有1分CLOSE,也有5分CLOSE,我现在写一个CLOSE,程序能知道这个CLOSE是1分的还是5分的?我自己都不知道.
作者: skywalker    时间: 2007-8-27 14:09:12

原帖由 轮回 于 2007-8-27 12:19 发表

问题就在这里,OPEN/CLOSE....都是关键字,而此OPEN/CLOSE....非彼OPEN/CLOSE...


CLOSE、OPEN怎么会是关键字呢?那不过就是个返回数值型序列变量的函数而已。你用其他自定义函数也一样可以的。只不过,如果你要自己用指标画BAR线,有2个条件:
1、你的指标中必须有四个返回序列变量的函数。
2、你的指标中必须把这四根线用命名为“OPEN”、“CLOSE”,“HIGH”,“LOW”。

你自己的函数写出来大概是这么个样子:
Begin
    PlotNumeric("Open",Fun1);
    PlotNumeric("High",Fun2);
    PlotNumeric("Low",Fun3);
    PlotNumeric("Close",Fun4);
End

其中FUN1、FUN2、FUN3、FUN4都是你自己的函数。
作者: skywalker    时间: 2007-8-27 14:13:32

原帖由 轮回 于 2007-8-27 13:50 发表
在1分K图上再叠加输出5分K图,那么指标中有1分CLOSE,也有5分CLOSE,我现在写一个CLOSE,程序能知道这个CLOSE是1分的还是5分的?我自己都不知道.


程序不需要知道这是1分钟是5分钟。对于程序来说,对于PLOTNAUMERIC函数来说,它什么都不知道,它就是把你作为参数给它的那个序列变量输出显示而已。作为调用者和编程着,你需要知道你显示的东西是什么啊,程序是不知道的。
作者: 轮回    时间: 2007-8-27 14:44:31

"你自己的函数写出来大概是这么个样子:
Begin
    PlotNumeric("Open",Fun1);
    PlotNumeric("High",Fun2);
    PlotNumeric("Low",Fun3);
    PlotNumeric("Close",Fun4);
End

其中FUN1、FUN2、FUN3、FUN4都是你自己的函数。"
请问斑竹你测试过吗?我试了一下,"OPEN,HIGH,LOW,CLOSE"全部为0.而FUN1-4全部有正确数据.
作者: skywalker    时间: 2007-8-27 15:24:17

当然测过啊。我的测试代码是:
  1. Begin
  2.         PlotNumeric("open",CurrentBar +1);       
  3.         PlotNumeric("close",CurrentBar+2 );       
  4.         PlotNumeric("low",CurrentBar );       
  5.         PlotNumeric("high",CurrentBar+3 );       
  6. End
复制代码

showK就是我的测试指标。运行结果如下:




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