金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: 100021030

python逻辑相关问题

[复制链接]

34

主题

9212

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2024-12-19 15:48 | 显示全部楼层
100021030 发表于 2024-12-19 15:45
另外咨询个跨周期引用问题,比如说我现在是在5分钟周期跑自己规则,但是需要用到1分钟结果,当前5分钟周期 ...

python本身没有所谓的跨周期调用的概念。需要什么周期的数据,自己通过取数据函数取值。
需要什么周期直接取什么周期的数据计算即可。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

6

主题

45

帖子

45

积分

Rank: 2

等级: 标准版

注册:
2024-11-26
曾用名:
 楼主| 发表于 2024-12-23 10:24 | 显示全部楼层

能否帮写个例子,一个是收盘前必平(15点和23点),一个是亏损10个点必平。
谢谢
回复

使用道具 举报

20

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-12-23 10:46 | 显示全部楼层
收盘K平仓
[Python] 复制代码
    portfolio = get_portfolio ("SQRB00", 2)
    #context.now 是K线时间
    if (context.now == 190000 or context.now == 30000):
        sell_close("SQRB00", "Market", volume=portfolio.buy_quantity)
        buy_close("SQRB00", "Market", volume=portfolio.sell_quantity)
        
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

20

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-12-23 10:57 | 显示全部楼层
浮亏平仓:

[Python] 复制代码
    code = "SQRB00"
    mintick = get_instruments(code).mintick #最小变动价位                                   
    portfolio = get_portfolio (code, 2)
    
    #获取rb00当前最新价
    current_c = get_dynainf(code, 7)
    
    #多持仓均价,注意这里取的是开仓均价,不是持仓均价
    duo_av = portfolio.buy_avg_open_price
    kong_av = portfolio.sell_avg_open_price
    
    if duo_av>0 and duo_av-current_c>mintick*10:
        sell_close(code, "Market", volume=portfolio.buy_quantity,serial_id = 1)
    if kong_av>0 and current_c-kong_av>mintick*10:
        buy_close(code, "Market", volume=portfolio.sell_quantity,serial_id = 2)
        
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

6

主题

45

帖子

45

积分

Rank: 2

等级: 标准版

注册:
2024-11-26
曾用名:
 楼主| 发表于 2024-12-23 16:20 | 显示全部楼层
谢谢了。另外请教下,有python函数可以获取1分钟主动买和主动卖得成交量嘛
回复

使用道具 举报

20

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-12-23 16:22 | 显示全部楼层
PYTHON上暂时获取不了。

PEL里倒是有BUYVOL,SELLVOL 。不过也只能在分笔周期上使用。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

6

主题

45

帖子

45

积分

Rank: 2

等级: 标准版

注册:
2024-11-26
曾用名:
 楼主| 发表于 2024-12-23 16:58 | 显示全部楼层
请教下,什么是k线时间,这个是金字塔自定义得时间吧,这个时间怎么跟北京时间进行转化。我看我写的是15点和23点,你写的是190000和30000。我看说明里面没有关于k线时间的说明呀
回复

使用道具 举报

6

主题

45

帖子

45

积分

Rank: 2

等级: 标准版

注册:
2024-11-26
曾用名:
 楼主| 发表于 2024-12-24 13:22 | 显示全部楼层
在不,方便解答下上面问题嘛。
另外问下,前面给我的两段代码,我加入了我自己得策略,但是没有执行,是因为我是回测的,两个功能不支持回测?
回复

使用道具 举报

34

主题

9212

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2024-12-24 13:39 | 显示全部楼层
100021030 发表于 2024-12-23 16:58
请教下,什么是k线时间,这个是金字塔自定义得时间吧,这个时间怎么跟北京时间进行转化。我看我写的是15点 ...

K线时间就是没跟k的time,在k线图上就能看到。给你的是按照金字塔时区写的,无论是北京时区还是金字塔时区time都是k线结束的时间。

国内商品市场期货,北京时间+4小时就是金字塔时区的时间。
回测没有结果是条件不成立。你可以print调试下。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

20

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-12-24 14:06 | 显示全部楼层
本帖最后由 技术009 于 2024-12-24 14:13 编辑

调整下:   import datetime
#context.s1 是品种代码
portfolio = get_portfolio (context.s1,2)
    if ( context.now.time() == convert_to_time(190000) or context.now.time()  == convert_to_time(30000)):
        sell_close(context.s1, "Market", volume=portfolio.buy_quantity,serial_id = 1)
        buy_close(context.s1, "Market", volume=portfolio.sell_quantity,serial_id = 2)

引入一个转换的函数:
def convert_to_time(date):
    int_value = int(date)   
    hour = (int_value % 1000000) // 10000
    minute = (int_value % 10000) // 100
    second = int_value % 100
    return datetime.time(hour, minute, second)


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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-28 14:45 , Processed in 0.237735 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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