以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- cash和asset函数的非一致性? (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=1816) |
-- 作者:choir2001 -- 发布时间:2010/6/10 3:00:15 -- cash和asset函数的非一致性? 期货交易公式中 1、费了好大功夫才弄清楚,在未开仓状态下,asset=cash*保证金率,因此cash比asset大很多倍。但按照常理未开仓时应该asset=cash。 既然设置中的初始资金是asset,那么以cash来计算应开仓量的话会高估很多,产生错误结果,比如系统自带的海龟交易法中。
2、bhwhui写的双向海龟交易法。即使按照asset来计算开仓量,在股指期货5分钟图上还是只能产生某个日期之前的信号,原因何在?明明是盈利的,不存在资金回撤到0的状态。保证金率设为18%,合约单位300。 |
-- 作者:admin -- 发布时间:2010/6/10 9:27:03 -- 可否写出一个测试公式给我们,另外指出比如那天的存在问题,方便我们迅速查找问题。 |
-- 作者:choir2001 -- 发布时间:2010/6/10 22:15:29 -- 稍微修改了一下bhwhui写的海龟交易法,用Asset来计算开仓量。 费率设置,保证金率margin 10%,合约单位10,交易费用0.02%,初始资金100万。运行到白糖1007的5MIN结果如图..(图传不来)
1、图中直观看出未开仓时,asset=cash*margin的关系,是否此点设计有误?应该asset=cash 2、在5MIN图上只有在4月22日之前能产生信号,而15MIN图上所有日期都有信号,这点十分不理解。
====================================== input:trn(20,5,30),hn(20,5,30),lown(10,5,20); VARIABLE:dayCount=1,PositionCount=1,SellSign=0,dK=0;//加多空标志,1:多,-1:空 0:空仓 margin:=0.1;//保证金率 //现金:CASH(0)/1000*margin;//若输出此行,cash和asset相等 N:=MA(TR,trn); sellshortllv:=llv(l,hn); IF BARPOS>=hn THEN IF PositionCount=2 THEN BEGIN{如到第二头寸} IF PositionCount=3 THEN BEGIN{如到第三头寸} IF PositionCount=4 THEN BEGIN IF SellSign=True THEN |
-- 作者:admin -- 发布时间:2010/6/10 22:49:45 -- asset=cash的问题,我们下个版本会按照你的方法进行输出修正,感谢提交此问题。 另外第二个问题,你可以看看是否因为资金不足无法后续开仓问题造成 |
-- 作者:choir2001 -- 发布时间:2010/6/10 23:23:02 -- 关于第二个问题,我不太认为是资金不足无法开仓。或许正是因为cash和asset以及费率设置中的保证金率、合约单位、初始资金之间错综复杂的换算关系有瑕疵导致的。
或许第一个问题解决后,第二个问题自然解决... [此贴子已经被作者于2010-6-10 23:26:05编辑过]
|
-- 作者:wattwei -- 发布时间:2010/6/10 23:37:21 -- 此帖有点深度,不错 |
-- 作者:admin -- 发布时间:2010/6/10 23:56:27 -- 你可以通过 持仓:HOLDING,LINETHICK0;
这种方式打印出公式中的变量,然后通过十字光标查看每个周期的变化,最终查明原因。 |