金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 14871|回复: 41

后台 K结束前3秒执行信号,今天遇到两次 重复发单的

[复制链接]

4610

主题

4695

帖子

4720

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2022-7-5 14:37 | 显示全部楼层 |阅读模式
请教 :后台K结束前3秒执行信号,今天遇到两次 重复发单的
这个乙二醇 14.04.59 重复发单 开多2手
14.05 又自己平了,不是策略代码持仓同步平的。
PTA 信号最后3秒 闪了,开仓了,但是06秒 代码的持仓同步自动纠错了
是否 多核同步运行程序,会导致小概率 重复发单?
2022-07-05 14:04:58.580    【后台】PB00 运行结束
2022-07-05 14:04:58.580    【后台】T00 运行结束
2022-07-05 14:04:58.596    【后台】PP00 运行结束
2022-07-05 14:04:58.612    【后台】SS00 运行结束
2022-07-05 14:04:58.666    【后台】TA00 运行结束
2022-07-05 14:04:58.705    【后台】EB00 运行结束
2022-07-05 14:04:58.721    【后台】EG00 TSellShort 第 137 行 策略:<FD10-HT1> 出现信号
2022-07-05 14:04:58.721    【后台】EG00 TSellShort 已成功触发下单操作 价格:0.000000 数量:2 类型:1 账户: 品种:EG00
2022-07-05 14:04:58.737    【后台】实际账户持仓 2
2022-07-05 14:04:58.752    【后台】下单已发送
2022-07-05 14:04:58.752    【后台】EG00 TBuy 第 139 行 策略:<FD10-HT1> 出现信号
2022-07-05 14:04:58.768    【后台】EG00 TBuy 已成功触发下单操作 价格:0.000000 数量:2 类型:1 账户: 品种:EG00
2022-07-05 14:04:58.768    【后台】下单已发送
2022-07-05 14:04:58.783    【后台】EG00 运行结束
2022-07-05 14:04:58.783    【后台】AG00 运行结束
2022-07-05 14:04:58.800    【后台】SN00 运行结束
2022-07-05 14:04:58.800    【后台】J00 运行结束
2022-07-05 14:04:58.815    【后台】RB00 运行结束
2022-07-05 14:04:58.832    【后台】ZN00 运行结束
2022-07-05 14:04:58.832    【下单】EG09 价0.000000 量2 买卖0 类型1 开平1 账户 Formula 1
2022-07-05 14:04:58.846    【下单】已提交,订单ID :84346883
2022-07-05 14:04:58.846    【下单】EG09 价0.000000 量2 买卖0 类型1 开平0 账户 Formula 1
2022-07-05 14:04:58.862    【下单】已提交,订单ID :84346884
2022-07-05 14:04:58.893    【指令】收到回报指令 ID = 84346883 品种:eg2209 账户:
2022-07-05 14:04:58.893    【回报】18659746886 : EG09 - 已报单 2 价格:0 平 买
2022-07-05 14:04:58.971    【指令】收到Order回报指令 ID = 84346883 Status = 3 品种:eg2209 账户:
2022-07-05 14:04:59.034    【指令】收到回报指令 ID = 84346884 品种:eg2209 账户:
2022-07-05 14:04:59.035    【回报】18659746886 : EG09 - 已报单 2 价格:0 开 买
2022-07-05 14:04:59.112    【指令】收到成交回报指令 ORDERID = 84346883
2022-07-05 14:04:59.143    【回报】18659746886 : eg2209 - 已成交 2 价格:4486 平 买
2022-07-05 14:04:59.175    【指令】平仓计量 EBuy:0 ESell:0
2022-07-05 14:04:59.190    【回报】18659746886 : eg2209 - 全部成交 2
2022-07-05 14:04:59.268    【指令】收到Order回报指令 ID = 84346884 Status = 3 品种:eg2209 账户:
2022-07-05 14:04:59.393    【后台】I00 运行结束
2022-07-05 14:04:59.393    【后台】JM00 运行结束
2022-07-05 14:04:59.408    【后台】CF00 运行结束
2022-07-05 14:04:59.408    【后台】SA00 运行结束
2022-07-05 14:04:59.424    【后台】MA00 运行结束
2022-07-05 14:04:59.438    【指令】收到成交回报指令 ORDERID = 84346884
2022-07-05 14:04:59.440    【后台】HC00 运行结束
2022-07-05 14:04:59.440    【后台】P00 运行结束
2022-07-05 14:04:59.455    【后台】BUX00 运行结束
2022-07-05 14:04:59.455    【后台】M00 运行结束
2022-07-05 14:04:59.471    【后台】SP00 运行结束
2022-07-05 14:04:59.487    【后台】AL00 运行结束
2022-07-05 14:04:59.487    【后台】RU00 运行结束
2022-07-05 14:04:59.502    【后台】FU00 运行结束
2022-07-05 14:04:59.518    【后台】SRX00 运行结束
2022-07-05 14:04:59.518    【后台】C00 运行结束
2022-07-05 14:04:59.534    【后台】CU00 运行结束
2022-07-05 14:04:59.534    【后台】NI00 运行结束
2022-07-05 14:04:59.549    【回报】18659746886 : eg2209 - 已成交 2 价格:4486 开 买
2022-07-05 14:04:59.549    【后台】JD00 运行结束
2022-07-05 14:04:59.565    【回报】18659746886 : eg2209 - 全部成交 2
2022-07-05 14:04:59.565    【后台】AP00 运行结束
2022-07-05 14:04:59.580    【后台】SM00 运行结束
2022-07-05 14:04:59.580    【后台】PB00 运行结束
2022-07-05 14:04:59.596    【后台】T00 运行结束
2022-07-05 14:04:59.596    【后台】PP00 运行结束
2022-07-05 14:04:59.612    【后台】SS00 运行结束
2022-07-05 14:04:59.612    【后台】TA00 运行结束
2022-07-05 14:04:59.643    【后台】EB00 运行结束
2022-07-05 14:04:59.675    【后台】EG00 TBuy 第 139 行 策略:<FD10-HT1> 出现信号
2022-07-05 14:04:59.690    【后台】EG00 TBuy 已成功触发下单操作 价格:0.000000 数量:2 类型:1 账户: 品种:EG00
2022-07-05 14:04:59.705    【后台】下单已发送
2022-07-05 14:04:59.705    【后台】EG00 运行结束
2022-07-05 14:04:59.721    【后台】AG00 运行结束
2022-07-05 14:04:59.737    【后台】SN00 运行结束
2022-07-05 14:04:59.737    【后台】J00 运行结束
2022-07-05 14:04:59.752    【后台】RB00 运行结束
2022-07-05 14:04:59.752    【后台】ZN00 运行结束
2022-07-05 14:04:59.768    【下单】EG09 价0.000000 量2 买卖0 类型1 开平0 账户18659746886 Formula 1
2022-07-05 14:04:59.784    【下单】已提交,订单ID :84346885
2022-07-05 14:04:59.832    【指令】收到回报指令 ID = 84346885 品种:eg2209 账户:18659746886
2022-07-05 14:04:59.836    【回报】18659746886 : EG09 - 已报单 2 价格:0 开 买
2022-07-05 14:04:59.908    【指令】收到Order回报指令 ID = 84346885 Status = 3 品种:eg2209 账户:18659746886
2022-07-05 14:05:00.034    【指令】收到成交回报指令 ORDERID = 84346885
2022-07-05 14:05:00.036    【回报】18659746886 : eg2209 - 已成交 2 价格:4486 开 买
2022-07-05 14:05:00.049    【回报】18659746886 : eg2209 - 全部成交 2
2022-07-05 14:05:00.393    【后台】I00 运行结束
2022-07-05 14:05:00.393    【后台】JM00 运行结束
2022-07-05 14:05:00.409    【后台】CF00 运行结束


1.png
2.png
3.png
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-7-5 15:00 | 显示全部楼层
正常情况下,一条语句在一根K线上只会触发一次,到没有遇到过你反馈的该现象,多核运行也不会有此现象的。你是用代码实现的3秒前触发,还是走完K线模式下提前3秒下单?
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

8

主题

147

帖子

147

积分

等级: 免费版

注册:
2021-6-6
曾用名:
发表于 2022-7-5 18:31 | 显示全部楼层
技术010 发表于 2022-7-5 15:00
正常情况下,一条语句在一根K线上只会触发一次,到没有遇到过你反馈的该现象,多核运行也不会有此现象的。 ...

用代码实现的3秒前触发

间隔1秒轮询模式!

大多数信号执行OK,今天就是遇到两次重复发单的,按逻辑不应该啊!
后来我思考琢磨一下,是否运行时刻,发单了,但是还没成交回报到系统,下一轮执行又触发了,但是没检测到持仓,所以又发单了。。。所以 我现在给代码那里加了一个 没挂单条件下 才能发单。。。晚上 继续测试。

补充内容 (2022-7-5 18:35):
你的语句执行触发一次,应该是图表上的虚拟交易信号;我这里有后台的可重复交易代码 allowrepeat 语句,所以我考虑是否挂单反馈还没到系统,然后下一轮代码执行又到了,又触发了。。。这里是否有个并行错位问题。...

补充内容 (2022-7-5 18:37):
虽然时间上看,好像有点前后几十微秒间隔,可能系统上,真的还没实现 持仓变化,后一轮代码执行又判断触发。。。
回复

使用道具 举报

8

主题

147

帖子

147

积分

等级: 免费版

注册:
2021-6-6
曾用名:
发表于 2022-7-5 18:43 | 显示全部楼层
技术010 发表于 2022-7-5 15:00
正常情况下,一条语句在一根K线上只会触发一次,到没有遇到过你反馈的该现象,多核运行也不会有此现象的。 ...

后台指令如下:
tsellshort(1,cang,mkt);
请问,这样的语句,在一个K线上只触发一次吗?

tsellshort(1,cang,mkt),allowrepeat;
这样的语句,就可以重复触发吧?

图表指令如下:
开空:BUYSHORT(CC1=0,TN,THISCLOSE);
请问,这样的语句,在一个K线上只触发一次吗?
回复

使用道具 举报

37

主题

9981

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-7-5 20:25 | 显示全部楼层
本帖最后由 技术006 于 2022-7-5 20:29 编辑
风度 发表于 2022-7-5 18:43
后台指令如下:
tsellshort(1,cang,mkt);
请问,这样的语句,在一个K线上只触发一次吗?

是的。三个表述都是正确的。

你3楼的描述中,代码中是否用到重复下单指令?
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

8

主题

147

帖子

147

积分

等级: 免费版

注册:
2021-6-6
曾用名:
发表于 2022-7-5 20:51 | 显示全部楼层
技术006 发表于 2022-7-5 20:25
是的。三个表述都是正确的。

你3楼的描述中,代码中是否用到重复下单指令?

tsellshort(1,cang,mkt),allowrepeat;

用到了这样的一些开平指令,虚拟交易指令那里 没有 allowrepeat
我就怀疑是交易指令到持仓反馈那里没完成,然后下一次代码运行又到了,触发交易。。。
回复

使用道具 举报

37

主题

9981

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-7-6 07:57 | 显示全部楼层
allowrepeat就是可以重复下单。只要开平条件成立,下单语句就会被多次执行。正常的交易思路,没有人会用重复下单指令。
其次是,后台策略中要考虑软件与柜台之间交易的时间差,委托回报的传递速度远没有策略执行的速度快,所以在委托后后台有时候是需要根据本地的未成交等函数作为辅助判断的。避免多次执行(比如:部分平仓时)
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

8

主题

147

帖子

147

积分

等级: 免费版

注册:
2021-6-6
曾用名:
发表于 2022-7-6 10:06 | 显示全部楼层
技术006 发表于 2022-7-6 07:57
allowrepeat就是可以重复下单。只要开平条件成立,下单语句就会被多次执行。正常的交易思路,没有人会用重 ...

海龟交易系统,图表程序化
它里面的交易指令 加仓重复执行的,是否和一个指令 一个K上 只运行一次 矛盾啊?

这个运行一次,是指一分钟内 或者 一个价格小范围内,还或者是一个变量条件组合规则下 之运行一次。。。?

如果是 最后情况,那我是可以去掉 allowrepeat的

回复

使用道具 举报

8

主题

147

帖子

147

积分

等级: 免费版

注册:
2021-6-6
曾用名:
发表于 2022-7-6 10:16 | 显示全部楼层
技术006 发表于 2022-7-6 07:57
allowrepeat就是可以重复下单。只要开平条件成立,下单语句就会被多次执行。正常的交易思路,没有人会用重 ...

指点一下 这个 只允许发一次指令 内涵啊。。。
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-7-6 10:17 | 显示全部楼层
1、严格来讲,同一个开平仓语句在一根K线上是只会触发一次。如果用固定间隔,语句的执行是按固定间隔来运行的,只是再次满足条件,如果交易语句触发过了,就不会触发了,只有加了allowrepeat函数,才会重复触发,且不受控制,只要条件满足,就会触发交易语句。
2、如果要实现一根K线上的加仓逻辑,那肯定是要用多个开仓语句来实现的,而不是allowrepeat。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-14 10:59 , Processed in 0.106393 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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