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

标题: 《公式开发指南》印刷成册在即,呼吁广大用户帮忙纠错 [打印本页]

作者: ample    时间: 2013-6-26 11:21:36     标题: 《公式开发指南》印刷成册在即,呼吁广大用户帮忙纠错


目前的《公式开发指南》今年5月修订过一版,因人力有限,遗漏的错误再所难免,下一步公司准备将《公式开发指南》印刷成册,特开此贴请用户指出存在的错误。

跟帖提出错误时,请注意格式:【页码】+【错误处】+【错误原因】,请以今年5月修订的最新版为原型纠错,错误处可以截图显示。

谢谢!

附:
TRADEBLAZER公式开发指南【2013.05最新修订版】下载
作者: TB2012    时间: 2013-7-2 03:18:22

前排占位,慢慢看
作者: lingl2    时间: 2013-7-3 18:07:22

look
作者: aha100    时间: 2013-7-4 20:08:09

第47页“即设定参数的默认值与参数的顺序有关,只有排列在后面,或者从该参数之后的参数都没有默认值
时才可以不设定,为防止因人为疏忽而导致的参数默认值错误,建议将所有的参数都设上初值。”

这句话很难读懂,是否有写错。


是否有什么奖励呢,这样才有动力继续找啊。


37页
Params 用该关键字宣告参数定义的起始,参数必须填写默认值。
不必须填写默认值
作者: aha100    时间: 2013-7-5 11:29:34

p67
讲序列函数的时候没有讲明白为什么“否则建议不要在条件语句,
条件语句的判断表达式,循环语句中使用序列函数。”
最好由个例子说明
作者: ample    时间: 2013-7-5 13:20:20

aha100, 你提出的问题收到,检查中……

关于奖励的问题,纠错一条,奖励论坛积分100
作者: aha100    时间: 2013-7-5 20:14:39

ample 发表于 2013-7-5 13:20
aha100, 你提出的问题收到,检查中……

关于奖励的问题,纠错一条,奖励论坛积分100 ...

没想到超级版主这么热心。
想问个问题,公式指南看完后,下一步是否就是看网校的视频教学,这个看完了呢,求指导。
就是能否给个进阶的指导。
超级版主是过来人,我等新手还需要你的指教啊。
作者: aha100    时间: 2013-7-5 22:53:30

P105
                If(MarketPosition <> 0)      // 有持仓时执行以下代码
                {      
                        HighestAfterEntry = Max(HighestAfterEntry,AvgEntryPrice);  // 开仓Bar,将开仓价
和当时的收盘价的较大值保留到HighestAfterEntry
                        LowestAfterEntry = Min(LowestAfterEntry,AvgEntryPrice); // 开仓Bar,将开仓价和
当时的收盘价的较小值保留到LowestAfterEntry         

这里为什么不是直接设置为HighestAfterEntry =high
LowestAfterEntry =low
呢,应该是这么设置的啊。请教下。

作者: aha100    时间: 2013-7-6 09:54:13

p118
- 118 -
Begin
strKey = DateToString(Date);
strValue = GetTBProfileString("DayMA",strKey);
If(strValue != InvalidString)
{
DayMAValue = Value(strValue);
}Else
{
DayMAValue = DayMAValue[1];
}
PlotNumeric("DayMA",DayMAValue);
End

这里为什么写else部分,什么情况下会出现ivalidstring呢。没有说清楚,我理解不了。
作者: aha100    时间: 2013-7-6 13:06:56

P114
// 收盘前N 分钟,且撤单标志为0,即还未撤单时
If(CurrentTime > (0.1459 - 0.0001*(BeforeMins - 1)) && BarStatus == 2 && HasSendOrder
== 0)

写成下面不是更好
If(CurrentTime > (0.3000 - 0.0001*BeforeMins ) && BarStatus == 2 && HasSendOrder
== 0)
两者有不同吗?
作者: aha100    时间: 2013-7-6 13:09:08

P114
// 商品0 全部撤单
If(Data0.Close != InvalidNumeric && Data0.A_GetOpenOrderCount() > 0)

这里为什么要加Data0.Close != InvalidNumeric,什么情况下这个条件满足,求教。
作者: aha100    时间: 2013-7-6 15:25:06

想问个问题,公式应用里,参数是否可以采用小数,
譬如If(CurrentTime > (0.1459 - 0.0001*(BeforeMins - 1)) && BarStatus == 2 && HasSendOrder
== 0)
这里的BeforeMins就是乘了0.0001,这是为啥。什么情况下使用小数会出错呢,这在公式指南里没有说明啊。
作者: ample    时间: 2013-7-8 09:45:45

这个帖子是关于公式指南纠错的,其他的问题请另外发帖。
作者: vividboy    时间: 2013-7-9 14:05:10

P124.
TB 系数: (平均利润×平均利润×交易手数)/(平均盈利×平均亏损)

分子中有两个平均利润,不知道是否有误。而且根据平均利润的定义,那么平均利润×交易手数 = 净利润,
所以公式还可以简化。

另外这个TB系数的构建思路我觉得要说明一下,是越大越好,还是越小越好。这个TB系数考虑这些因素的正反比挂西是如何的?比如:平均盈利与TB系数成反比,就有点让人费解。

作者: ample    时间: 2013-7-10 10:11:36

vividboy 发表于 2013-7-9 14:05
P124.
TB 系数: (平均利润×平均利润×交易手数)/(平均盈利×平均亏损)


谢谢你的热心。
这个系数的计算公式就是这样计算的,表示平均利润的平方,不是错误
作者: vividboy    时间: 2013-7-10 10:52:12

ample 发表于 2013-7-10 10:11
谢谢你的热心。
这个系数的计算公式就是这样计算的,表示平均利润的平方,不是错误 ...

能说说构建这个公式的思路吗?我在做性能分析的时候对这个指标不理解,现在看来手册还是一头雾水。呵呵。
作者: efrog    时间: 2013-7-10 13:51:45

Page 7
对Tick建议加一个名词解释,很多新手是不知道Tick概念的。
作者: ample    时间: 2013-7-11 09:31:22

efrog 发表于 2013-7-10 13:51
Page 7
对Tick建议加一个名词解释,很多新手是不知道Tick概念的。

收到,谢谢
作者: ample    时间: 2013-7-11 11:41:15

vividboy 发表于 2013-7-10 10:52
能说说构建这个公式的思路吗?我在做性能分析的时候对这个指标不理解,现在看来手册还是一头雾水。呵呵。 ...

凯利公式,http://baike.baidu.com/view/2107751.htm
作者: 秋风夜雨    时间: 2013-7-12 12:13:04

什么时候印出来?

销售?还是赠送?
怎么获得?
作者: vividboy    时间: 2013-7-12 15:15:43

再提个建议:能不能每次更新《指南》都明确的标记出于前面版本的区别,这样好对比和了解新的功能。
作者: ample    时间: 2013-7-15 09:24:17

秋风夜雨 发表于 2013-7-12 12:13
什么时候印出来?

销售?还是赠送?

具体时间还没有确定,请大家先帮忙纠错。

出来之后论坛会有通告的
作者: ample    时间: 2013-7-15 09:26:12

vividboy 发表于 2013-7-12 15:15
再提个建议:能不能每次更新《指南》都明确的标记出于前面版本的区别,这样好对比和了解新的功能。 ...

收到。不过公式指南不是随软件版本更新的,这个可能无法实现
作者: vividboy    时间: 2013-7-15 10:39:20

ample 发表于 2013-7-15 09:26
收到。不过公式指南不是随软件版本更新的,这个可能无法实现

就是相邻的两个手册版本的比较也行,主要是对于看过就版本的可以很明确的指导这个版本主要是增改了那些内容。当然编辑的工作量会比较大。
作者: 忽忽悠悠    时间: 2013-7-17 10:51:11

本帖最后由 忽忽悠悠 于 2013-7-17 10:58 编辑

第54页,第16行
If(Date + Time > bartime)//新的日期时间,计数器重新置1
为什么新的时间,计数器不加1?

第54页,倒数第9行
If(Date + Time == bartime)//相同日期时间,计数器+1,并保存回全局变量
为什么相同时间了,应该是没有新bar出现,计数器要累计加1?

个人理解,是不是把这两个条件倒换?
就是第16行
If(Date + Time == bartime)//相同日期时间,计数器重新置1

倒数第9行,else后面,
If(Date + Time > bartime)//新的日期时间,计数器+1,并保存回全局变量

我是新手,刚开始看,也许是我自己理解不深,导致所提问题不一定正确。
虽然只是一个让大家对全局变量有更深了解的例子,但刚看到相同时间,想到的应该不是+1,新的时间产生新的数据,会+1。不能说这个例子这样编写就有错,只是说把条件倒换过来,更容易把精力焦点对准全局变量去理解。
作者: ample    时间: 2013-7-17 13:26:16

忽忽悠悠 发表于 2013-7-17 10:51
第54页,第16行
If(Date + Time > bartime)//新的日期时间,计数器重新置1
为什么新的时间,计数器不加1?

这个例子是对1个bar内的tick进行计数,当然是在同一个bar上的时候,计数器+1,新的bar时,计数器置1,重新开始计。
作者: 忽忽悠悠    时间: 2013-7-17 14:39:21

第56页倒数第7行,后面的示例代码,定义成NumericSeries有什么好处?可以定义成Numeric吗?这样是不是执行效率更快一些,反正只是想统计出有多少个缺口来。
作者: ample    时间: 2013-7-17 14:48:39

忽忽悠悠 发表于 2013-7-17 14:39
第56页倒数第7行,后面的示例代码,定义成NumericSeries有什么好处?可以定义成Numeric吗?这样是不是执行 ...

定义成numeric ,要实现相同的功能,程序的编写方法就不同了
numericseries可以回溯的,而且值可以继承,累加起来比较方便
作者: 忽忽悠悠    时间: 2013-7-17 15:03:26

本帖最后由 忽忽悠悠 于 2013-7-17 15:12 编辑
ample 发表于 2013-7-17 14:48
定义成numeric ,要实现相同的功能,程序的编写方法就不同了
numericseries可以回溯的,而且值可以继承, ...


谢谢管理员的回复,呵呵!

我觉得在指南中的这个地方,应该注明管理员在回复里所说的“numericseries可以回溯的,而且值可以继承”所以在此处用numericseries而没有用numeric,因为此处是想解释IF语句的,我看到这个地方,没考虑的那么复杂,单纯地以为是想统计缺口的个数,为了执行效率应该选择用Numeric了,呵呵

另外,应该是由于我的编程功底比较浅,所以,对于第54页的示例的理解出现的偏差,是不是可以在第53页的倒数第二行里,加上几个字,把“下面,我们用一个全局变量编写TICK计数器。”改成“下面,我们用一个全局变量编写一个BAR内的TICK的计数器”?由于这个提问和回复,对TICK的了解更深了!谢谢管理员!

请问如果定义成Numeric,是不是这样写代码呢?

Vars
      numeric Counter;
Begin
    If(Open>High[1])
    {
        Counter=Counter+1;
        …
    }

谢谢管理员!
作者: ample    时间: 2013-7-17 15:14:53

忽忽悠悠 发表于 2013-7-17 15:03
谢谢管理员的回复,呵呵!

我觉得在指南中的这个地方,应该注明管理员在回复里所说的“nume ...

这样编写代码是不行的,因为tb公式的执行是从左至右,从上至下,历史行情中每个bar都会执行一次,实时行情中每个tick都会触发执行,counter如果定义为普通变量每次都会重新分配内存的,先前的值保存不下来
你需要使用全局变量
作者: 忽忽悠悠    时间: 2013-7-17 15:30:25

本帖最后由 忽忽悠悠 于 2013-8-23 09:33 编辑

看了30#的管理员的回复,再看指南的第53页对全局变量的解释,我意识到在这之前应该是属于水过地皮湿了。如果当时理解了第53页的全局变量后面的那一段话,再加上30#这一段话,就不应该对第56页最后的代码提出这种变量的疑问了,谢谢管理员,呵呵!

如果能正确理解第52页的关于aaa、bbb那个例题的理解,也可以很好地理解第56页的这个NumericSeries Counter了。

因为代码我写不对,而且想更多地知道了解一些,因此想麻烦管理写一下代码,就是定义成Numeric的,不知是否麻烦,如果麻烦就算了,如果不麻烦的话就请管理员百忙之中写一下,应该会更有助于我这种新手对很多东西的理解,说不一定又会纠正很多我以前自认为是对的地方,呵呵!
再次感谢管理员!
作者: caobing    时间: 2013-7-18 15:35:40

P47第一行
整个公式中只能出现一个Params宣告
这里的“宣告”用“声明”来更专业一些吧。好像还有其他地方也有用的宣告,建议用声明替换。
作者: ample    时间: 2013-7-19 09:20:17

caobing 发表于 2013-7-18 15:35
P47第一行
整个公式中只能出现一个Params宣告
这里的“宣告”用“声明”来更专业一些吧。好像还有其他地方 ...

收到
作者: 忽忽悠悠    时间: 2013-7-21 20:32:56

本帖最后由 忽忽悠悠 于 2013-7-21 20:34 编辑

第P106的倒数第7行
HighestAfterEntry = Max(HighestAfterEntry,AvgEntryPrice); // 开仓Bar,将开仓价和当时的收盘价的较大值保留到HighestAfterEntry

在正数第7行,变量
Numeric MyEntryPrice; // 开仓价格,本例是开仓均价,也可根据需要设置为某次入场的价格

所以,红色字体部位,是不是应该写:MyEntryPrice而不是AvgEntryPrice?
或者,在Begin后,应该有一句:
MyEntryPrice = AvgEntryPrice;

谢谢管理员!
作者: ample    时间: 2013-7-22 08:43:47

忽忽悠悠 发表于 2013-7-21 20:32
第P106的倒数第7行
HighestAfterEntry = Max(HighestAfterEntry,AvgEntryPrice); // 开仓Bar,将开仓价和当 ...

谢谢你。
在下一页,有这样的语句 MyEntryPrice = AvgEntryPrice;

作者: hs518937    时间: 2013-8-7 11:55:11

希望增加几页,写出内置函数和用户函数的列表和简单介绍
作者: Anchess    时间: 2013-8-10 10:14:10


作者: Anchess    时间: 2013-8-10 10:15:57

把全局变量好好讲一下吧!很难理解和动用。请多加些实例更好。这是重点中的重点
作者: Anchess    时间: 2013-8-10 10:17:00

既然是手册,就必须讲透了!(全局变量)
作者: ample    时间: 2013-8-13 16:52:08

Anchess 发表于 2013-8-10 10:17
既然是手册,就必须讲透了!(全局变量)

收到
作者: ample    时间: 2013-8-13 16:52:30

hs518937 发表于 2013-8-7 11:55
希望增加几页,写出内置函数和用户函数的列表和简单介绍

这个内容在f1帮助里可以查到
作者: man1298874732    时间: 2013-8-15 15:28:39

p60
例如,在一个公式应用中,条件设置如下:当前行情上涨的时候,如果收盘价高于开盘价时,则产生一个以收盘价买入1张合约;否则产生一个以开盘价买入1张合约。当前行情没有上涨的时候,如果收盘价高于开盘价,则产生一个以收盘价卖出1张合约;否则产生一个以开盘价卖出1张合约。脚本如下: If (Open > High[1]) { If (Close>Open) { Buy(1, Close); }Else { Buy(1, Open);

} }Else { If (Close > Open) { Sell (1,Open); }Else { Sell (1,Close); } }
错误原因:行情上涨时,c>o,buy(1,c),否则buy(1,o)为什么不取c为开仓价呢(c<o)买价越低越有利啊
                 行情没上涨,Else { Sell (1,Close); 此处价格应取open 卖价越高越有利

作者: man1298874732    时间: 2013-8-15 15:33:50

p62
Params
      NumericSeries Price(1);
      Numeric Length(10);
Vars
      Numeric SumValue(0);
      Numeric i;
Begin
    for i = 0 to Length – 1
{ SumValue = SumValue + Price;
}
Return SumValue;
End
错误原因:price应该置于vars内吧
                 return 语句与声明不一致
作者: 小米    时间: 2013-8-15 16:07:47

man1298874732 发表于 2013-8-15 15:33
p62
Params
      NumericSeries Price(1);

这个例子是新建函数,是要有return的结果的。price是这个函数里计算所需的一个参数,是要写在params下的。

作者: man1298874732    时间: 2013-8-15 17:01:23

小米 发表于 2013-8-15 16:07
这个例子是新建函数,是要有return的结果的。price是这个函数里计算所需的一个参数,是要写在params下的 ...

但是我在Tb编译 无法编译的 版主你试试
作者: 小米    时间: 2013-8-16 11:04:01

man1298874732 发表于 2013-8-15 17:01
但是我在Tb编译 无法编译的 版主你试试

我试过呀。可以通过编译哟。。。你注意一下细节再试试。

[attach]16862[/attach]
作者: man1298874732    时间: 2013-8-16 12:08:43

小米 发表于 2013-8-16 11:04
我试过呀。可以通过编译哟。。。你注意一下细节再试试。

恩恩 输出 类型 我弄错了 谢谢楼主
作者: 等待花开    时间: 2013-8-18 14:53:45

[attach]16889[/attach]2013.05版,53页,
作者: YLBZ    时间: 2013-8-19 15:52:31

本帖最后由 YLBZ 于 2013-8-19 15:59 编辑

建议增加 策略进阶的内容。37页”+ - * / % ^” 中的“^”是什么意思,指南中没有写出。何时装订成册?想买一本。
作者: ample    时间: 2013-8-19 17:20:44

YLBZ 发表于 2013-8-19 15:52
建议增加 策略进阶的内容。37页”+ - * / % ^” 中的“^”是什么意思,指南中没有写出。何时装订成册?想买 ...

建议收到。那个是表示乘方的意思
作者: YLBZ    时间: 2013-8-20 11:40:57

本帖最后由 YLBZ 于 2013-8-20 11:42 编辑
ample 发表于 2013-8-19 17:20
建议收到。那个是表示乘方的意思


版主:你好!我建议“指南”在此基础上进行扩充。函数、变量、语句、尤其是一些循环语句的用法,全局变量的用法,等等、等等。让有心学习TB的人有资料可学。“指南”现在是一百多页,我看要增加到三百多页才好,使“指南”成为TB用户的宝典!!
作者: 忽忽悠悠    时间: 2013-8-20 16:29:10

本帖最后由 忽忽悠悠 于 2013-8-23 10:16 编辑

第10页的第4行:
如果当笔最新价既不等于委价,也不等于委价,则各计一半。

第57页,倒数第7行”从而影响最终的计算果“少了个结字。
作者: Anchess    时间: 2013-8-26 11:35:53


作者: czonghui    时间: 2013-9-13 09:37:07

能否添加 TB 序列函数/序列变量判断的写法实例

正确写法:
con1 = xxxx;
con2 = yyyy;
con3 = zzzz;
result = con1 && con2 && con3;

有隐患的写法:

result  = XXXX && YYYY && ZZZZ;
牵涉到序列变量,函数的时候,采用后面的写法,可能出现意想不到的,不符合预期的结果。推荐把所有条件先单独拿出来判断的第一种写法
作者: ample    时间: 2013-9-13 11:24:54

czonghui 发表于 2013-9-13 09:37
能否添加 TB 序列函数/序列变量判断的写法实例

正确写法:

可以
作者: jaisylin    时间: 2013-9-29 10:44:25

第125页
资产回撤计数: 资产回撤发生的次数(是以超过最大回撤基准线以上的回撤来计算的)
平均资产回撤: 资产回撤总金额 / 资产回撤计数(都是以超过最大回撤基准线以上的回撤来计算)

现在TB的交易全局设置已经没有最大回撤基准线的设置了,取而代之的是“计算前N个较大资产回撤的平均值”,相应的计算公式也需要更新了
作者: zyxsir    时间: 2013-10-6 11:13:34

建议手册内将内建函数的代码添加备注说明,让新手有一个很好的学习资料,否则不容易快速掌握。
作者: zyxsir    时间: 2013-10-6 11:14:53

还希望能多编几个像海龟交易系统这样的经典模型共大家学习研究,这样手册的意义更大
作者: zyxsir    时间: 2013-10-6 11:17:24

数据库的读写讲解太简单,还应增加几个不同使用的方法,比如一个账户多个品种资金管理的方法如何实现!这都是很重要的
作者: zyxsir    时间: 2013-10-6 11:21:13

总之要多些实际应用的例子,这样便于大家学习提高,能更好使用软件
作者: ample    时间: 2013-10-9 08:44:02

jaisylin 发表于 2013-9-29 10:44
第125页
资产回撤计数: 资产回撤发生的次数(是以超过最大回撤基准线以上的回撤来计算的)
平均资产回撤: ...

是的,谢谢楼主的提醒,这个问题已经解决
作者: ample    时间: 2013-10-9 08:44:27

zyxsir 发表于 2013-10-6 11:13
建议手册内将内建函数的代码添加备注说明,让新手有一个很好的学习资料,否则不容易快速掌握。 ...

建议收到
作者: 秋风夜雨    时间: 2013-10-9 22:04:06

印刷的时间有吗?
作者: caiyuanguangjin    时间: 2013-10-10 10:04:07

学习
作者: itellin    时间: 2013-10-19 10:19:14

本帖最后由 itellin 于 2013-10-19 10:21 编辑

P52介绍简单变量和序列变量差异的案例,能否给一个完整的代码,现在的代码是这样:
If(CrossOver(ma1,ma2))
{
aaa = 1;
bbb = 1;
}
If (CrossUnder(ma1,ma2))
{
aaa = -1;
bbb = -1;
}
而下面的图是这样:

需要还原这个图,但不知道该如何操作。
作者: ample    时间: 2013-10-21 10:00:34

本帖最后由 ample 于 2013-10-23 09:06 编辑

加上aaa,bbb的定义,和计算ma1,ma2的语句就可以了

Params
        Numeric Length1(5);
        Numeric Length2(10);
Vars
        Numeric aaa;
        NumericSeries bbb;
        Numeric ma1;
        Numeric ma2;
Begin
        ma1=AverageFC(Close,Length1);
        ma2=AverageFC(Close,Length2);
……接示例中代码
作者: itellin    时间: 2013-10-21 19:33:01

上面的代码自己猜也能够猜出来,问题不是在这里,关键的问题有:
1、编译后会出现FOR,IF 语句包含序列函数之类的提示,估计这是TB事先搭架子的时候考虑不周留下的后遗症,这个可以暂时不谈,但是前面手册中说过尽量避免这种情况的出现,可是手册中却给出这样的事例,本人认为不妥。
2、图形中有变量aaa,和序列变量bbb的取值比较,但是手册中所给的代码画不出来,应该提供和图形中一样的代码,便于比较。
作者: 小米    时间: 2013-10-22 09:24:48

本帖最后由 小米 于 2013-10-22 09:31 编辑
itellin 发表于 2013-10-21 19:33
上面的代码自己猜也能够猜出来,问题不是在这里,关键的问题有:
1、编译后会出现FOR,IF 语句包含序列函数 ...
  1. params
  2.       numeric length1(5);
  3.       numeric length2(10);
  4. vars
  5.       bool con1;
  6.       bool con2;
  7.       numeric ma1;
  8.       numeric ma2;
  9.       numeric aaa;
  10.       numericseries bbb;
  11. begin
  12.       ma1 = averageFC(close,length1);
  13.       ma2 = averageFC(close,length2);
  14.       con1 = CrossOver(ma1,ma2);
  15.       con2 = CrossUnder(ma1,ma2);
  16.       If(con1)
  17.       {
  18.           aaa = 1;
  19.           bbb = 1;
  20.       }
  21.       If (con2)
  22.       {
  23.           aaa = -1;
  24.           bbb = -1;
  25.       }
  26.      plotstring("aaa",aaa, 3000);   
  27.      plotstring("bbb",bbb,2600);//这里的3000与2600只是将输出的值固定在某一水平位置,你可根据合约的价格来调整具体的值。
复制代码

作者: itellin    时间: 2013-10-22 14:16:50

这样就对了,有了完整的代码,就可以让初学者按图索骥的还原整个过程,手册上的代码估计是主要编写者自己能够明白,看的人无法明白。
多谢指导。
作者: YLBZ    时间: 2013-11-8 09:59:27

何时成册?

作者: dzqh92000616    时间: 2013-11-9 10:23:57

TB您好。请问一下你们何进成册呀!都快半年了吧?我还一直等着的呢? 最好也是4色印刷的呀!
作者: YLBZ    时间: 2013-11-11 09:34:34

可以先成册,而后在改版啊

作者: jerry2487532    时间: 2013-11-17 11:02:41

关于IF elsey语句部份,我觉得文件说得太多,看得人眼晕。

建议直配一张拓扑图,这样简洁明了!一目了然
作者: jerry2487532    时间: 2013-11-17 11:12:28

P65

If (Condition2) Continue;      这条语句不可以直接用普通If语句取代吗?为什么整个Continue来呢?

没看明白
作者: ample    时间: 2013-11-19 16:05:37

jerry2487532 发表于 2013-11-17 11:02
关于IF elsey语句部份,我觉得文件说得太多,看得人眼晕。

建议直配一张拓扑图,这样简洁明了!一目了然 ...

建议收到,新的文稿已配图
作者: ample    时间: 2013-11-19 16:06:22

dzqh92000616 发表于 2013-11-9 10:23
TB您好。请问一下你们何进成册呀!都快半年了吧?我还一直等着的呢? 最好也是4色印刷的呀! ...

耐心地再等等
作者: 趋势跟踪    时间: 2013-11-30 15:46:46

建议:
1、把日盘和夜盘集合竞价数据过滤方法写进手册。
2、把夜盘控制开仓、控制收盘平仓的方法写进手册。
作者: ample    时间: 2013-12-2 09:47:26

趋势跟踪 发表于 2013-11-30 15:46
建议:
1、把日盘和夜盘集合竞价数据过滤方法写进手册。
2、把夜盘控制开仓、控制收盘平仓的方法写进手册。 ...

公式开发指南里面有集合竞价过滤和收盘平仓的例子,夜盘的可以参考
作者: sunsnake    时间: 2013-12-9 11:13:00

第58页中间

If (Colse > Close[1])
Value1 = Value1 + Vol;
Else
Value1 = Value1 - Vol;

第一个close拼错了
作者: dengwenle    时间: 2013-12-10 11:51:03

ndays这个函数没 详细说明,建议 做个说明
作者: ample    时间: 2013-12-11 13:11:58

sunsnake 发表于 2013-12-9 11:13
第58页中间

If (Colse > Close[1])

收到

作者: YLBZ    时间: 2013-12-15 20:54:49

第21页,倒数第11行。“在调用行情数据的时候”改为:在调用账户数据的时候
作者: ample    时间: 2013-12-17 09:39:57

YLBZ 发表于 2013-12-15 20:54
第21页,倒数第11行。“在调用行情数据的时候”改为:在调用账户数据的时候 ...

收到。楼主看得非常仔细
作者: sisosm    时间: 2014-1-23 23:25:25

即将看完,希望尽快印成册.有些重复的比较多,说一遍其实就可以了.如单条可省略{},多条则不行,这个重复了说了几次,单独注明一次{}的使用方法就可以.
作者: ybpsli    时间: 2014-2-23 07:44:20

都快一年了怎么还没印出来?说话不算数
作者: ybpsli    时间: 2014-2-23 07:45:54

还有,应该多举例子并说明公式原理
作者: ample    时间: 2014-2-27 10:15:07

ybpsli 发表于 2014-2-23 07:45
还有,应该多举例子并说明公式原理

快了。指南重新整理成教程了,新增加了很多内容
作者: YLBZ    时间: 2014-2-27 11:00:34

ample 发表于 2014-2-27 10:15
快了。指南重新整理成教程了,新增加了很多内容

什么时间成册啊?

作者: ample    时间: 2014-2-27 13:01:20

目前的状态是基本上定稿了,什么时候出版我也不能确定。应该是很快
作者: aben1188    时间: 2014-2-28 08:22:47

ample 发表于 2014-2-27 13:01
目前的状态是基本上定稿了,什么时候出版我也不能确定。应该是很快

定稿后的新版《公式开发指南》PDF文件能否公布下载呀?谢谢!
作者: ljm858703    时间: 2014-4-12 23:26:58

新人!学习学习!
作者: YLBZ    时间: 2014-4-28 10:18:47

贵公司的“指南”何时成册啊?!
作者: 秋风夜雨    时间: 2014-6-19 11:27:46

一年时间了 这个效率有点快!
作者: gerlff    时间: 2014-7-3 10:20:16

我要买一本,在哪里得到
作者: wgt229667    时间: 2014-7-13 11:26:55

记得我看过,在追踪止损和止盈那一个部分,如果利润达到50点,用30点一跳止盈;利润达到80点,用20点一跳止盈,但是公式编写的时候,做成50点和20点一组,80点和30点一组了。
作者: kevin_meo    时间: 2014-11-4 12:21:53

第28页最后一句话我认为有失偏颇,


"所以,交易者需要尽可能地保证从测试到交易固定使用同一个数据源的数据。"  正因为不同行情来源取得的日内BAR数据可能会不同,反而应该多测试这种可能,确保不要过度拟合,和公式的生命力!


作者: kevin_meo    时间: 2014-11-16 08:50:39

本帖最后由 kevin_meo 于 2014-11-17 01:11 编辑

54页关于全局变量tick计数器的例子,例子前面给bartime的变量类型不是序列变量,而是简单变量,每个tick全部不做数重来,那么所有后面的语句难道是个赋值的循环??????????给个明确的答复吧!!谢谢
作者: kevin_meo    时间: 2014-11-17 12:57:02

kevin_meo 发表于 2014-11-16 08:50
54页关于全局变量tick计数器的例子,例子前面给bartime的变量类型不是序列变量,而是简单变量,每个tick全 ...

想看懂这个,必须要明白简单变量,序列变量,bar,tick,以及commentary等函数的意义,控制语句运行机制等等概念,对于初学者来说,还是说明的详尽一点好,甚至应该加上每部的编号执行图。




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