以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 代码顺序不同,交易明细显著差异? (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=67889) |
-- 作者:cssfortune -- 发布时间:2014/7/27 15:30:40 -- 代码顺序不同,交易明细显著差异? 开空开多代码的相对位置为何出现完全不同的测试结果?
日内策略,1分钟线,测试近2年,结果如下、太诡异了: 开多代码放在前面,交易报告出来:净利润844.18,多头交易:844.18,空头交易:00.00,空头交易次数为0,多头交易次数10; 开空代码放在前面,交易报告出来:净利润-16 542.89,多头交易:00.00,空头交易:-16 542.89,多头交易次数为0,空头交易次数11;
说明:开仓条件中有限制要满足holding=0,并且限制了一天内只能开仓一次;金字塔里面的语句执行到底是个什么机制啊? |
-- 作者:pyd -- 发布时间:2014/7/27 20:28:32 -- 代码从上到下的顺序运行,条件达到就开仓;图表不支持锁仓。 |
-- 作者:cssfortune -- 发布时间:2014/7/28 11:34:28 -- 教材里给的交易系统下单代码一般都是
if entertime and holding=0 then buy(buycond,,,); sell(sellcond,,,);
结果我跑出来程序几乎只在执行buy;但是buycond和sellcond是互斥的吧,那应该二者都有机会的呀,为什么会集中执行前面的buy呢?
|
-- 作者:cssfortune -- 发布时间:2014/7/28 11:37:02 -- 后来我就自己尝试着改了一下
if entertime and holding=0 then begin if buycond then buy(1,,,); else if sellcond then sell(1,,,); end
这样子才显得正常了,buy和sell的确有交替执行、而不是说排在前面的就先执行。 |
-- 作者:jinzhe -- 发布时间:2014/7/28 13:14:27 --
[此贴子已经被作者于2014/7/28 13:14:37编辑过]
|
-- 作者:jinzhe -- 发布时间:2014/7/28 13:19:26 -- 如果你两段代码里面的sellcond和buycond是一样的话,那么绝对不会你所说的那样出现两种情况,这两段代码的下单信号是一样的 |