金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 98|回复: 3

关于Python重复下单控制的问题

[复制链接]

4

主题

12

帖子

12

积分

Rank: 1

等级: 新手上路

注册:
2024-5-6
曾用名:
发表于 2024-12-4 21:13 | 显示全部楼层 |阅读模式
下单函数里有个REPEAT参数,不是很好理解,论坛里老师的解释是:
一个K周期内(py运行池设置里的基础周期)是限制相同语句只能下一次单的。即便重复触发也只能实际下单一次.  
问题:
1. 相同语句是指py代码的同一行?python执行的时候,金字塔应该判断不了py执行时的代码行数吧? 还是buy_open这个API只能执行一次?
2. 如果我用settimer定时器来触发信号扫描下单,也遵守这个设置里的基础周期只能下一次单的限制嘛?




回复

使用道具 举报

20

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-12-5 09:21 | 显示全部楼层
1.就是指某一行的下单语句。
2.定时器里不能执行多次下单。这个也是有限制的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

4

主题

12

帖子

12

积分

Rank: 1

等级: 新手上路

注册:
2024-5-6
曾用名:
 楼主| 发表于 2024-12-5 11:48 | 显示全部楼层
技术009 发表于 2024-12-5 09:21
1.就是指某一行的下单语句。
2.定时器里不能执行多次下单。这个也是有限制的。

#1 OK, 那还挺好,我现在是下单的时候加了个全局表量标志,同一根K不重复下单:
下单的时候立刻:setextdata("BUYOPEN",context.now.timestamp())
每次下单前判断:gettextdata("BUYOPEN")<context.now.timestamp()才下单
问题:
1. 这样做是不是画蛇添足,没有必要了,有什么弊端嘛?
2. context.now.timestamp()的时间是按周期对齐的吧,比如一小时周期,比如现在是13:10,context.now.timestamp()返回的时间是14:00,对吧?
3. 重复下的订单就完全消失了,通过get_orders查不到吧,否则数据就太多了。。。

#2 定时器的重复下单限制和Handlebar是一样的,对嘛?这么看来不应该用定时器。想要刷新快,用tick触发Handlebar就行了。
回复

使用道具 举报

34

主题

9212

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2024-12-5 13:01 | 显示全部楼层
TONY 发表于 2024-12-5 11:48
#1 OK, 那还挺好,我现在是下单的时候加了个全局表量标志,同一根K不重复下单:
下单的时候立刻:setextd ...

1.没必要,软件内部不会让同一个下单语句在同一根k上下单多次。
2.对,context.now就是k线时间。
3.每个订单都有自己唯一的id。所谓的重复下单就是在一根k上,同一个语句多次下单。同样也会有多个id.

非必要不需要用定时器
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-28 14:38 , Processed in 0.221839 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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