设为首页收藏本站

 找回密码
 注册
楼主: TRANS-AM
打印 上一主题 下一主题

疑似TB数据中心问题 [复制链接]

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
11#
发表于 2013-2-24 19:18:26 |只看该作者
TRANS-AM 发表于 2013-2-24 13:28
是的,是HasSendOrder,但是里面有tempPos = Data0.A_BuyPosition();If(tempPos > 0)这样的写法,当A_Buy ...


我们参考F1进阶,是想要它的控制方式,而不必要去照搬它的条件。
进阶里例子里的的条件是有读帐户信息,是有可能因为回报问题而取值不对。但是您不需要去看这个条件,您需要提看它的控制方式 。。。。。
全局变量在完成一个交易 的控制后,难道不可以通过代码来重置吗???一定要关掉公式才可以吗???
F1里的模板不是完整的代码,只是说了控制的这一部分,并没有将整个交易所需要的全部环节都例了代码,就好比它只有平仓没有开仓一样,总不能说还要得手工去开仓才行吧。。。

If(getglobalvar(0) == invalidnumeric)
    {   
        SetGlobalVar(0,0);
    }
    if(barstatus==2)
    {
         if( 开仓条件  && a_buyposition==0 && getglobalvar(0)==0)
          {
                a_sendorder(enum_buy,enum_entry,lots,price);
                setglobalvar(0,1);
          }
          if(a_buyposition>0) //或者在平仓动作时重置全局变量
          {
               setglobalvar(0,0);
         }
    }


使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
12#
发表于 2013-2-24 19:35:54 |只看该作者
成交回报有问题的,对使用a_xxxx肯定会有影响。前面我指出的换一个控制方法也只不过是可以控制不重复发单而已。
想要不换交易系统的情况下且从根本解决问题估计就只能是换一个柜台的交易帐号。建议换金士达的

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
13#
发表于 2013-2-24 21:34:27 |只看该作者
TRANS-AM 发表于 2013-2-24 20:37
金仕达是不是会比恒生好很多,我现在担心换成金仕达,会不会也出现这个问题,按你们技术人员 ...


以您没有说出柜台前,我先询问了是否恒生柜台,后面也有强调恒生柜台接口原因会偶有成交回报不能及时返回的问题。
若金士达接口也有此问题,我的建议不是瞎扯淡嘛。只要网络稳定或本地数据不堵塞,无此问题。
测试一下。

使用道具 举报

Rank: 2

精华
0
UID
113408
积分
81
帖子
44
主题
13
阅读权限
30
注册时间
2012-11-9
最后登录
2013-5-10
14#
发表于 2013-2-25 05:30:21 |只看该作者
小米 发表于 2013-2-24 10:38
谢谢您对TB的支持与理解,也谢谢您给出的建议,我会转交开发人员的。

首先,我们从来没有怀疑或是说过大 ...

谢谢小米周末加班忘我工作,我为TB公司有这样称职的员工倍感放心。

关于成交回报延迟的问题,的确极其严重,关键是无法在客户端程序中解决(真的是无解啊!),否则我不会赘述这么多话。

小米,不知道你是否明白我说的“如果TB软件不做调整,客户端任何程序都无解”这句话的意思?无论是延迟20个Tick,还是延迟10分钟,只要后台柜台出现延迟回报问题,在客户端是无法捕获的,必然存在重复发单问题。无论是模拟交易还是实盘,只要TB通讯机制不调整,这个问题永远存在。

其实要彻底解决这个回报延迟和重复发单问题并不难,只要TB公司将底层通讯稍作调整即可,即但凡客户端发出A_SendOrder开仓指令后,必须等到后台得到明确回应,否则再次发送A_SendOrder开仓指令无效。


再次感谢小米!


帅牛
2013.2.25

使用道具 举报

Rank: 2

精华
0
UID
113408
积分
81
帖子
44
主题
13
阅读权限
30
注册时间
2012-11-9
最后登录
2013-5-10
15#
发表于 2013-2-25 05:44:22 |只看该作者
小米 发表于 2013-2-24 09:45
可参考F1策略进阶里的方法,只要发过委托就改变全局变量的值以控制同一条件下只发单 一次。 ...

小米:“可参考F1策略进阶里的方法,只要发过委托就改变全局变量的值以控制同一条件下只发单 一次”,貌似可以解决重复发单,其实是不行的!!因为发出开仓指令后,如果不能得到明确是否成交的信息,那么将无法撤单。

很多品种抖动很大,不是一开仓就能成功,通常的做法都是发出开仓指令后,延迟多少时间去check是否还有未成交的委托单,如果还有就得撤单,然后再次开仓。

按照你的这个建议,一旦存在回报延迟,如果后台不成交,那么永远也无法再开仓,必然错失很多行情,因此不是根本解决之道。

使用道具 举报

Rank: 2

精华
0
UID
113408
积分
81
帖子
44
主题
13
阅读权限
30
注册时间
2012-11-9
最后登录
2013-5-10
16#
发表于 2013-2-25 05:53:09 |只看该作者
小米 发表于 2013-2-24 19:18
我们参考F1进阶,是想要它的控制方式,而不必要去照搬它的条件。
进阶里例子里的的条件是有读帐户信息, ...

小米,梳理下你的案例code:

If(getglobalvar(0) == invalidnumeric)
    {   
        SetGlobalVar(0,0);
    }
    if(barstatus==2)
    {
         if( 开仓条件  && a_buyposition==0 && getglobalvar(0)==0)
          {
                a_sendorder(enum_buy,enum_entry,lots,price);
                setglobalvar(0,1);
          }
          if(a_buyposition>0) //或者在平仓动作时重置全局变量
          {
               setglobalvar(0,0);
         }
    }

上面的code核心思想是发出开仓指令后,设置一个全局变量,除非检测到持仓数发生变化,否则不调整全局变量状态,从而不能再次开仓。问题是:一旦出现回报延迟问题,持仓数为0,全局变量状态永远不会变,进而永远无法再次开仓啊(除非退出TB程序重进)!那一旦开仓失败(即因为行情剧烈发展,即使增加了N多滑点也未成交),如何撤单?如何再次开仓呢?

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
112423
积分
147
帖子
105
主题
3
阅读权限
40
注册时间
2012-9-10
最后登录
2018-2-26
17#
发表于 2013-2-25 07:10:52 |只看该作者
另外问个题外话,TB的官方邮箱还是admin@TradeBlazer.net吗?域名改tb18.net了,原来的TradeBlazer.net的邮箱不知道是否还有效

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
18#
发表于 2013-2-25 09:38:44 |只看该作者
帅牛 发表于 2013-2-25 05:53
小米,梳理下你的案例code:

If(getglobalvar(0) == invalidnumeric)

关于恒生柜台成交回报的问题,我想本贴的文字中,我已经讲明白了,这里不再重复。
关于此例子,我在本贴里也多次提到是控制不做重复的发单 ,并没有说是解决根本问题。我想前面也讲清楚了吧。
对于此问题,我个人并不觉得自己的回复有错误的。
如果说一定要证明小米是错的才算此问题的完结。那好吧,小米错了。

使用道具 举报

Rank: 2

精华
0
UID
113408
积分
81
帖子
44
主题
13
阅读权限
30
注册时间
2012-11-9
最后登录
2013-5-10
19#
发表于 2013-2-25 09:47:35 |只看该作者
小米 发表于 2013-2-25 09:38
关于恒生柜台成交回报的问题,我想本贴的文字中,我已经讲明白了,这里不再重复。
关于此例子,我在本贴 ...

晕。。, 小米同学 你可能搞错意思了 我是谈这个问题 和你的回复对错无关!

希望您将大家的建议反馈到TB研发同事,看能不能从TB底层程序fix这个bug?

谢谢!

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
20#
发表于 2013-2-25 09:55:40 |只看该作者
TRANS-AM 发表于 2013-2-25 07:10
另外问个题外话,TB的官方邮箱还是吗?域名改tb18.net了,原来的TradeBlazer.net的邮箱不知道是否还有效 ...

此邮箱目前仍可用的。

使用道具 举报

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

bottom

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

GMT+8, 2024-5-7 07:00

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部