金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 3312|回复: 6

后台程序化的错误下单

[复制链接]

171

主题

475

帖子

485

积分

Rank: 2

等级: 标准版

注册:
2021-5-31
曾用名:
发表于 2022-8-5 10:41 | 显示全部楼层 |阅读模式
股票后台程序化运行如下代码(3秒周期,走完一根K线模式,没有勾选不间断监控)
  今涨停:DYNAINFO(54);
多赢DP9:ROUNDS(C,2)<ROUNDS(今涨停,2) AND TIME>=145600;(程序本意是收盘前不涨停卖出)
平多9:TSELL(多赢DP9 AND  TBUYHOLDINGEX('','',2)>0    ,TBUYHOLDINGEX('','',2),MKT);(这个是公式的299行,就是日志提示的触发行)
交易日志如下:
2022-08-05 09:30:00.197    【后台】603516 TSell 第 229 行 策略:<后台二板> 出现信号
2022-08-05 09:30:00.197    【后台】603516 TSell 已成功触发下单操作 价格:0.000000 数量:100 类型:1 账户: 品种:603516
2022-08-05 09:30:00.197    【后台】实际账户持仓 100
2022-08-05 09:30:00.198    【后台】下单已发送

这个时间控制明显没有起到控制作用,是不是程序认为9点30点00,是在运行昨天最后一根K线。请问应该如何修改?是修改TIME代码为本机时间或者交易所数据时间来解决吗,还是其他方法?
回复

使用道具 举报

171

主题

475

帖子

485

积分

Rank: 2

等级: 标准版

注册:
2021-5-31
曾用名:
 楼主| 发表于 2022-8-5 10:48 | 显示全部楼层
把TIME>145600修改为TIME>145600 AND TIME<145900 是不是也能解决这个问题?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-8-5 10:53 | 显示全部楼层
对的。因为你是走完一根K模式。走完K就是本根K走完,次根K开始瞬间发单。比方说你程序一直在运行,你这时候也是会下单的。你这个信号是昨天收盘那个K的。 就是按照走完K模式来的。 除非你直接逻辑上限制掉最后几根K的信号。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

171

主题

475

帖子

485

积分

Rank: 2

等级: 标准版

注册:
2021-5-31
曾用名:
 楼主| 发表于 2022-8-5 11:08 | 显示全部楼层
如果是昨天最后一根信号也是不会下单的,因为涨停最后几分钟是封住涨停的,早上开盘的时候没涨停,ROUNDS(C,2)<ROUNDS(今涨停,2)这一段是取得的当前价和今天的涨停价,但是当时时间2022-08-05 09:30:00.197 被计算机认为是昨天最后一根K线的时间才会下单。
把TIME>145600修改为TIME>145600 AND TIME<145900,这个开盘误下单问题可以解决吧?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-8-5 11:09 | 显示全部楼层
你是三秒周期的话,这样是可以的。因为你三秒最后一个K是150000的K,
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

171

主题

475

帖子

485

积分

Rank: 2

等级: 标准版

注册:
2021-5-31
曾用名:
 楼主| 发表于 2022-8-5 11:28 | 显示全部楼层
还有如下一段代码的输出:
今涨停:DYNAINFO(54);
多赢DP3:=ROUNDS(C,2)>=ROUNDS(今涨停,2) AND DYNAINFO( 25)*100*C<500000 AND  DYNAINFO( 25)>0 AND TIME>=093000;
输出了如下数据:
2022-08-03 23:06:19.818    002564多赢DP3:0
2022-08-04 09:30:03.769    002564多赢DP3:1
2022-08-04 09:30:08.090    002564多赢DP3:1
2022-08-04 09:30:22.865    002564多赢DP3:0
这个股票今天并没有涨停,昨天一直封住涨停的,也就是30分03秒和30分08秒这2次计算都是用的昨天最后一根K线数据,DYNAINFO( 25)确是取得当时计算机上的最新的买一量,这样组合起来才可能输出1这个结果。这个问题在代码中如何修改才能避免?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-8-5 13:18 | 显示全部楼层
你这个问题 我们本地先跟踪确认下。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-6 18:31 , Processed in 0.143984 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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