设为首页收藏本站

 找回密码
 注册
楼主: bjcifco
打印 上一主题 下一主题

关于控制重复开仓的问题,急! [复制链接]

Rank: 4

精华
0
UID
3136
积分
331
帖子
61
主题
11
阅读权限
50
注册时间
2008-12-23
最后登录
2013-10-13
跳转到指定楼层
1#
发表于 2009-3-23 17:09:16 |显示全部楼层 |倒序浏览
我的程序在测试时候出现了重复开仓的情况,程序架构大致如下:
if(con1 and MarketPosition!=1)
     {
         buy(1,high+2*PriceScale*MinMove);
      }

else
if (con2 and MarketPosition!=-1)
                {
         SellShort(1,low-3*PriceScale*MinMove);
         }

但是为什么今天的白糖 我出现了在3799连续开空15次?

我在论坛看到一个帖子和我情况差不多,但是没看懂,天行健说“当一个TICK来了触发程序发出委托,但是并未马上成交,因此条件继续满足,第二个TICK,第三个TICK接踵而来,均再次发委托,所以出现建了多个仓的情况。

解决办法,用全局变量控制只发一次。

AA=GetGlobalVar(40);
if ( AA==0 && 其他条件 )
{
   你的程序段;
   AA=1;
   SetGlobalVar(40,AA);
}



再次想请教nopain 老大怎么回事?以及如何使用全局变量的问题?

Rank: 4

精华
0
UID
3136
积分
331
帖子
61
主题
11
阅读权限
50
注册时间
2008-12-23
最后登录
2013-10-13
2#
发表于 2009-3-24 10:48:17 |显示全部楼层
我看过的,我已经用high low 了 但是还是出现上面的问题

使用道具 举报

Rank: 4

精华
0
UID
3136
积分
331
帖子
61
主题
11
阅读权限
50
注册时间
2008-12-23
最后登录
2013-10-13
3#
发表于 2009-3-24 11:43:21 |显示全部楼层
if(High>low[1] and HighestFC(high,2)>low[3]  and MarketPosition!=1)
      {
         buy(1,high+2*PriceScale*MinMove);
     }

这样有问题吗?

使用道具 举报

Rank: 4

精华
0
UID
3136
积分
331
帖子
61
主题
11
阅读权限
50
注册时间
2008-12-23
最后登录
2013-10-13
4#
发表于 2009-3-24 12:00:24 |显示全部楼层
if(low<high[1] and lowestFC(low,2)<high[3]  and MarketPosition!=-1)
       {
         SellShort(1,low-3*PriceScale*MinMove);
         }

使用道具 举报

Rank: 4

精华
0
UID
3136
积分
331
帖子
61
主题
11
阅读权限
50
注册时间
2008-12-23
最后登录
2013-10-13
5#
发表于 2009-3-24 12:01:51 |显示全部楼层
还有加了一个low<low[1] 的条件

使用道具 举报

Rank: 4

精华
0
UID
3136
积分
331
帖子
61
主题
11
阅读权限
50
注册时间
2008-12-23
最后登录
2013-10-13
6#
发表于 2009-3-25 11:04:27 |显示全部楼层
要是能举个例子就好了 用全局变量控制重复开仓的,论坛里面类似的问题很多 但是好像没有例子

使用道具 举报

Rank: 4

精华
0
UID
3136
积分
331
帖子
61
主题
11
阅读权限
50
注册时间
2008-12-23
最后登录
2013-10-13
7#
发表于 2009-5-7 16:38:29 |显示全部楼层
哎呀 这个问题现在还继续困扰我

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-20 17:46

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部