金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2216|回复: 7

未成交则撤单或部分成交则未成交部分撤单公式怎么编写

[复制链接]

27

主题

85

帖子

95

积分

Rank: 4

等级: 专业版

注册:
2023-2-16
曾用名:
发表于 2023-6-27 12:47 | 显示全部楼层 |阅读模式
各位老师好:      如果开仓挂单时间超过15秒未成交则撤单或部分成交则未成交部分撤单,这种公式怎么编写啊?



补充内容 (2023-6-27 12:50):
指定帐户名称:100866
指定品种:AG08
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-6-27 12:53 | 显示全部楼层
以开多未成交为例:
if tsubmitex(1,'' ,stklabel)>15 then TCANCELEX(1,1,'',STKLABEL);

但是需要注意的是 这个只能精确到具体品种,开平方向上 。如果同一个品种,同一个方向 你有多笔单子,那么它是无法区分的。撤单时候也一样。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

27

主题

85

帖子

95

积分

Rank: 4

等级: 专业版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-6-27 15:19 | 显示全部楼层
技术009 发表于 2023-6-27 12:53
以开多未成交为例:
if tsubmitex(1,'' ,stklabel)>15 then TCANCELEX(1,1,'',STKLABEL);

老师,这是我写的撤单公式,但从日志上看,才6秒就撤单了,是哪里的问题呢?

//如果挂单时间超过15秒未成交则撤单或部分成交则未成交部分撤单
if TISPRVREMAIN(3)=1 then  BEGIN
    TCANCELEX(currenttime-TORDERTIME( 3,1 )>15,3,帐户ID,品种名称 );
end

2023-06-27 14:33:55.199    【后台】AG08 TBuyShort 第 121 行 策略:<01 Ag 白银快速涨跌交易> K线:2023.06.27 00:00:00 出现信号
2023-06-27 14:33:55.200    【后台】AG08 TBuyShort 已成功触发下单操作 价格:5480.000000 数量:6 类型:0 账户:18287600006 品种:AG08
2023-06-27 14:33:55.201    【后台】多账户及策略系数 委托账户或者组: 18287600006
2023-06-27 14:33:55.202    【后台】CTP登录账户 0 个
2023-06-27 14:33:55.203    【后台】扩展接口 登录账户 1 个
2023-06-27 14:33:55.204    【后台】 帐户 18287600006 下单
2023-06-27 14:33:55.204    【后台】账户 18287600006 下单系数为1.000000
2023-06-27 14:33:55.205    【后台】账户 18287600006 下单,系数调整后下单量:6
2023-06-27 14:33:55.205    【后台】下单已发送
2023-06-27 14:33:55.207    【后台】模组账户 0 个
2023-06-27 14:33:55.207    【后台】AG08 运行结束
2023-06-27 14:33:55.207    【下单】AG08 价5480.000000 量6 买卖1 类型0 开平0 账户18287600006 Formula 1
2023-06-27 14:33:55.208    【下单】已提交,订单ID :453380074
2023-06-27 14:33:55.363    【指令】收到回报指令 ID = 453380074 品种:ag2308 账户:18287600006
2023-06-27 14:33:55.363    【回报】18287600006 : AG08 - 已报单 6 价格:5480 开 卖
2023-06-27 14:33:55.423    【指令】收到Order回报指令 ID = 453380074 Status = 3 品种:ag2308 账户:18287600006
2023-06-27 14:33:58.386    【后台】AG08 运行结束
2023-06-27 14:34:01.407    【后台】AG08 TCANCELEX 出现信号 类型:3 帐号:18287600006
2023-06-27 14:34:01.411    【下单】AG08 执行撤单指令 OrderID:453380074 帐号:18287600006
2023-06-27 14:34:01.414    【后台】AG08 运行结束
2023-06-27 14:34:01.573    【回报】18287600006 : AG08 白银2308 - 已撤单 量:6

补充内容 (2023-6-27 15:31):
另外咨询一下:
TTYPEBAR(N,TYPE)
N表示上次信号,
TYPE表示信号类型    0表示任意信号    1表示开多    2表示平多    3表示开空    4表示平空

TTYPEBAR这个结果是小时,还是分钟,还是秒?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-6-27 15:24 | 显示全部楼层
currenttime-TORDERTIME( 3,1 )

你这2个 不能直接减吧。系统里保存的是10进制的数值的。
你试着用TIMETOT0 把他们都转换为秒 再做减法。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

27

主题

85

帖子

95

积分

Rank: 4

等级: 专业版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-6-27 15:34 | 显示全部楼层
技术009 发表于 2023-6-27 15:24
currenttime-TORDERTIME( 3,1 )

你这2个 不能直接减吧。系统里保存的是10进制的数值的。

if TISPRVREMAIN(3)=1 then  BEGIN
    TCANCELEX(TIMETOT0( currenttime)-TIMETOT0( TORDERTIME( 3,1 ))>15,3,帐户ID,品种名称 );
end
是这样吗?老师
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-6-27 15:39 | 显示全部楼层
对,是这个意思。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

27

主题

85

帖子

95

积分

Rank: 4

等级: 专业版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-6-27 15:46 | 显示全部楼层
技术009 发表于 2023-6-27 15:39
对,是这个意思。

老师,TTYPEBAR这个的时间也要用TIMETOT0转化成秒吗?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-6-27 15:55 | 显示全部楼层
这个不需要,而且它是返回K线跨度,无法转为时间的哦。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-6-15 13:48 , Processed in 0.151039 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表